Changed the way the zip archive with the alternative gcc libraries is built.
Now that's done like building the network boot archive, which gives us a lot more flexibility for defining its contents. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30850 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Executable
+62
@@ -0,0 +1,62 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "Usage: $0 <archive> <scripts> ..."
|
||||
fi
|
||||
|
||||
# get the archive name
|
||||
archive=$1
|
||||
shift
|
||||
|
||||
# The second argument is the shell script that initializes the variables:
|
||||
# tmpDir
|
||||
# addBuildCompatibilityLibDir
|
||||
#
|
||||
# copyattr
|
||||
# rmAttrs
|
||||
# zip
|
||||
#
|
||||
. $1
|
||||
shift
|
||||
|
||||
outputDir=$tmpDir/archive
|
||||
|
||||
# this adds the build library dir to LD_LIBRARY_PATH
|
||||
eval "$addBuildCompatibilityLibDir"
|
||||
|
||||
# map the shell commands
|
||||
sPrefix=
|
||||
tPrefix="$outputDir/"
|
||||
cd=cd
|
||||
scd=:
|
||||
cp="$copyattr -d"
|
||||
ln=ln
|
||||
mkdir=mkdir
|
||||
rm=rm
|
||||
|
||||
# clear output dir
|
||||
$rmAttrs -rf $outputDir
|
||||
$mkdir $outputDir
|
||||
|
||||
# populate output dir
|
||||
echo "Preparing contents of archive $archive ..."
|
||||
while [ $# -gt 0 ]; do
|
||||
. $1
|
||||
shift
|
||||
done
|
||||
|
||||
# get an absolute path for the archive
|
||||
cwd=$(pwd)
|
||||
cd $(dirname $archive)
|
||||
archive=$(pwd)/$(basename $archive)
|
||||
cd $cwd
|
||||
|
||||
# build the archive
|
||||
echo "Building archive $archive ..."
|
||||
$rm -f $archive
|
||||
cd $outputDir
|
||||
$zip -ryq $archive . || exit 1
|
||||
cd $cwd
|
||||
|
||||
# clean up
|
||||
$rmAttrs -rf $outputDir
|
||||
Reference in New Issue
Block a user