From 2e9427b378a3445bca0c4b9d9a8332916ae91e99 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Tue, 30 Mar 2004 12:39:50 +0000 Subject: [PATCH] Clifford Wolf: New ROCK 2.1 chroot structure for stages >=2. [2004032816495124462] (https://www.rocklinux.net/submaster) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@2622 c5f82cb5-29bc-0310-9cd0-bff59a50e3bc --- Documentation/Developers/PKG-BUILD-VARS | 7 +- misc/tools-source/fl_wrparse.c | 7 +- package/base/ccache/parse-config | 4 +- package/base/dietlibc/dietlibc.conf | 4 +- package/base/dietlibc/parse-config-9 | 4 +- package/base/gcc3/gcc3.conf | 8 +- scripts/Build-Job | 4 +- scripts/Build-Pkg | 173 +++++++++++------------- scripts/Build-Target | 20 +-- scripts/Build-Tools | 120 ++++++++-------- scripts/Cleanup | 17 ++- scripts/Create-ErrList | 12 +- scripts/Create-ISO | 2 +- scripts/Create-ParaStatus | 2 +- scripts/Create-PkgQueue | 2 +- scripts/parse-config | 20 +-- target/bootdisk/build.sh | 6 +- target/bootdisk/build_stage1.sh | 2 +- target/bootdisk/powerpc/build.sh | 6 +- target/bootdisk/x86/build.sh | 2 +- target/dietlibc/build.sh | 26 ++-- target/generic/build.sh | 26 ++-- target/reference/build.sh | 36 ++--- target/router/build.sh | 4 +- 24 files changed, 251 insertions(+), 263 deletions(-) diff --git a/Documentation/Developers/PKG-BUILD-VARS b/Documentation/Developers/PKG-BUILD-VARS index 0b5cd3b01..60ef9749a 100644 --- a/Documentation/Developers/PKG-BUILD-VARS +++ b/Documentation/Developers/PKG-BUILD-VARS @@ -36,9 +36,10 @@ xroot ......... real root (/R.work/build/... when in chroot mode) prefix ........ install prefix (usually '/usr' or '/opt/...') prefix_auto ... '1' = you may auto-detect a better value for $prefix in *.conf -build_log ..... Big build log file ... (Build-Target only) -build_pkgs .... Packagfiles go here .. (Build-Target only) -build_root .... Chroot dir name ...... (Build-Target only) +build_logs .... Big build log file ...... (Build-Target only) +build_pkgs .... Packagfiles go here ..... (Build-Target only) +build_root .... Chroot dir name ......... (Build-Target only) +build_rock .... ROCK build system data .. (Build-Target only) bindir ........ where the binaries (programs) should be installed sbindir ....... where the system binaries should be installed diff --git a/misc/tools-source/fl_wrparse.c b/misc/tools-source/fl_wrparse.c index c49fafd15..e9f75c045 100644 --- a/misc/tools-source/fl_wrparse.c +++ b/misc/tools-source/fl_wrparse.c @@ -46,8 +46,11 @@ char * get_realname(char * origname) { } getcwd(odir, FILENAME_MAX); chdir(buf); - getcwd(buf, FILENAME_MAX); strcat(buf,"/"); - strcat(buf, file); chdir(odir); + getcwd(buf, FILENAME_MAX); chdir(odir); + + if (strcmp(buf, "/")) strcat(buf,"/"); + strcat(buf, file); + return buf; } diff --git a/package/base/ccache/parse-config b/package/base/ccache/parse-config index 2eb4da1c4..3bc089959 100644 --- a/package/base/ccache/parse-config +++ b/package/base/ccache/parse-config @@ -23,8 +23,8 @@ if [ "$ROCKCFG_PKG_CCACHE_USEIT" = 1 -a "`type -p ccache`" ] ; then unset ${!CCACHE_*} - mkdir -p "$base/build/$ROCKCFG_ID/ccache${toolsdir#tools}" - export CCACHE_DIR="$base/build/$ROCKCFG_ID/ccache${toolsdir#tools}" + mkdir -p "$base/build/$ROCKCFG_ID/ROCK/ccache${toolsdir#tools}" + export CCACHE_DIR="$base/build/$ROCKCFG_ID/ROCK/ccache${toolsdir#tools}" export CCACHE_DONT_STAT_COMPILER=1 CCACHE_NLEVELS=5 var_insert KCC_WRAPPER_OTHERS ":" "ccache" diff --git a/package/base/dietlibc/dietlibc.conf b/package/base/dietlibc/dietlibc.conf index 67390cb9c..eaa3d451a 100644 --- a/package/base/dietlibc/dietlibc.conf +++ b/package/base/dietlibc/dietlibc.conf @@ -76,8 +76,8 @@ else fi makeinstopt="$makeinstopt DESTDIR=$root" -toolsbin=$base/build/$ROCKCFG_ID/$toolsdir/diet-bin -toolsinc=$base/build/$ROCKCFG_ID/$toolsdir/diet-include +toolsbin=$base/build/$ROCKCFG_ID/ROCK/$toolsdir/diet-bin +toolsinc=$base/build/$ROCKCFG_ID/ROCK/$toolsdir/diet-include cpu="`echo "$arch_machine" | sed -e s/i.86/i386/ -e s/powerpc/ppc/`" diff --git a/package/base/dietlibc/parse-config-9 b/package/base/dietlibc/parse-config-9 index 4e6bbaa11..baf9aa31e 100644 --- a/package/base/dietlibc/parse-config-9 +++ b/package/base/dietlibc/parse-config-9 @@ -62,8 +62,8 @@ if [ "$pkg_dietlibc_useit" = 1 ]; then arch_target="${arch_target}libc1" [ $ROCKCFG_CROSSBUILD = 0 ] && arch_build="${arch_target}" - if [ -d $base/build/$ROCKCFG_ID/$toolsdir/diet-bin ] ; then - PATH="$base/build/$ROCKCFG_ID/$toolsdir/diet-bin:$PATH" + if [ -d $base/build/$ROCKCFG_ID/ROCK/$toolsdir/diet-bin ] ; then + PATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/diet-bin:$PATH" fi if [ "$ROCKCFG_DIETLIBC_DYN" = "1" ] diff --git a/package/base/gcc3/gcc3.conf b/package/base/gcc3/gcc3.conf index f4c3fd8a2..85f7d8b2a 100644 --- a/package/base/gcc3/gcc3.conf +++ b/package/base/gcc3/gcc3.conf @@ -282,7 +282,7 @@ custmain() { # if [ $stagelevel -gt 1 ] ; then ( cd $root/$prefix/lib ; ln -vfs ${gcc_lib_dir}/*.so.* . ; ) - rm -fv $base/build/$ROCKCFG_ID/$toolsdir/.lastupdate + rm -fv $base/build/$ROCKCFG_ID/ROCK/$toolsdir/.lastupdate fi true } @@ -338,10 +338,10 @@ gcc_stage0() { cd $root/$prefix/$arch_target/lib for x in Mcrt1.o crt1.o crti.o crtn.o gcrt1.o \ libc.a libc.so libc_nonshared.a - do ln -fvs $root/../root/usr/lib/$x $x ; done + do ln -fvs $root/../../usr/lib/$x $x ; done for x in ld-linux{,-$arch_machine}.so.2 ld.so.1 libc.so.{6,6.1} - do ln -fvs $root/../root/lib/$x $x ; done + do ln -fvs $root/../../lib/$x $x ; done echo "Adapting gcc specs file..." cd $root/$prefix/lib/${gcc_lib_dir} @@ -349,7 +349,7 @@ gcc_stage0() { # Hint for the reader: # The options are listed in _inverse_ order here. - x="$base/build/$ROCKCFG_ID/root" + x="$base/build/$ROCKCFG_ID" tr '\n' '@' < specs.orig | sed \ -e "s|@\\*link:@|@*link:@-L $x/../tools.cross/$arch_target/lib |" \ -e "s|@\\*link:@|@*link:@-L $x/usr/$arch_target/lib |" \ diff --git a/scripts/Build-Job b/scripts/Build-Job index c295b936b..d16f378b7 100755 --- a/scripts/Build-Job +++ b/scripts/Build-Job @@ -43,9 +43,9 @@ while [ "$1" ] ; do done . ./scripts/parse-config -qdir="build/$ROCKCFG_ID/queue" +qdir="build/$ROCKCFG_ID/ROCK/queue" -build_logs="build/$ROCKCFG_ID/logs" +build_logs="build/$ROCKCFG_ID/ROCK/logs" mkdir -p "${build_logs}" if [ $daemon = 1 ] ; then diff --git a/scripts/Build-Pkg b/scripts/Build-Pkg index 7eb93fe50..221afe50d 100755 --- a/scripts/Build-Pkg +++ b/scripts/Build-Pkg @@ -108,8 +108,8 @@ fi if [ -z "$root" -a $stagelevel -le 1 ] || \ [ -z "$root" -a $chroot -eq 1 ] || \ [ "$root" = auto ]; then - if [ $stagelevel -gt 0 ]; then root="build/$ROCKCFG_ID/root" - else root="build/$ROCKCFG_ID/$toolsdir"; fi + if [ $stagelevel -gt 0 ]; then root="build/$ROCKCFG_ID" + else root="build/$ROCKCFG_ID/ROCK/$toolsdir"; fi fi [ "$pkgdir" -a "${pkgdir#/}" = "$pkgdir" ] && pkgdir="$base/$pkgdir" @@ -139,102 +139,84 @@ builddir="$base/src.$pkg.$id" if [ "$chroot" = 1 ] ; then - mkdir -p $builddir - cd $builddir || exit 1 - - mkdir -p R.orig R.build R.work R.src - ln -s ../R.src R.work/src.$pkg.$id - ln -s ../R.build R.work/build - - mkdir -p dev proc tmp mnt - [ -f proc/mounts ] || mount -t proc none $builddir/proc - mknod $builddir/dev/null c 1 3 - mknod $builddir/dev/zero c 1 5 - mknod $builddir/dev/random c 1 8 - mknod $builddir/dev/uramdom c 1 9 - mkdir $builddir/dev/loop - mknod $builddir/dev/loop/0 b 7 0 - mknod $builddir/dev/loop/1 b 7 1 - mknod $builddir/dev/loop/2 b 7 2 - mknod $builddir/dev/loop/3 b 7 3 - # mknod $builddir/dev/tty c 5 0 - ln -s /proc/self/fd $builddir/dev/fd - - realbase=$(dirname $(cd $base/scripts ; pwd -P)) - mount --bind $realbase $builddir/R.orig - - # handle mounted download dirs - if [ -L $realbase/download ]; then - abort "download dir can't be a symlink, use mount instead." + cd "$xroot" || exit 1 + + x_mknod() { + if [ ! -e "$1" ]; then + mknod "$@" + fi + } + + mkdir -p dev/loop + x_mknod dev/null c 1 3 + x_mknod dev/zero c 1 5 + x_mknod dev/random c 1 8 + x_mknod dev/uramdom c 1 9 + x_mknod dev/loop/0 b 7 0 + x_mknod dev/loop/1 b 7 1 + x_mknod dev/loop/2 b 7 2 + x_mknod dev/loop/3 b 7 3 + #_mknod dev/tty c 5 0 + + if [ ! -L dev/fd ]; then + ln -s /proc/self/fd dev/fd fi - mount --bind $realbase/download $builddir/R.orig/download - realbuild=$(cd $base/build ; pwd -P) - mount --bind $realbuild $builddir/R.build - ln -sf R.build/$ROCKCFG_ID/root/* . 2> /dev/null + realconf=$(cd $base/config; pwd -P) + realdown=$(cd $base/download; pwd -P) + realbase=$(dirname $(cd $base/scripts; pwd -P)) - cat > R_chroot.sh <<- EOT - cd /R.orig ; ./scripts/Create-Links /R.work > /dev/null - cd /R.work ; ./scripts/Build-Pkg $options -chr-sub -root "/R.build/$ROCKCFG_ID/root" "$1" - EOT + if [ ! -e ROCK/loop/scripts ]; then + mkdir -p ROCK/{loop,config,download} + mount --bind $realbase ROCK/loop + mount --bind $realconf ROCK/config + mount --bind $realdown ROCK/download + fi - cat <<- EOT > $builddir/R_mount.sh - mount -t proc none $builddir/proc - mount --bind $realbase $builddir/R.orig - mount --bind $realbase/download $builddir/R.orig/download - mount --bind $realbuild $builddir/R.build - EOT - cat <<- EOT > $builddir/R_umount.sh - umount proc R.orig/download R.orig R.build + if [ ! -f proc/mounts ]; then + mount -t proc none proc + fi + + for x in Documentation architecture misc package scripts target; do + if [ ! -e ROCK/$x ]; then ln -s "loop/$x" "ROCK/$x"; fi + done + + mkdir -p "ROCK/src.$pkg.$id" + ln -s "$PWD/ROCK/src.$pkg.$id" "$builddir" + + cat > $builddir/chroot.sh <<- EOT + export ROCK_THIS_IS_CHROOT=1; cd /ROCK + ./scripts/Build-Pkg $options -chr-sub -root "/" "$1" EOT - cat <<- EOT > $builddir/debug.sh - sh R_mount.sh - chroot . bin/bash -c 'cd R.src ; exec ./debug.sh' - [ -z "\`fuser R.src/build.pid\`" ] && sh R_umount.sh + + cat > $builddir/debug.sh <<- EOT + #!/bin/bash + export ROCK_THIS_IS_CHROOT=1 + chroot "$xroot" /bin/bash ROCK/src.$pkg.$id/debug_x.sh EOT chmod +x $builddir/debug.sh - mkdir -p R.work/config/ - cp -rp $base/config/$config R.work/config/ - if [ "$TZ" ] ; then if [ "${TZ#/}" != "$TZ" ] ; then - cp $TZ R.localtime + cp $TZ ROCK/localtime else - cp /usr/share/zoneinfo/$TZ R.localtime + cp /usr/share/zoneinfo/$TZ ROCK/localtime fi else if [ -f /etc/localtime ] ; then - cp /etc/localtime R.localtime + cp /etc/localtime ROCK/localtime else - ln -s /usr/share/zoneinfo/Factory R.localtime + ln -s /usr/share/zoneinfo/Factory ROCK/localtime fi fi - TZ="/R.localtime" chroot . bin/bash R_chroot.sh ; returncode=$? + TZ="/ROCK/localtime" chroot . bin/bash ROCK/src.$pkg.$id/chroot.sh + returncode=$? - { - umount -d -f $builddir/R.orig/download - umount -d -f $builddir/R.orig $builddir/R.build - umount -d -f $builddir/proc - umount -l -d -f $builddir/R.orig/download - umount -l -d -f $builddir/R.orig $builddir/R.build - umount -l -d -f $builddir/proc - } > /dev/null 2>&1 - - delbuilddir=1 - for x in R.src R.orig R.build proc ; do - if [ $delbuilddir = 1 ] ; then - rmdir $x 2>/dev/null - [ -e "$x" ] && delbuilddir=0 - fi - done - cd $base - - if [ $delbuilddir = 1 ] ; then - rm -rf $builddir/ + if [ ! -d "$builddir/." ]; then + rm "$builddir" fi - + exit $returncode fi @@ -242,7 +224,7 @@ if [ "$ROCKCFG_FLIST" = "flwrapper" -a -z "$FLWRAPPER" ] ; then export FLWRAPPER_WLOG="$builddir/fl_wrapper.wlog" export FLWRAPPER_RLOG="$builddir/fl_wrapper.rlog" [ "$LD_PRELOAD" ] && LD_PRELOAD="${LD_PRELOAD}:" - export FLWRAPPER="$base/build/$ROCKCFG_ID/$toolsdir/lib/fl_wrapper.so" + export FLWRAPPER="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/fl_wrapper.so" export LD_PRELOAD="${LD_PRELOAD}$FLWRAPPER" fi export INSTALL_WRAPPER_LOGFILE="$builddir/install_wrapper.log" @@ -473,16 +455,16 @@ if [ $stagelevel -gt 1 ]; then done unset pc_file fi -. $base/build/$ROCKCFG_ID/$toolsdir/lib/parse-config +. $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/parse-config set_confopt eval "$desc_O" # include package pre config - if any -if [ -f $base/build/$ROCKCFG_ID/$toolsdir/lib/pkg_${pkg}_pre.conf ] ; then +if [ -f $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/pkg_${pkg}_pre.conf ] ; then echo_status "Reading build/.../$toolsdir/lib/pkg_${pkg}_pre.conf" - . $base/build/$ROCKCFG_ID/$toolsdir/lib/pkg_${pkg}_pre.conf + . $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/pkg_${pkg}_pre.conf fi if [ -f $targetdir/pkg_$pkg.conf ] ; then @@ -494,9 +476,9 @@ elif [ -f $confdir/$pkg.conf ] ; then . $confdir/$pkg.conf fi # include package post config - if any -if [ -f $base/build/$ROCKCFG_ID/$toolsdir/lib/pkg_${pkg}_post.conf ] ; then +if [ -f $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/pkg_${pkg}_post.conf ] ; then echo_status "Reading build/.../$toolsdir/lib/pkg_${pkg}_post.conf" - . $base/build/$ROCKCFG_ID/$toolsdir/lib/pkg_${pkg}_post.conf + . $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/pkg_${pkg}_post.conf fi if [ -f $base/architecture/$arch/pkg-header ] ; then @@ -533,18 +515,13 @@ fi echo_status "Preparing build in src.$pkg.$id" -umount -r -d -f $builddir/* 2> /dev/null -umount -r -d -f -l $builddir/* 2> /dev/null -umount -r -d -f $builddir 2> /dev/null -umount -r -d -f -l $builddir 2> /dev/null - if [ $clear_src = 1 ] ; then - rm -rf $builddir/* ; mkdir -p $builddir ; chmod 700 $builddir - if [ "$ROCKCFG_SRC_TMPFS" = 1 ] ; then + mkdir -p $builddir; chmod 700 $builddir + if [ "$ROCKCFG_SRC_TMPFS" = 1 ]; then mount -t tmpfs -o $ROCKCFG_SRC_TMPFS_OPT none $builddir fi else - mkdir -p $builddir ; chmod 700 $builddir + mkdir -p $builddir; chmod 700 $builddir fi if [ "$xroot" != "$root" ] ; then @@ -615,10 +592,14 @@ abort() { } > $builddir/debug.buildenv # { echo "#!/bin/bash" - echo "export PROMPT_COMMAND='. debug.buildenv ; cd . ;" \ - "unset PROMPT_COMMAND'" ; echo "exec bash 200>> build.pid" - } > $builddir/debug.sh - chmod +x $builddir/debug.sh + echo "export PROMPT_COMMAND='. debug.buildenv; cd .; unset PROMPT_COMMAND'" + echo "cd $builddir; exec bash 200>> build.pid" + } > $builddir/debug_x.sh + # + if [ "$ROCK_THIS_IS_CHROOT" != 1 ]; then + mv $builddir/debug_x.sh $builddir/debug.sh + chmod +x $builddir/debug.sh + fi # Create PID file # diff --git a/scripts/Build-Target b/scripts/Build-Target index adbe029f0..1737f4e0f 100755 --- a/scripts/Build-Target +++ b/scripts/Build-Target @@ -57,10 +57,10 @@ fi . scripts/parse-config . scripts/functions -build_dir="$base/build/$ROCKCFG_ID" -build_logs="$build_dir/logs" ; mkdir -p "${build_logs}" -build_root="$build_dir/root" ; mkdir -p "${build_root}" -build_pkgs="$build_dir/pkgs" +build_root="$base/build/$ROCKCFG_ID" +build_rock="$base/build/$ROCKCFG_ID/ROCK" +build_logs="$build_rock/logs" ; mkdir -p "${build_logs}" +build_pkgs="$build_rock/pkgs" ; mkdir -p "${build_root}" if [ "$ROCKCFG_PARANOIA_CHECK" = 1 ] ; then ./scripts/Check-System || exit 1 @@ -94,7 +94,7 @@ pkgloop() { if [ "$ROCKCFG_PARALLEL" = 1 -a -z "$build_only_this_job" ] then - qdir="$base/build/$ROCKCFG_ID/queue" + qdir="$base/build/$ROCKCFG_ID/ROCK/queue" mkdir -p $qdir if [ -z "$ROCKCFG_PARALLEL_ADDJOB" ] ; then @@ -215,19 +215,19 @@ fi else cut -d' ' -f5 fi > $pkglst - for file in $( ls build/$ROCKCFG_ID/pkgs/ ) ; do + for file in $( ls build/$ROCKCFG_ID/ROCK/pkgs/ ) ; do x="$file" [ $ROCKCFG_CREATE_GEM = 0 ] || x=${x%.gem} [ $ROCKCFG_CREATE_TARBZ2 = 0 ] || x=${x%.tar.bz2} if ! grep -qx "$x" $pkglst ; then - file="build/$ROCKCFG_ID/pkgs/$file" + file="build/$ROCKCFG_ID/ROCK/pkgs/$file" echo_error "$file should not be present" \ "(now in src/invalid-files.lst)!" mkdir -p src; echo "$file" >> src/invalid-files.lst errors=1 fi done - for dir in build/$ROCKCFG_ID/root/var/adm/{cache,cksums,dependencies,descs,flists,md5sums,packages} ; do + for dir in build/$ROCKCFG_ID/var/adm/{cache,cksums,dependencies,descs,flists,md5sums,packages} ; do for file in $( ls $dir ) ; do if [ $ROCKCFG_PKGFILE_VER = 1 ] ; then x="$file-" @@ -241,7 +241,7 @@ fi fi done done - for file in $( ls build/$ROCKCFG_ID/root/var/adm/logs/ ) ; do + for file in $( ls build/$ROCKCFG_ID/var/adm/logs/ ) ; do x="`echo $file | sed -e 's/^.-//' -e 's/\.log//' -e 's/\.err//' -e s'/\.out//'`" if [ $ROCKCFG_PKGFILE_VER = 1 ] ; then x=$x- @@ -250,7 +250,7 @@ fi fi if ! grep -q "$x" $pkglst ; then - file="build/$ROCKCFG_ID/root/var/adm/logs/$file" + file="build/$ROCKCFG_ID/var/adm/logs/$file" echo_error "$file should not be present (now in src/invalid-files.lst)!" mkdir -p src; echo "$file" >> src/invalid-files.lst errors=1 diff --git a/scripts/Build-Tools b/scripts/Build-Tools index 24f4e5fff..0d1d41acf 100755 --- a/scripts/Build-Tools +++ b/scripts/Build-Tools @@ -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 diff --git a/scripts/Cleanup b/scripts/Cleanup index fbfa4ca3f..1df2cac43 100755 --- a/scripts/Cleanup +++ b/scripts/Cleanup @@ -44,7 +44,7 @@ done # Remove src* # -for x in src* ; do +for x in src src.* build/*/ROCK/src.*; do if [ -d "$x" ] ; then if [ "$#" != 0 ] ; then delme=0 @@ -52,7 +52,8 @@ for x in src* ; do [ "$delme" = 0 ] && continue fi delme=1 - for y in build.pid R.src/build.pid ; do + + for y in build.pid; do if [ $delme = 1 -a -f "$x/$y" ] ; then if [ "`fuser "$x/$y"`" ] ; then echo "Found active $y in $x: Not removing!" @@ -60,6 +61,8 @@ for x in src* ; do fi fi done + + ## Backward compat. Remove that loop later for y in proc R.orig/download R.orig R.build R.src/mnt* mnt* ; do if [ $delme = 1 -a -d "$x/$y" ] ; then umount -d -f "$x/$y" > /dev/null 2>&1 @@ -90,11 +93,11 @@ for x in build/* ; do [ "$delme" = 0 ] && continue fi if [ $fullclean = 1 ] ; then - for y in dev proc ; do - umount -d -f "$x/root/$y" > /dev/null 2>&1 - umount -d -f -l "$x/root/$y" > /dev/null 2>&1 - rmdir "$x/root/$y" > /dev/null 2>&1 - if [ -d "$x/root/$y" ] ; then + for y in dev proc ROCK/loop ROCK/config ROCK/download; do + umount -d -f "$x/$y" > /dev/null 2>&1 + umount -d -f -l "$x/$y" > /dev/null 2>&1 + rmdir "$x/$y" > /dev/null 2>&1 + if [ -d "$x/$y" ] ; then echo "Found $y in $x: Not removing!" delme=0 fi diff --git a/scripts/Create-ErrList b/scripts/Create-ErrList index ed025b5ef..cb6075428 100755 --- a/scripts/Create-ErrList +++ b/scripts/Create-ErrList @@ -117,7 +117,7 @@ done . scripts/parse-config -logdir="${logdir:-build/$ROCKCFG_ID/root/var/adm/logs}" +logdir="${logdir:-build/$ROCKCFG_ID/var/adm/logs}" pkgdir="${logdir%/*}/packages" if [ "$newdelete" = 1 ]; then @@ -127,12 +127,12 @@ if [ "$newdelete" = 1 ]; then grep -v '\.cache$' | md5sum | cut -f1 -d' ' ) if [ "$cksum1" != "$cksum2" ]; then echo "Scheduling package '$pkg' for rebuild ..." - mine -rf -R build/$ROCKCFG_ID/root $pkg - rm -f build/$ROCKCFG_ID/root/var/adm/*/?-$pkg.* + mine -rf -R build/$ROCKCFG_ID $pkg + rm -f build/$ROCKCFG_ID/var/adm/*/?-$pkg.* fi done < <( grep '^ROCK Linux Package Source Checksum: ' \ - build/$ROCKCFG_ID/root/var/adm/packages/* | + build/$ROCKCFG_ID/var/adm/packages/* | tr '/:' ' ' | cut -f7,14 -d' ' ) exit 0 @@ -174,8 +174,8 @@ if [ "$1" ] ; then elif [ "$remove" = 1 ] ; then for x ; do echo "Scheduling package '$x' for rebuild ..." - mine -rf -R build/$ROCKCFG_ID/root $x - rm -f build/$ROCKCFG_ID/root/var/adm/*/?-$x.* + mine -rf -R build/$ROCKCFG_ID $x + rm -f build/$ROCKCFG_ID/var/adm/*/?-$x.* done elif [ "$delete" = 1 ] ; then for x ; do rm -vf "$logdir"/$stages-$x.err ; done diff --git a/scripts/Create-ISO b/scripts/Create-ISO index c7e2d6fd8..c7b99b10c 100755 --- a/scripts/Create-ISO +++ b/scripts/Create-ISO @@ -62,7 +62,7 @@ rm -f ${pathspec}* for cfg ; do id="`grep '^export ROCKCFG_ID=' config/$cfg/config | cut -f2 -d\'`" - if ! cat build/$id/isofs.txt >> $dat + if ! cat build/$id/ROCK/isofs.txt >> $dat then rm -f $dat $index ${pathspec}_* ; exit 1 ; fi done diff --git a/scripts/Create-ParaStatus b/scripts/Create-ParaStatus index fcd333d8a..6c405c637 100755 --- a/scripts/Create-ParaStatus +++ b/scripts/Create-ParaStatus @@ -32,7 +32,7 @@ while [ "$1" ] ; do done . scripts/parse-config -qdir="$base/build/$ROCKCFG_ID/queue" +qdir="$base/build/$ROCKCFG_ID/ROCK/queue" if [ ! -d $qdir ] ; then echo diff --git a/scripts/Create-PkgQueue b/scripts/Create-PkgQueue index 3117c420d..07b019568 100755 --- a/scripts/Create-PkgQueue +++ b/scripts/Create-PkgQueue @@ -177,7 +177,7 @@ BEGIN { nobrokendeps='$nobrokendeps'; config="'$config'"; single='$single'; debug='$debug'; - logdir="'"${logdir:-build/$ROCKCFG_ID/root/var/adm/logs}"'"; + logdir="'"${logdir:-build/$ROCKCFG_ID/var/adm/logs}"'"; logfile_tpl = logdir "/-."; depdb_file = "scripts/dep_db.txt"; diff --git a/scripts/parse-config b/scripts/parse-config index 16f7b13d7..2ab11d488 100644 --- a/scripts/parse-config +++ b/scripts/parse-config @@ -62,7 +62,7 @@ if [ -f "architecture/$arch/archtest.sh" ] base=$(pwd -P) -if [ -f "/R_chroot.sh" ] +if [ "$ROCK_THIS_IS_CHROOT" = 1 ] then toolsdir=tools.chroot else @@ -85,11 +85,11 @@ export PATH="${new_path#:}" unset new_path if [ $stagelevel -le 1 -a "$ROCKCFG_USE_CROSSCC" = 1 ] ; then - export PATH="$base/build/$ROCKCFG_ID/$toolsdir/crosscc:$PATH" + export PATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/crosscc:$PATH" fi -export PATH="$base/build/$ROCKCFG_ID/$toolsdir/bin:$PATH" -export PATH="$base/build/$ROCKCFG_ID/$toolsdir/wrapper:$PATH" +export PATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/bin:$PATH" +export PATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper:$PATH" export LC_ALL=C ; unset LANG ; umask 022 export BUILDCC="cc" BUILD_CC="cc" HOSTCC="cc" HOST_CC="cc" @@ -99,20 +99,20 @@ unset CPP ARFLAGS ASFLAGS CFLAGS CXXFLAGS CPPFLAGS FFLAGS LDFLAGS unset LD_LIBRARY_PATH LD_PRELOAD FLWRAPPER C_INCLUDE_PATH CONFIG_SITE unset DISPLAY -export STRIP_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/$toolsdir/wrapper" +export STRIP_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper" export STRIP_WRAPPER_NOLOOP=0 -export INSTALL_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/$toolsdir/wrapper" +export INSTALL_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper" export INSTALL_WRAPPER_LOGFILE="/dev/null" export INSTALL_WRAPPER_FILTER="" export INSTALL_WRAPPER_NOLOOP=0 -export CMD_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/$toolsdir/wrapper" +export CMD_WRAPPER_MYPATH="$base/build/$ROCKCFG_ID/ROCK/$toolsdir/wrapper" export CMD_WRAPPER_LOGFILE="" CMD_WRAPPER_DEBUG=0 CMD_WRAPPER_BYPASS=0 export CMD_WRAPPER_NOLOOP=0 ; unset CMD_WRAPPER_OTHERS_TMP -if [ -f $base/build/$ROCKCFG_ID/$toolsdir/lib/wrapper-config ] -then . $base/build/$ROCKCFG_ID/$toolsdir/lib/wrapper-config ; fi +if [ -f $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/wrapper-config ] +then . $base/build/$ROCKCFG_ID/ROCK/$toolsdir/lib/wrapper-config ; fi if [ "$stagelevel" -gt 1 -o "$ROCKCFG_USE_CROSSCC" = 0 ] then @@ -122,7 +122,7 @@ else if [ $stagelevel -eq 1 ]; then archprefix="${arch_target}-" - if [ ! -f "$base/build/$ROCKCFG_ID/$toolsdir/` + if [ ! -f "$base/build/$ROCKCFG_ID/ROCK/$toolsdir/` `crosscc/${archprefix}gcc" ] then archprefix="Cross_CC_not_built_so_far_" ; fi fi diff --git a/target/bootdisk/build.sh b/target/bootdisk/build.sh index fde4373ae..ace1264da 100644 --- a/target/bootdisk/build.sh +++ b/target/bootdisk/build.sh @@ -1,5 +1,5 @@ -disksdir="$build_dir/bootdisk" +disksdir="$build_rock/bootdisk" if [ "$ROCK_DEBUG_BOOTDISK_NOSTAGE2" != 1 -a \ "$ROCK_DEBUG_BOOTDISK_NOSTAGE1" != 1 ] @@ -12,7 +12,7 @@ fi . scripts/parse-config # Add tools.cross/diet-bin/ to path so we find our 'diet' program -PATH="$base/build/${ROCKCFG_ID}/$toolsdir/diet-bin:$PATH" +PATH="$base/build/${ROCKCFG_ID}/ROCK/$toolsdir/diet-bin:$PATH" if [ "$ROCK_DEBUG_BOOTDISK_NOSTAGE2" != 1 ] @@ -38,7 +38,7 @@ ln 2nd_stage.tar.gz 2nd_stage_small.tar.gz isofs/ ln *.img initrd.gz isofs/ 2>/dev/null || true # might not exist on some architectures echo_status "Creating isofs.txt file .." -echo "DISK1 build/${ROCKCFG_ID}/bootdisk/isofs/ ` +echo "DISK1 build/${ROCKCFG_ID}/ROCK/bootdisk/isofs/ ` `${ROCKCFG_SHORTID}/" > ../isofs_generic.txt cat ../isofs_*.txt > ../isofs.txt diff --git a/target/bootdisk/build_stage1.sh b/target/bootdisk/build_stage1.sh index 2180df2bc..8e06c08af 100644 --- a/target/bootdisk/build_stage1.sh +++ b/target/bootdisk/build_stage1.sh @@ -50,7 +50,7 @@ rm -f lib/modules/[0-9]*/kernel/drivers/net/{dummy,ppp*}.{o,ko} # if [ "$ROCKCFG_BOOTDISK_USEKISS" = 1 ]; then echo_status "Adding kiss shell for expert use of the initrd image." - cp $build_dir/root/bin/kiss bin/ + cp $build_root/bin/kiss bin/ #mv linuxrc bin/; ln -s bin/kiss linuxrc #rm -f lib/modules/[0-9]*/kernel/drivers/net/{dgrx,acenic}.o #rm -f lib/modules/[0-9]*/kernel/drivers/scsi/{advansys,qla1280}.o diff --git a/target/bootdisk/powerpc/build.sh b/target/bootdisk/powerpc/build.sh index 1fee9b395..0110534c4 100644 --- a/target/bootdisk/powerpc/build.sh +++ b/target/bootdisk/powerpc/build.sh @@ -13,10 +13,10 @@ then echo_status "Extracting yaboot boot loader images." mkdir -p boot etc tar --use-compress-program=bzip2 \ - -xf $base/build/${ROCKCFG_ID}/pkgs/yaboot.tar.bz2 \ + -xf $base/build/${ROCKCFG_ID}/ROCK/pkgs/yaboot.tar.bz2 \ usr/lib/yaboot/yaboot -O > boot/yaboot tar --use-compress-program=bzip2 \ - -xf $base/build/${ROCKCFG_ID}/pkgs/yaboot.tar.bz2 \ + -xf $base/build/${ROCKCFG_ID}/ROCK/pkgs/yaboot.tar.bz2 \ usr/lib/yaboot/yaboot.rs6k -O > boot/yaboot.rs6k # echo_status "Creating yaboot config file." @@ -32,7 +32,7 @@ then echo_status "Copy more config files." cp -v $base/target/$target/powerpc/mapping . # - datdir="build/${ROCKCFG_ID}/bootdisk" + datdir="build/${ROCKCFG_ID}/ROCK/bootdisk" cat > ../isofs_arch.txt <<- EOT BOOT -hfs -part -map $datdir/mapping -hfs-volid "ROCK_Linux_CD" BOOTx -hfs-bless boot -sysid PPC diff --git a/target/bootdisk/x86/build.sh b/target/bootdisk/x86/build.sh index 0b5685ec5..d34046c46 100644 --- a/target/bootdisk/x86/build.sh +++ b/target/bootdisk/x86/build.sh @@ -58,7 +58,7 @@ then cat > ../isofs_arch.txt <<- EOT BOOT -b isolinux/isolinux.bin -c isolinux/boot.catalog BOOTx -no-emul-boot -boot-load-size 4 -boot-info-table - DISK1 build/${ROCKCFG_ID}/bootdisk/isolinux/ isolinux/ + DISK1 build/${ROCKCFG_ID}/ROCK/bootdisk/isolinux/ isolinux/ EOT fi diff --git a/target/dietlibc/build.sh b/target/dietlibc/build.sh index e0995ca6e..422715a06 100644 --- a/target/dietlibc/build.sh +++ b/target/dietlibc/build.sh @@ -8,19 +8,19 @@ pkgloop echo_header "Finishing build." echo_status "Creating package database ..." -admdir="build/${ROCKCFG_ID}/root/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/pkgs \ - build/${ROCKCFG_ID}/packages.db +admdir="build/${ROCKCFG_ID}/var/adm" +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ + build/${ROCKCFG_ID}/ROCK/packages.db echo_status "Creating isofs.txt file .." -cat << EOT > build/${ROCKCFG_ID}/isofs.txt -DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ -DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ -DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ -DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ -DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ -DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ -DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ -EVERY build/${ROCKCFG_ID}/packages.db ${ROCKCFG_SHORTID}/packages.db -SPLIT build/${ROCKCFG_ID}/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ +cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt +DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ +DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ +DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ +DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ +DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ +DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ +DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ +EVERY build/${ROCKCFG_ID}/ROCK/packages.db ${ROCKCFG_SHORTID}/packages.db +SPLIT build/${ROCKCFG_ID}/ROCK/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ EOT diff --git a/target/generic/build.sh b/target/generic/build.sh index 1e4a77b64..4c90147e3 100755 --- a/target/generic/build.sh +++ b/target/generic/build.sh @@ -8,20 +8,20 @@ pkgloop echo_header "Finishing build." echo_status "Creating package database ..." -admdir="build/${ROCKCFG_ID}/root/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/pkgs \ - build/${ROCKCFG_ID}/packages.db +admdir="build/${ROCKCFG_ID}/var/adm" +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ + build/${ROCKCFG_ID}/ROCK/packages.db echo_status "Creating isofs.txt file .." -cat << EOT > build/${ROCKCFG_ID}/isofs.txt -DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ -DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ -DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ -DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ -DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ -DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ -DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ -EVERY build/${ROCKCFG_ID}/packages.db ${ROCKCFG_SHORTID}/packages.db -SPLIT build/${ROCKCFG_ID}/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ +cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt +DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ +DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ +DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ +DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ +DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ +DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ +DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ +EVERY build/${ROCKCFG_ID}/ROCK/packages.db ${ROCKCFG_SHORTID}/packages.db +SPLIT build/${ROCKCFG_ID}/ROCK/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ EOT diff --git a/target/reference/build.sh b/target/reference/build.sh index 500f56faa..ff7c8b220 100644 --- a/target/reference/build.sh +++ b/target/reference/build.sh @@ -1,5 +1,5 @@ -build_result="$build_dir/result" +build_result="$build_rock/result" pkgloop_action() { @@ -38,34 +38,34 @@ cp $build_root/var/adm/dep-debug/* $build_result/dep-debug/ cp $build_root/var/adm/logs/*.err $build_result/errors/ echo_status "Creating package database ..." -admdir="build/${ROCKCFG_ID}/root/var/adm" -create_package_db $admdir build/${ROCKCFG_ID}/pkgs \ - build/${ROCKCFG_ID}/packages.db +admdir="build/${ROCKCFG_ID}/var/adm" +create_package_db $admdir build/${ROCKCFG_ID}/ROCK/pkgs \ + build/${ROCKCFG_ID}/ROCK/packages.db echo_status "Creating isofs.txt file .." -cat << EOT > build/${ROCKCFG_ID}/isofs.txt -DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ -DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ -DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ -DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ -DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ -DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ -DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ -EVERY build/${ROCKCFG_ID}/packages.db ${ROCKCFG_SHORTID}/packages.db -SPLIT build/${ROCKCFG_ID}/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ +cat << EOT > build/${ROCKCFG_ID}/ROCK/isofs.txt +DISK1 $admdir/cache/ ${ROCKCFG_SHORTID}/info/cache/ +DISK1 $admdir/cksums/ ${ROCKCFG_SHORTID}/info/cksums/ +DISK1 $admdir/dependencies/ ${ROCKCFG_SHORTID}/info/dependencies/ +DISK1 $admdir/descs/ ${ROCKCFG_SHORTID}/info/descs/ +DISK1 $admdir/flists/ ${ROCKCFG_SHORTID}/info/flists/ +DISK1 $admdir/md5sums/ ${ROCKCFG_SHORTID}/info/md5sums/ +DISK1 $admdir/packages/ ${ROCKCFG_SHORTID}/info/packages/ +EVERY build/${ROCKCFG_ID}/ROCK/packages.db ${ROCKCFG_SHORTID}/packages.db +SPLIT build/${ROCKCFG_ID}/ROCK/pkgs/ ${ROCKCFG_SHORTID}/pkgs/ EOT echo_header "Reference build finished." -cat <<- EOT > build/${ROCKCFG_ID}/result/copy-cache.sh +cat <<- EOT > build/${ROCKCFG_ID}/ROCK/result/copy-cache.sh #!/bin/sh - cd $base/build/${ROCKCFG_ID}/result + cd $base/build/${ROCKCFG_ID}/ROCK/result find package -type f | while read fn do [ -f ../../../\${fn%.cache}.desc ] && cp -v \$fn ../../../\$fn; done cd ../../..; ./scripts/Create-DepDB > scripts/dep_db.txt EOT -chmod +x build/${ROCKCFG_ID}/result/copy-cache.sh +chmod +x build/${ROCKCFG_ID}/ROCK/result/copy-cache.sh echo_status "Results are stored in the directory" -echo_status "build/$ROCKCFG_ID/result/." +echo_status "build/$ROCKCFG_ID/ROCK/result/." diff --git a/target/router/build.sh b/target/router/build.sh index 3a35ff33c..45e1da946 100644 --- a/target/router/build.sh +++ b/target/router/build.sh @@ -4,7 +4,7 @@ pkgloop echo_header "Creating the router ramdisk..." echo_status "Creating the directory structure." -outdir="$build_dir/router" +outdir="$build_rock/router" rm -rf $outdir mkdir -p $outdir/initrd/bin mkdir -p $outdir/initrd/lib @@ -90,7 +90,7 @@ echo_status "Create iso description." cat > ../isofs.txt <<- EOT BOOT -b isolinux.bin -c boot.catalog BOOTx -no-emul-boot -boot-load-size 4 -boot-info-table - DISK1 build/${ROCKCFG_ID}/router / + DISK1 build/${ROCKCFG_ID}/ROCK/router / EOT if [ "$ROCK_DEBUG_ROUTER_NOCLEANUP" != 1 ]; then