Home | History | Annotate | Line # | Download | only in release
build.sh revision 1.1
      1  1.1  christos #!/bin/bash
      2  1.1  christos 
      3  1.1  christos #******************************************************************************
      4  1.1  christos #
      5  1.1  christos # ACPICA package generation script for Cygwin/Windows execution
      6  1.1  christos #
      7  1.1  christos # Requires cygwin be installed - http://www.cygwin.com
      8  1.1  christos # and its /bin be *first* in your path.
      9  1.1  christos #
     10  1.1  christos # Windows packages require pkzip25 (free, and is available from numerous
     11  1.1  christos # sources - search for "pkzip25" or "pkzip25.exe")
     12  1.1  christos #
     13  1.1  christos # Execute this script from the acpica/generate/release directory.
     14  1.1  christos #
     15  1.1  christos # Constructed packages are placed in the acpica/generate/release/current
     16  1.1  christos # directory.
     17  1.1  christos #
     18  1.1  christos # Line Terminators: Windows source packages leave the CR/LF terminator.
     19  1.1  christos # Unix packages convert the CR/LF terminators to LF only.
     20  1.1  christos #
     21  1.1  christos # Usage:
     22  1.1  christos #
     23  1.1  christos #   build <package_type> <target_type>
     24  1.1  christos #
     25  1.1  christos #   where:
     26  1.1  christos #       <package_type> is one of:
     27  1.1  christos #           source  - Build an ACPICA source package (core and all tools)
     28  1.1  christos #           test    - Build an ACPICA test suite package
     29  1.1  christos #           binary  - Build an ACPICA binary tools package
     30  1.1  christos #
     31  1.1  christos #       <target_type> is one of:
     32  1.1  christos #           win     - Generate Windows package (Intel license, CRLF line terminators)
     33  1.1  christos #           unix    - Generate Unix package (Intel license, LF line terminators)
     34  1.1  christos #           unix2   - Generate Unix package (dual license, LF line terminators)
     35  1.1  christos #
     36  1.1  christos #******************************************************************************
     37  1.1  christos 
     38  1.1  christos # Configuration
     39  1.1  christos 
     40  1.1  christos ZIP_UTILITY="/cygdrive/c/windows/pkzip25.exe"
     41  1.1  christos ACPISRC="libraries/acpisrc.exe"
     42  1.1  christos DOS2UNIX="dos2unix"
     43  1.1  christos UNIX2DOS="unix2dos"
     44  1.1  christos 
     45  1.1  christos # Filenames and paths
     46  1.1  christos 
     47  1.1  christos TARGET_DIR="generate/release/current"
     48  1.1  christos TEMP_DIR=acpitemp
     49  1.1  christos TEST_PREFIX=acpitests
     50  1.1  christos SOURCE_PREFIX=acpica
     51  1.1  christos BINARY_PREFIX=iasl
     52  1.1  christos PACKAGE_SUFFIX=`date +%Y%m%d`
     53  1.1  christos 
     54  1.1  christos NPARAM=$#
     55  1.1  christos 
     56  1.1  christos 
     57  1.1  christos #******************************************************************************
     58  1.1  christos #
     59  1.1  christos # Miscellaneous utility functions
     60  1.1  christos #
     61  1.1  christos #******************************************************************************
     62  1.1  christos 
     63  1.1  christos usage()
     64  1.1  christos {
     65  1.1  christos 	echo "$1"
     66  1.1  christos 	echo
     67  1.1  christos 	echo "Low-level build script for ACPICA release packages"
     68  1.1  christos 	echo "Usage:"
     69  1.1  christos 	echo "    $0 source <win | unix | unix2>"
     70  1.1  christos 	echo "    $0 test   <win | unix>"
     71  1.1  christos 	echo "    $0 binary <win>"
     72  1.1  christos }
     73  1.1  christos 
     74  1.1  christos banner()
     75  1.1  christos {
     76  1.1  christos 	echo
     77  1.1  christos 	echo "$1"
     78  1.1  christos 	echo
     79  1.1  christos }
     80  1.1  christos 
     81  1.1  christos check_zip_utility_exists()
     82  1.1  christos {
     83  1.1  christos 	#
     84  1.1  christos 	# Need pkzip (or similar) to build the windows packages
     85  1.1  christos 	#
     86  1.1  christos 	if [ ! -e "$ZIP_UTILITY" ]; then
     87  1.1  christos 		echo "ZIP_UTILITY ($ZIP_UTILITY) does not exist!"
     88  1.1  christos 		exit 1
     89  1.1  christos 	fi
     90  1.1  christos }
     91  1.1  christos 
     92  1.1  christos convert_to_unix_line_terminators()
     93  1.1  christos {
     94  1.1  christos 	#
     95  1.1  christos 	# Convert all CR/LF pairs to Unix format (LF only)
     96  1.1  christos 	#
     97  1.1  christos 	cd $TEMP_DIR
     98  1.1  christos 	echo "Starting CR/LF to LF (UNIX) full source conversion"
     99  1.1  christos 	find . -name "*" | xargs $DOS2UNIX -q
    100  1.1  christos 	echo "Completed CR/LF to LF (UNIX) full source conversion"
    101  1.1  christos 	cd ..
    102  1.1  christos }
    103  1.1  christos 
    104  1.1  christos convert_to_dos_line_terminators()
    105  1.1  christos {
    106  1.1  christos 	#
    107  1.1  christos 	# Convert all lone LF terminators to CR/LF
    108  1.1  christos 	# Note: Checks shell scripts only (*.sh)
    109  1.1  christos 	#
    110  1.1  christos 	cd $TEMP_DIR
    111  1.1  christos 	echo "Starting LF to CR/LF (DOS) script conversion"
    112  1.1  christos 	find . -name "*.sh" | xargs $UNIX2DOS -q
    113  1.1  christos 	echo "Completed LF to CR/LF (DOS) script conversion"
    114  1.1  christos 	cd ..
    115  1.1  christos }
    116  1.1  christos 
    117  1.1  christos insert_dual_license_headers()
    118  1.1  christos {
    119  1.1  christos 	#
    120  1.1  christos 	# Need acpisrc utility to insert the headers
    121  1.1  christos 	#
    122  1.1  christos 	if [ ! -e "$ACPISRC" ]; then
    123  1.1  christos 		echo "acpisrc ($ACPISRC) does not exist!"
    124  1.1  christos 		exit 1
    125  1.1  christos 	fi
    126  1.1  christos 
    127  1.1  christos 	#
    128  1.1  christos 	# Insert the dual license into *.c and *.h files
    129  1.1  christos 	#
    130  1.1  christos 	echo "Inserting dual-license into all source files"
    131  1.1  christos 	$ACPISRC -h -y $TEMP_DIR
    132  1.1  christos }
    133  1.1  christos 
    134  1.1  christos build_unix_package()
    135  1.1  christos {
    136  1.1  christos 	convert_to_unix_line_terminators
    137  1.1  christos 
    138  1.1  christos 	#
    139  1.1  christos 	# Build release package
    140  1.1  christos 	#
    141  1.1  christos 	rm -r -f $PACKAGE_FILENAME
    142  1.1  christos 	mv $TEMP_DIR $PACKAGE_FILENAME
    143  1.1  christos 	tar czf $PACKAGE_FILENAME.tar.gz $PACKAGE_FILENAME
    144  1.1  christos 
    145  1.1  christos 	#
    146  1.1  christos 	# Move the completed package
    147  1.1  christos 	#
    148  1.1  christos 	mv $PACKAGE_FILENAME.tar.gz $TARGET_DIR
    149  1.1  christos 	mv $PACKAGE_FILENAME $TEMP_DIR
    150  1.1  christos }
    151  1.1  christos 
    152  1.1  christos build_windows_package()
    153  1.1  christos {
    154  1.1  christos 	convert_to_dos_line_terminators
    155  1.1  christos 
    156  1.1  christos 	#
    157  1.1  christos 	# Build release package
    158  1.1  christos 	#
    159  1.1  christos 	cd $TEMP_DIR
    160  1.1  christos 	rm -r -f ../$TARGET_DIR/$PACKAGE_FILENAME
    161  1.1  christos 	$ZIP_UTILITY -silent -add -max -dir -sort=name ../$TARGET_DIR/$PACKAGE_FILENAME
    162  1.1  christos 	cd ..
    163  1.1  christos }
    164  1.1  christos 
    165  1.1  christos 
    166  1.1  christos #******************************************************************************
    167  1.1  christos #
    168  1.1  christos # generate_source_package
    169  1.1  christos #
    170  1.1  christos # Generates the ACPICA source code packages (core and all tools)
    171  1.1  christos #
    172  1.1  christos # Arguments:
    173  1.1  christos #   %1  - Target type (win or unix or unix2)
    174  1.1  christos #
    175  1.1  christos #******************************************************************************
    176  1.1  christos 
    177  1.1  christos generate_source_package ()
    178  1.1  christos {
    179  1.1  christos 	#
    180  1.1  christos 	# Parameter evaluation
    181  1.1  christos 	#
    182  1.1  christos 	if [ $1 == win ]; then
    183  1.1  christos 		PACKAGE_NAME=Windows
    184  1.1  christos 		PACKAGE_TYPE=Win
    185  1.1  christos 		LICENSE=Intel
    186  1.1  christos 		check_zip_utility_exists
    187  1.1  christos 
    188  1.1  christos 	elif [ $1 == unix ]; then
    189  1.1  christos 		PACKAGE_NAME="Unix (Intel License)"
    190  1.1  christos 		PACKAGE_TYPE=Unix
    191  1.1  christos 		LICENSE=Intel
    192  1.1  christos 
    193  1.1  christos 	elif [ $1 == unix2 ]; then
    194  1.1  christos 		PACKAGE_NAME="Unix (Dual License)"
    195  1.1  christos 		PACKAGE_TYPE=Unix
    196  1.1  christos 		LICENSE=Dual
    197  1.1  christos 
    198  1.1  christos 	else
    199  1.1  christos 		usage "Invalid argument ($1)"
    200  1.1  christos 		exit 1
    201  1.1  christos 	fi
    202  1.1  christos 
    203  1.1  christos 	PACKAGE_FILENAME=$SOURCE_PREFIX-$1-$PACKAGE_SUFFIX
    204  1.1  christos 	banner "ACPICA - Generating $PACKAGE_NAME source code package ($PACKAGE_FILENAME)"
    205  1.1  christos 
    206  1.1  christos 	#
    207  1.1  christos 	# Make directories common to all source packages
    208  1.1  christos 	#
    209  1.1  christos 	mkdir $TEMP_DIR
    210  1.1  christos 	mkdir $TEMP_DIR/libraries
    211  1.1  christos 	mkdir $TEMP_DIR/generate
    212  1.1  christos 	mkdir $TEMP_DIR/generate/lint
    213  1.1  christos 	mkdir $TEMP_DIR/generate/release
    214  1.1  christos 	mkdir $TEMP_DIR/generate/unix
    215  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpibin
    216  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpidump
    217  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpiexec
    218  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpihelp
    219  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpinames
    220  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpisrc
    221  1.1  christos 	mkdir $TEMP_DIR/generate/unix/acpixtract
    222  1.1  christos 	mkdir $TEMP_DIR/generate/unix/iasl
    223  1.1  christos 	mkdir $TEMP_DIR/tests
    224  1.1  christos 	mkdir $TEMP_DIR/tests/misc
    225  1.1  christos 	mkdir $TEMP_DIR/tests/templates
    226  1.1  christos 	mkdir -p $TEMP_DIR/source/os_specific/service_layers
    227  1.1  christos 
    228  1.1  christos 	#
    229  1.1  christos 	# Copy ACPICA subsystem source code
    230  1.1  christos 	#
    231  1.1  christos 	cp -r documents/changes.txt             $TEMP_DIR/changes.txt
    232  1.1  christos 	cp -r source/common                     $TEMP_DIR/source/common
    233  1.1  christos 	cp -r source/components                 $TEMP_DIR/source/
    234  1.1  christos 	cp -r source/include                    $TEMP_DIR/source/include
    235  1.1  christos 	cp -r generate/release/*.sh             $TEMP_DIR/generate/release
    236  1.1  christos 
    237  1.1  christos 	#
    238  1.1  christos 	# Copy iASL compiler and tools source
    239  1.1  christos 	#
    240  1.1  christos 	cp -r source/compiler                   $TEMP_DIR/source/compiler
    241  1.1  christos 	cp -r source/tools                      $TEMP_DIR/source/tools
    242  1.1  christos 
    243  1.1  christos 	#
    244  1.1  christos 	# Copy iASL/ACPICA miscellaneous tests (not full test suites)
    245  1.1  christos 	#
    246  1.1  christos 	cp -r tests/misc/*.asl                  $TEMP_DIR/tests/misc
    247  1.1  christos 	cp -r tests/templates/Makefile          $TEMP_DIR/tests/templates
    248  1.1  christos 	cp -r tests/templates/templates.sh      $TEMP_DIR/tests/templates
    249  1.1  christos 
    250  1.1  christos 	#
    251  1.1  christos 	# Copy all OS-specific interfaces
    252  1.1  christos 	#
    253  1.1  christos 	cp source/os_specific/service_layers/*.c $TEMP_DIR/source/os_specific/service_layers
    254  1.1  christos 
    255  1.1  christos 	#
    256  1.1  christos 	# Copy generic UNIX makefiles
    257  1.1  christos 	#
    258  1.1  christos     cp Makefile                             $TEMP_DIR
    259  1.1  christos 	cp generate/unix/readme.txt             $TEMP_DIR/generate/unix/readme.txt
    260  1.1  christos 	cp generate/unix/Makefile*              $TEMP_DIR/generate/unix
    261  1.1  christos 	cp generate/unix/acpibin/Makefile       $TEMP_DIR/generate/unix/acpibin
    262  1.1  christos 	cp generate/unix/acpidump/Makefile      $TEMP_DIR/generate/unix/acpidump
    263  1.1  christos 	cp generate/unix/acpiexec/Makefile      $TEMP_DIR/generate/unix/acpiexec
    264  1.1  christos 	cp generate/unix/acpihelp/Makefile      $TEMP_DIR/generate/unix/acpihelp
    265  1.1  christos 	cp generate/unix/acpinames/Makefile     $TEMP_DIR/generate/unix/acpinames
    266  1.1  christos 	cp generate/unix/acpisrc/Makefile       $TEMP_DIR/generate/unix/acpisrc
    267  1.1  christos 	cp generate/unix/acpixtract/Makefile    $TEMP_DIR/generate/unix/acpixtract
    268  1.1  christos 	cp generate/unix/iasl/Makefile          $TEMP_DIR/generate/unix/iasl
    269  1.1  christos 
    270  1.1  christos 	#
    271  1.1  christos 	# Copy Lint directory
    272  1.1  christos 	#
    273  1.1  christos 	cp -r generate/lint $TEMP_DIR/generate
    274  1.1  christos 	rm -f $TEMP_DIR/generate/lint/co*
    275  1.1  christos 	rm -f $TEMP_DIR/generate/lint/env*
    276  1.1  christos 	rm -f $TEMP_DIR/generate/lint/lib*
    277  1.1  christos 	rm -f $TEMP_DIR/generate/lint/LintOut.txt
    278  1.1  christos 
    279  1.1  christos 	if [ $PACKAGE_TYPE == Unix ]; then
    280  1.1  christos 		#
    281  1.1  christos 		# Unix/Linux-specific activities
    282  1.1  christos 		#
    283  1.1  christos 		# For Unix2 case, insert the dual license header into all source files
    284  1.1  christos 		#
    285  1.1  christos 		if [ $LICENSE == Dual ]; then
    286  1.1  christos 			insert_dual_license_headers
    287  1.1  christos 		fi
    288  1.1  christos 
    289  1.1  christos 		build_unix_package
    290  1.1  christos 
    291  1.1  christos 	else
    292  1.1  christos 		#
    293  1.1  christos 		# Windows-specific activities
    294  1.1  christos 		#
    295  1.1  christos 
    296  1.1  christos 		# Copy project files for MS Visual Studio 2008 (VC++ 9.0)
    297  1.1  christos 
    298  1.1  christos 		mkdir $TEMP_DIR/generate/msvc9
    299  1.1  christos 		cp -r generate/msvc9/*.sln $TEMP_DIR/generate/msvc9/
    300  1.1  christos 		cp -r generate/msvc9/*.vcproj $TEMP_DIR/generate/msvc9/
    301  1.1  christos 
    302  1.1  christos 		build_windows_package
    303  1.1  christos 	fi
    304  1.1  christos 
    305  1.1  christos 	banner "ACPICA - Completed $PACKAGE_NAME source code package ($PACKAGE_FILENAME)"
    306  1.1  christos }
    307  1.1  christos 
    308  1.1  christos 
    309  1.1  christos #******************************************************************************
    310  1.1  christos #
    311  1.1  christos # generate_test_package
    312  1.1  christos #
    313  1.1  christos # Generates the ACPICA test suite packages
    314  1.1  christos #
    315  1.1  christos # Arguments:
    316  1.1  christos #   %1  - Target type (win or unix)
    317  1.1  christos #
    318  1.1  christos #******************************************************************************
    319  1.1  christos 
    320  1.1  christos generate_test_package()
    321  1.1  christos {
    322  1.1  christos 	#
    323  1.1  christos 	# Parameter evaluation
    324  1.1  christos 	#
    325  1.1  christos 	if [ $1 == win ]; then
    326  1.1  christos 		PACKAGE_NAME=Windows
    327  1.1  christos 		PACKAGE_TYPE=Win
    328  1.1  christos 		check_zip_utility_exists
    329  1.1  christos 
    330  1.1  christos 	elif [ $1 == unix ]; then
    331  1.1  christos 		PACKAGE_NAME="Unix"
    332  1.1  christos 		PACKAGE_TYPE=Unix
    333  1.1  christos 
    334  1.1  christos 	else
    335  1.1  christos 		usage "Invalid argument ($1)"
    336  1.1  christos 		exit 1
    337  1.1  christos 	fi
    338  1.1  christos 
    339  1.1  christos 	PACKAGE_FILENAME=$TEST_PREFIX-$1-$PACKAGE_SUFFIX
    340  1.1  christos 	banner "ACPICA - Generating $PACKAGE_NAME test suite package ($PACKAGE_FILENAME)"
    341  1.1  christos 
    342  1.1  christos 	#
    343  1.1  christos 	# Copy the ASL Test source
    344  1.1  christos 	#
    345  1.1  christos 	mkdir $TEMP_DIR
    346  1.1  christos 	cp -r tests $TEMP_DIR/tests
    347  1.1  christos 
    348  1.1  christos 	#
    349  1.1  christos 	# Delete extraneous files
    350  1.1  christos 	#
    351  1.1  christos 	cd $TEMP_DIR
    352  1.1  christos 	find . -name "tmp" | xargs rm -r -f
    353  1.1  christos 	find . -name "aml" | xargs rm -r -f
    354  1.1  christos 	find . -name "CVS" | xargs rm -r -f
    355  1.1  christos 	cd ..
    356  1.1  christos 
    357  1.1  christos 	if [ $PACKAGE_TYPE == Unix ]; then
    358  1.1  christos 		#
    359  1.1  christos 		# Unix/Linux-specific activities
    360  1.1  christos 		#
    361  1.1  christos 		build_unix_package
    362  1.1  christos 
    363  1.1  christos 	else
    364  1.1  christos 		#
    365  1.1  christos 		# Windows-specific activities
    366  1.1  christos 		#
    367  1.1  christos 		build_windows_package
    368  1.1  christos 	fi
    369  1.1  christos 
    370  1.1  christos 	banner "ACPICA - Completed $PACKAGE_NAME test suite package ($PACKAGE_FILENAME)"
    371  1.1  christos }
    372  1.1  christos 
    373  1.1  christos 
    374  1.1  christos #******************************************************************************
    375  1.1  christos #
    376  1.1  christos # generate_binary_package
    377  1.1  christos #
    378  1.1  christos # Generates the ACPICA binary package (Currently Windows only)
    379  1.1  christos #
    380  1.1  christos # Arguments:
    381  1.1  christos #   %1  - Target type (win)
    382  1.1  christos #
    383  1.1  christos #******************************************************************************
    384  1.1  christos 
    385  1.1  christos generate_binary_package()
    386  1.1  christos {
    387  1.1  christos 	#
    388  1.1  christos 	# Parameter evaluation
    389  1.1  christos 	#
    390  1.1  christos 	if [ $1 == win ]; then
    391  1.1  christos 		PACKAGE_NAME=Windows
    392  1.1  christos 		PACKAGE_TYPE=Win
    393  1.1  christos 		check_zip_utility_exists
    394  1.1  christos 
    395  1.1  christos 	else
    396  1.1  christos 		usage "Invalid argument ($1)"
    397  1.1  christos 		exit 1
    398  1.1  christos 	fi
    399  1.1  christos 
    400  1.1  christos 	PACKAGE_FILENAME=$BINARY_PREFIX-$1-$PACKAGE_SUFFIX
    401  1.1  christos 	banner "ACPICA - Generating $PACKAGE_NAME binary tools package ($PACKAGE_FILENAME)"
    402  1.1  christos 
    403  1.1  christos 	#
    404  1.1  christos 	# Copy executables and documentation
    405  1.1  christos 	#
    406  1.1  christos 	mkdir $TEMP_DIR
    407  1.1  christos 	cp -r documents/changes.txt     $TEMP_DIR/changes.txt
    408  1.1  christos 	cp documents/aslcompiler.pdf    $TEMP_DIR
    409  1.1  christos 	cp libraries/acpibin.exe        $TEMP_DIR
    410  1.1  christos 	cp libraries/acpidump.exe       $TEMP_DIR
    411  1.1  christos 	cp libraries/acpiexec.exe       $TEMP_DIR
    412  1.1  christos 	cp libraries/acpihelp.exe       $TEMP_DIR
    413  1.1  christos 	cp libraries/acpinames.exe      $TEMP_DIR
    414  1.1  christos 	cp libraries/acpisrc.exe        $TEMP_DIR
    415  1.1  christos 	cp libraries/acpixtract.exe     $TEMP_DIR
    416  1.1  christos 	cp libraries/iasl.exe           $TEMP_DIR
    417  1.1  christos 	cp tests/misc/badcode.asl       $TEMP_DIR
    418  1.1  christos 
    419  1.1  christos 	build_windows_package
    420  1.1  christos 	banner "ACPICA - Completed $PACKAGE_NAME binary tools package ($PACKAGE_FILENAME)"
    421  1.1  christos }
    422  1.1  christos 
    423  1.1  christos 
    424  1.1  christos #******************************************************************************
    425  1.1  christos #
    426  1.1  christos # main
    427  1.1  christos #
    428  1.1  christos # Arguments:
    429  1.1  christos #       $1 (package_type) is one of:
    430  1.1  christos #           source  - Build an ACPICA source package (core and all tools)
    431  1.1  christos #           test    - Build an ACPICA test suite package
    432  1.1  christos #           binary  - Build an ACPICA binary tools package
    433  1.1  christos #
    434  1.1  christos #       $2 (target_type) is one of:
    435  1.1  christos #           win     - Generate Windows package (Intel license, CRLF line terminators)
    436  1.1  christos #           unix    - Generate Unix package (Intel license, LF line terminators)
    437  1.1  christos #           unix2   - Generate Unix package (dual license, LF line terminators)
    438  1.1  christos #
    439  1.1  christos #******************************************************************************
    440  1.1  christos 
    441  1.1  christos set -e		# Abort on any error
    442  1.1  christos 
    443  1.1  christos if [ $NPARAM -ne 2 ]; then
    444  1.1  christos 	usage "Wrong argument count ($NPARAM)"
    445  1.1  christos 	exit 1
    446  1.1  christos fi
    447  1.1  christos 
    448  1.1  christos #
    449  1.1  christos # cd from acpica/generate/release to acpica
    450  1.1  christos #
    451  1.1  christos cd ../..
    452  1.1  christos 
    453  1.1  christos #
    454  1.1  christos # Ensure that the temporary directory is created fresh
    455  1.1  christos #
    456  1.1  christos rm -rf $TEMP_DIR
    457  1.1  christos 		
    458  1.1  christos #
    459  1.1  christos # Parameter evaluation
    460  1.1  christos #
    461  1.1  christos if [ $1 == source ]; then
    462  1.1  christos 	generate_source_package $2
    463  1.1  christos 
    464  1.1  christos elif [ $1 == test ]; then
    465  1.1  christos 	generate_test_package $2
    466  1.1  christos 
    467  1.1  christos elif [ $1 == binary ]; then
    468  1.1  christos 	generate_binary_package $2
    469  1.1  christos 
    470  1.1  christos else
    471  1.1  christos 	usage "Invalid argument ($1)"
    472  1.1  christos 	exit 1
    473  1.1  christos fi
    474  1.1  christos 
    475  1.1  christos #
    476  1.1  christos # Remove temporary directory
    477  1.1  christos #
    478  1.1  christos rm -rf $TEMP_DIR
    479