#!/bin/sh # sdcc.build # - written by azman@my1matrix.net # - build script for sdcc (based on my1 SlackBuild scripts) # INFO FOR PROGRAM TO BE BUILT THIS_NAME="$(basename $0)" THIS_PATH="$(cd $(dirname $0);pwd)" CURR_PATH="$(pwd)" PROG_NAME=${PROG_NAME:="$(basename $THIS_NAME .${THIS_NAME##*.})"} PROG_VERS=${PROG_VERS:="3.2.0"} # CHANGE TO WHAT WE NEED PROG_FULL="$PROG_NAME-$PROG_VERS" # SHOULD BE TOP FOLDER'S NAME PROG_BALL="$PROG_NAME-src-$PROG_VERS.tar.bz2" # CAN BE OTHER THAN $PROG_FULL # PLACE URL ACCORDINGLY! PROG_PATH="http://downloads.sourceforge.net/project/$PROG_NAME/$PROG_NAME/$PROG_VERS/" PROG_LOAD="${PROG_PATH}${PROG_BALL}" # BUILD-RELATED PATH TEMP_PATH=${TEMP_PATH:="$CURR_PATH/build-$PROG_NAME"} DEST_PATH=${DEST_PATH:="/home/share/tool/sdcc"} function do_download() { local fname="$1" local label="$2" local cpath="$CURR_PATH" [[ "$fname" == "" ]] && exit 1 # shouldn't be here? [[ "$label" == "" ]] && label="$fname" echo -n "Downloading $label: " wget --progress=dot "$fname" 2>&1 | grep --line-buffered "%" | \ sed -u -e "s,\.,,g" | awk '{printf("\b\b\b\b%4s", $2)}' [[ ! -r "$label" ]] && echo "Cannot download source $fname to $cpath/$label!" && exit 1 echo -ne "\b\b\b\b DONE!\n" } [[ ! -r "$PROG_BALL" ]] && do_download $PROG_LOAD $PROG_BALL rm -rf $DEST_PATH mkdir -p $TEMP_PATH $DEST_PATH cd $TEMP_PATH rm -rf $PROG_FULL $PROG_NAME $PROG_FOLD tar xvf $CURR_PATH/$PROG_BALL if [[ -d $PROG_FULL ]]; then cd $PROG_FULL elif [[ -d $PROG_NAME ]]; then cd $PROG_NAME elif [[ -d $PROG_FOLD ]]; then cd $PROG_FOLD else echo "Cannot find path '$PROG_FULL'@'$PROG_NAME'@'$PROG_FOLD'!" exit 1 fi ./configure --prefix=$DEST_PATH \ --disable-z80-port --disable-z180-port \ --disable-r2k-port --disable-r3ka-port --disable-gbz80-port \ --disable-pic14-port --disable-pic16-port \ --disable-hc08-port --disable-s08-port \ --disable-ucsim --disable-ds390-port --disable-ds400-port make make install