|
|
|
@ -39,28 +39,28 @@ done |
|
|
|
. ./scripts/parse-config |
|
|
|
. ./scripts/functions |
|
|
|
|
|
|
|
var_remove PATH ":" $base/build/$ROCKCFG_ID/$toolsdir/bin |
|
|
|
var_remove PATH ":" $base/build/$ROCKCFG_ID/$toolsdir/wrapper |
|
|
|
var_remove PATH ":" $base/build/$ROCKCFG_ID/ROCK/$toolsdir/bin |
|
|
|
var_remove PATH ":" $base/build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper |
|
|
|
|
|
|
|
mkdir -p build/$ROCKCFG_ID/$toolsdir/bin |
|
|
|
mkdir -p build/$ROCKCFG_ID/$toolsdir/wrapper |
|
|
|
mkdir -p build/$ROCKCFG_ID/$toolsdir/lib |
|
|
|
mkdir -p build/$ROCKCFG_ID/ROCK/$toolsdir/bin |
|
|
|
mkdir -p build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper |
|
|
|
mkdir -p build/$ROCKCFG_ID/ROCK/$toolsdir/lib |
|
|
|
|
|
|
|
if [ $toolsdir = tools.cross ]; then |
|
|
|
mkdir -p build/$ROCKCFG_ID/$toolsdir/{var/adm,etc,share,include} |
|
|
|
[ -L build/$ROCKCFG_ID/$toolsdir/usr ] || |
|
|
|
ln -s . build/$ROCKCFG_ID/$toolsdir/usr |
|
|
|
[ -L build/$ROCKCFG_ID/$toolsdir/sbin ] || |
|
|
|
ln -s bin build/$ROCKCFG_ID/$toolsdir/sbin |
|
|
|
[ -L build/$ROCKCFG_ID/$toolsdir/var/adm/logs ] || |
|
|
|
ln -s ../../../root/var/adm/logs \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/var/adm/logs |
|
|
|
mkdir -p build/$ROCKCFG_ID/root/var/adm/logs |
|
|
|
mkdir -p build/$ROCKCFG_ID/ROCK/$toolsdir/{var/adm,etc,share,include} |
|
|
|
[ -L build/$ROCKCFG_ID/ROCK/$toolsdir/usr ] || |
|
|
|
ln -s . build/$ROCKCFG_ID/ROCK/$toolsdir/usr |
|
|
|
[ -L build/$ROCKCFG_ID/ROCK/$toolsdir/sbin ] || |
|
|
|
ln -s bin build/$ROCKCFG_ID/ROCK/$toolsdir/sbin |
|
|
|
[ -L build/$ROCKCFG_ID/ROCK/$toolsdir/var/adm/logs ] || |
|
|
|
ln -s ../../../../var/adm/logs \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/var/adm/logs |
|
|
|
mkdir -p build/$ROCKCFG_ID/var/adm/logs |
|
|
|
fi |
|
|
|
|
|
|
|
x="$( bash scripts/xfind.sh config/$config/. package/. scripts/. \ |
|
|
|
misc/. architecture/. target/. ! -name '*.cache' \ |
|
|
|
-newer build/$ROCKCFG_ID/$toolsdir/.lastupdate \ |
|
|
|
-newer build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate \ |
|
|
|
-printf 'Found new/updated file: %p\n' 2> /dev/null )" |
|
|
|
|
|
|
|
if [ "$x" ] ; then |
|
|
|
@ -74,7 +74,7 @@ if [ "$x" ] ; then |
|
|
|
if [ "$ROCK_DEBUG_TOOLS_SKIP" = 1 ]; then |
|
|
|
echo_error "Found \$ROCK_DEBUG_TOOLS_SKIP ..." |
|
|
|
else |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/.lastupdate |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate |
|
|
|
|
|
|
|
if echo "$x" | grep -qv " config/$config/" ; then |
|
|
|
echo_header Re-running configuration: |
|
|
|
@ -88,21 +88,21 @@ fi |
|
|
|
if [ $cleanup = 1 ] ; then |
|
|
|
echo_header "Removing old stuff in $toolsdir/ directory ..." |
|
|
|
|
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/wrapper/* |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/* |
|
|
|
|
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/bin/getdu |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/bin/getfiles |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/bin/fl_wrparse |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/bin/fl_stparse |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/bin/getdu |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/bin/getfiles |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/bin/fl_wrparse |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/bin/fl_stparse |
|
|
|
|
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/lib/parse-config |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/.lastupdate |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/lib/parse-config |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate |
|
|
|
fi |
|
|
|
|
|
|
|
if [ ! -f build/$ROCKCFG_ID/$toolsdir/.lastupdate ] ; then |
|
|
|
if [ ! -f build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate ] ; then |
|
|
|
|
|
|
|
echo_header "Building tools in build/.../$toolsdir:" |
|
|
|
echo_header "Building tools in build/.../ROCK/$toolsdir:" |
|
|
|
|
|
|
|
# CC, CXX, F77 and KCC Wrapper |
|
|
|
# |
|
|
|
@ -110,9 +110,9 @@ if [ ! -f build/$ROCKCFG_ID/$toolsdir/.lastupdate ] ; then |
|
|
|
echo_status "Building $toolsdir/wrapper/cmd_wrapper." |
|
|
|
$BUILDCC -Wall -O2 misc/tools-source/cmd_wrapper.c \ |
|
|
|
-DENVPREFIX='"CMD"' -DMYNAME='"cmd_wrapper"' \ |
|
|
|
-o build/$ROCKCFG_ID/$toolsdir/wrapper/tmp.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/wrapper/tmp.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/wrapper/cmd_wrapper |
|
|
|
-o build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/tmp.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/tmp.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/cmd_wrapper |
|
|
|
# |
|
|
|
build_wrapper() { |
|
|
|
local x="$( echo ${1//,/ } )" y z |
|
|
|
@ -120,7 +120,7 @@ if [ ! -f build/$ROCKCFG_ID/$toolsdir/.lastupdate ] ; then |
|
|
|
while shift ; [ $# != 0 ] |
|
|
|
do |
|
|
|
wrappers="$wrappers $1" |
|
|
|
tmp=`mktemp -p build/$ROCKCFG_ID/$toolsdir/wrapper` |
|
|
|
tmp=`mktemp -p build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper` |
|
|
|
{ |
|
|
|
echo '#!/bin/bash' |
|
|
|
|
|
|
|
@ -167,7 +167,7 @@ if [ ! -f build/$ROCKCFG_ID/$toolsdir/.lastupdate ] ; then |
|
|
|
echo 'exec cmd_wrapper $( basename $0 ) "$@"' |
|
|
|
} > $tmp |
|
|
|
chmod +rx $tmp |
|
|
|
mv $tmp "build/$ROCKCFG_ID/$toolsdir/wrapper/$1" |
|
|
|
mv $tmp "build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/$1" |
|
|
|
done |
|
|
|
} |
|
|
|
# |
|
|
|
@ -175,7 +175,7 @@ if [ ! -f build/$ROCKCFG_ID/$toolsdir/.lastupdate ] ; then |
|
|
|
done < <( bash scripts/xfind.sh package/. target/$target/. misc/. -name 'wrappers.in' ) |
|
|
|
# |
|
|
|
echo_status "Building $toolsdir/wrapper/strip_wrapper." |
|
|
|
cat << 'EOT' > build/$ROCKCFG_ID/$toolsdir/wrapper/strip_wrapper.$$ |
|
|
|
cat << 'EOT' > build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/strip_wrapper.$$ |
|
|
|
#!/bin/sh |
|
|
|
if [ "$STRIP_WRAPPER_NOLOOP" = 1 ] ; then |
|
|
|
echo "Aaaaaeik! Strip wrapper is looping!" >&2 |
|
|
|
@ -188,37 +188,37 @@ if [ "$ROCKCFG_DEBUG" = 0 ] ; then |
|
|
|
fi |
|
|
|
exit 0 |
|
|
|
EOT |
|
|
|
chmod +x build/$ROCKCFG_ID/$toolsdir/wrapper/strip_wrapper.$$ |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/wrapper/strip_wrapper.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/wrapper/strip_wrapper |
|
|
|
chmod +x build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/strip_wrapper.$$ |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/strip_wrapper.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/strip_wrapper |
|
|
|
wrappers="$wrappers strip_wrapper" |
|
|
|
# |
|
|
|
for x in strip $arch_target-strip ; do |
|
|
|
[ $crossnative = cross -a $x = strip ] && continue |
|
|
|
if [ -x "`type -p $x`" ] ; then |
|
|
|
ln -sf strip_wrapper \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/wrapper/$x |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/$x |
|
|
|
wrappers="$wrappers $x" |
|
|
|
fi |
|
|
|
done |
|
|
|
# |
|
|
|
echo_status "Building $toolsdir/wrapper/install_wrapper." |
|
|
|
cp misc/tools-source/install_wrapper.sh build/$ROCKCFG_ID/$toolsdir/wrapper/install_wrapper |
|
|
|
chmod +x build/$ROCKCFG_ID/$toolsdir/wrapper/install_wrapper |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/$toolsdir/wrapper/install |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/$toolsdir/wrapper/cp |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/$toolsdir/wrapper/ln |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/$toolsdir/wrapper/mv |
|
|
|
cp misc/tools-source/install_wrapper.sh build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/install_wrapper |
|
|
|
chmod +x build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/install_wrapper |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/install |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/cp |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/ln |
|
|
|
ln -sf install_wrapper build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/mv |
|
|
|
wrappers="$wrappers install_wrapper install cp ln mv" |
|
|
|
# |
|
|
|
for x in $( ls build/$ROCKCFG_ID/$toolsdir/wrapper/ ) |
|
|
|
for x in $( ls build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/ ) |
|
|
|
do |
|
|
|
z=0 |
|
|
|
for y in $wrappers ; do |
|
|
|
[ "$x" = "$y" ] && z=1 |
|
|
|
done |
|
|
|
if [ "$z" = 0 ] ; then |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/wrapper/$x |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper/$x |
|
|
|
fi |
|
|
|
done |
|
|
|
|
|
|
|
@ -227,9 +227,9 @@ EOT |
|
|
|
for x in getdu getfiles fl_wrparse fl_stparse ; do |
|
|
|
echo_status "Building $toolsdir/bin/$x." |
|
|
|
$BUILDCC -Wall -O2 misc/tools-source/$x.c \ |
|
|
|
-o build/$ROCKCFG_ID/$toolsdir/bin/$x.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/bin/$x.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/bin/$x |
|
|
|
-o build/$ROCKCFG_ID/ROCK/$toolsdir/bin/$x.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/bin/$x.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/bin/$x |
|
|
|
done |
|
|
|
|
|
|
|
# Flist Wrapper Library |
|
|
|
@ -237,9 +237,9 @@ EOT |
|
|
|
if [ "$ROCKCFG_FLIST" = "flwrapper" ] ; then |
|
|
|
echo_status "Building $toolsdir/lib/fl_wrapper.so." |
|
|
|
$BUILDCC -Wall -O2 -ldl -shared misc/tools-source/fl_wrapper.c \ |
|
|
|
-o build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so |
|
|
|
-o build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so.$$ || exit 1 |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so |
|
|
|
|
|
|
|
echo_status "Testing $toolsdir/lib/fl_wrapper.so." |
|
|
|
if ! sh -c "LD_PRELOAD=\"\$LD_PRELOAD:build/\$ROCKCFG_ID/` |
|
|
|
@ -250,7 +250,7 @@ EOT |
|
|
|
"wrapper lib on your system." |
|
|
|
echo_error "Please specify another flist-creation" \ |
|
|
|
"system in your build configuration." |
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so |
|
|
|
echo ; exit 1 |
|
|
|
fi |
|
|
|
fi |
|
|
|
@ -264,19 +264,19 @@ EOT |
|
|
|
'(' ! -name 'parse-config-x' -o ! -name 'parse-config-*-x' ')' \ |
|
|
|
'(' ! -name '*~' ')' \ |
|
|
|
-printf '%f\t%p\n' | sort | awk '{ $1="."; print; }' \ |
|
|
|
> build/$ROCKCFG_ID/$toolsdir/lib/parse-config.$$ |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/lib/parse-config.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/lib/parse-config |
|
|
|
> build/$ROCKCFG_ID/ROCK/$toolsdir/lib/parse-config.$$ |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/lib/parse-config.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/lib/parse-config |
|
|
|
|
|
|
|
# Create pkg_*_{pre,post}.conf files |
|
|
|
# |
|
|
|
|
|
|
|
rm -f build/$ROCKCFG_ID/$toolsdir/lib/pkg_*_{pre,post}.conf |
|
|
|
rm -f build/$ROCKCFG_ID/ROCK/$toolsdir/lib/pkg_*_{pre,post}.conf |
|
|
|
echo_status "Creating $toolsdir/lib/pkg_*_{pre,post}.conf" |
|
|
|
for x in `grep "^X" config/$config/packages | cut -d ' ' -f 4,5 | tr ' ' '/'`; do |
|
|
|
for y in `echo package/$x/pkg_*_{pre,post}.conf`; do |
|
|
|
if [ -f $y ]; then |
|
|
|
echo " . $y" >> build/$ROCKCFG_ID/$toolsdir/lib/${y##*/} |
|
|
|
echo " . $y" >> build/$ROCKCFG_ID/ROCK/$toolsdir/lib/${y##*/} |
|
|
|
fi |
|
|
|
done |
|
|
|
done |
|
|
|
@ -287,11 +287,11 @@ EOT |
|
|
|
echo "export ${x}_WRAPPER_OTHERS='' ${x}_WRAPPER_REMOVE=''" |
|
|
|
echo "export ${x}_WRAPPER_INSERT='' ${x}_WRAPPER_APPEND=''" |
|
|
|
echo "export ${x}_WRAPPER_FILTER='' ${x}_WRAPPER_APPEND_PO=''" |
|
|
|
done > build/$ROCKCFG_ID/$toolsdir/lib/wrapper-config.$$ |
|
|
|
mv build/$ROCKCFG_ID/$toolsdir/lib/wrapper-config.$$ \ |
|
|
|
build/$ROCKCFG_ID/$toolsdir/lib/wrapper-config |
|
|
|
done > build/$ROCKCFG_ID/ROCK/$toolsdir/lib/wrapper-config.$$ |
|
|
|
mv build/$ROCKCFG_ID/ROCK/$toolsdir/lib/wrapper-config.$$ \ |
|
|
|
build/$ROCKCFG_ID/ROCK/$toolsdir/lib/wrapper-config |
|
|
|
|
|
|
|
touch build/$ROCKCFG_ID/$toolsdir/.lastupdate |
|
|
|
touch build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate |
|
|
|
fi |
|
|
|
|
|
|
|
exit 0 |