#!/bin/bash ## # NAME # mport | mportni | mrebuild | mrebuildni # # SYNOPSIS # mport | mportni | mrebuild | mrebuildni package version release [variant] # # ENVIRONMENT # DEVDIR needs to be set. i.e. add the following lines to ~/.bash_profile: # DEVDIR=/path/to/mports # export DEVDIR # # VERSION # 7.1.0 # 20060530 # # AUTHOR # Marius Schamschula ## # Variables if [ -z DEVDIR ]; then echo "DEVDIR not set. Please set and retry." exit 0 fi LIST="DOWNLOAD DOWNLOADRENAME CLEAN EXTRACT EXTRACTRENAME TOTMP HIDE PREPATCH PRECONF CONFIGURE PATCH POSTCONF MAKE POSTPATCH POSTMAKE UNHIDE INSTSCRIPT README DEPFILE ARCHIVE INSTALL POSTINSTALL TODEV" RC=0 . $DEVDIR/etc/os.dat . $DEVDIR/etc/def.dat if [ -e $DEVDIR/$1/$1$4.port ]; then . $DEVDIR/$1/$1$4.port else . $DEVDIR/$1/$1.port fi SCRIPT=$(echo $0|awk 'BEGIN { FS = "/"};{print $NF}') if [ $SCRIPT == "mportni" ]; then INSTALL="FALSE" fi if [ $SCRIPT == "mrebuild" ]; then CLEAN="TRUE" fi if [ $SCRIPT == "mrebuildni" ]; then CLEAN="TRUE" INSTALL="FALSE" fi if [ $CDXBUILD == "TRUE" ] || [ $PKGBUILD == "TRUE" ]; then README="FALSE" DEPFILE="FALSE" ARCHIVE="FALSE" fi # cd to package directory cd $DEVDIR/$1 # Loop for MODULE in $LIST do eval m=\$$MODULE if [ $m == "TRUE" ]; then eval mf=\$$MODULE\FZ if [ -e $DEVDIR/$1/$mf$4 ]; then $DEVDIR/$1/$mf$4 $1 $2 $3 $4 RC=$? elif [ -e $DEVDIR/$1/$mf ]; then $DEVDIR/$1/$mf $1 $2 $3 $4 RC=$? else $mf $1 $2 $3 $4 RC=$? fi fi if [ $RC != 0 ]; then echo "$MODULE failed" exit $RC fi done