[45f82718] | 1 | # $Id$
|
---|
| 2 |
|
---|
| 3 | #----------------------------------#
|
---|
| 4 | wrt_compare_targets() { #
|
---|
| 5 | #----------------------------------#
|
---|
| 6 |
|
---|
| 7 | for ((N=1; N <= ITERATIONS ; N++)) ; do # Double parentheses,
|
---|
| 8 | # and "ITERATIONS" with no "$".
|
---|
| 9 | ITERATION=iteration-$N
|
---|
| 10 | if [ "$N" != "1" ] ; then
|
---|
[3da8c49] | 11 | wrt_system_build "$1" "$N" "$PREV_IT"
|
---|
[45f82718] | 12 | fi
|
---|
[3da8c49] | 13 | # add needed Makefile target
|
---|
[45f82718] | 14 | this_script=$ITERATION
|
---|
[045b2dc] | 15 | CHROOT_wrt_target "$ITERATION" "$PREV"
|
---|
[45f82718] | 16 | wrt_compare_work "$ITERATION" "$PREV_IT"
|
---|
[10c8b78] | 17 | wrt_logs "$N"
|
---|
[6bb080e] | 18 | wrt_touch
|
---|
[45f82718] | 19 | PREV_IT=$ITERATION
|
---|
| 20 | PREV=$ITERATION
|
---|
| 21 | done
|
---|
[3da8c49] | 22 | # We need to prevent "userdel" in all iterations but the last
|
---|
| 23 | # We need to access the scriptlets in "dir"
|
---|
| 24 | local dir
|
---|
| 25 | printf -v dir chapter%02d "$1"
|
---|
| 26 |
|
---|
| 27 | sed -i '/userdel/d' $dir/*revised*
|
---|
| 28 | for (( N = 2; N < ITERATIONS; N++ )); do
|
---|
| 29 | sed -i '/userdel/d' $dir-build_$N/*revised*
|
---|
| 30 | done
|
---|
| 31 |
|
---|
[45f82718] | 32 | }
|
---|
| 33 |
|
---|
| 34 | #----------------------------------#
|
---|
| 35 | wrt_system_build() { #
|
---|
| 36 | #----------------------------------#
|
---|
[3da8c49] | 37 | local CHAP=$1
|
---|
| 38 | local RUN=$2
|
---|
| 39 | local PREV_IT=$3
|
---|
[45f82718] | 40 |
|
---|
[7a84ba7] | 41 | if [[ "$PROGNAME" = "clfs" ]] ; then
|
---|
| 42 | final_system_Makefiles $RUN
|
---|
[45f82718] | 43 | else
|
---|
[3da8c49] | 44 | chapter_targets $CHAP $RUN
|
---|
[45f82718] | 45 | fi
|
---|
| 46 |
|
---|
[045b2dc] | 47 | if [[ "$PROGNAME" = "clfs" ]] ; then
|
---|
| 48 | basicsystem="$basicsystem $PREV_IT $system_build"
|
---|
| 49 | else
|
---|
[3da8c49] | 50 | CHROOT_TGT="$CHROOT_TGT $PREV_IT $system_build"
|
---|
[045b2dc] | 51 | fi
|
---|
| 52 |
|
---|
| 53 | if [[ "$RUN" = "$ITERATIONS" ]] ; then
|
---|
| 54 | if [[ "$PROGNAME" = "clfs" ]] ; then
|
---|
| 55 | basicsystem="$basicsystem iteration-$RUN"
|
---|
| 56 | else
|
---|
[3da8c49] | 57 | CHROOT_TGT="$CHROOT_TGT iteration-$RUN"
|
---|
[045b2dc] | 58 | fi
|
---|
| 59 | fi
|
---|
[45f82718] | 60 | }
|
---|
| 61 |
|
---|
| 62 | #----------------------------------#
|
---|
| 63 | wrt_compare_work() { #
|
---|
| 64 | #----------------------------------#
|
---|
| 65 | local ITERATION=$1
|
---|
| 66 | local PREV_IT=$2
|
---|
[1a1f099] | 67 | local PRUNEPATH="/dev /home /${SCRIPT_ROOT} /lost+found /media /mnt /opt /proc \
|
---|
[f5ecc28] | 68 | /sources /root /run /srv /sys /tmp /tools /usr/local /usr/src /var"
|
---|
[45f82718] | 69 |
|
---|
[045b2dc] | 70 | local ROOT_DIR=/
|
---|
| 71 | local DEST_TOPDIR=/${SCRIPT_ROOT}
|
---|
| 72 | local ICALOGDIR=/${SCRIPT_ROOT}/logs/ICA
|
---|
[45f82718] | 73 |
|
---|
[401f81e] | 74 | if [[ "$RUN_ICA" = "y" ]] ; then
|
---|
[45f82718] | 75 | local DEST_ICA=$DEST_TOPDIR/ICA && \
|
---|
[31a9b14] | 76 | # the PRUNEPATH additional setting is to avoid .pyc files to show up in diff
|
---|
[45f82718] | 77 | (
|
---|
| 78 | cat << EOF
|
---|
[31a9b14] | 79 | @PRUNEPATH="$PRUNEPATH \$\$(find /usr/lib -name __pycache__)"; \\
|
---|
| 80 | extras/do_copy_files "\$\$PRUNEPATH" $ROOT_DIR $DEST_ICA/$ITERATION >>logs/\$@ 2>&1 && \\
|
---|
[6bb080e] | 81 | extras/do_ica_prep $DEST_ICA/$ITERATION >>logs/\$@ 2>&1
|
---|
[45f82718] | 82 | EOF
|
---|
| 83 | ) >> $MKFILE.tmp
|
---|
| 84 | if [[ "$ITERATION" != "iteration-1" ]] ; then
|
---|
| 85 | wrt_do_ica_work "$PREV_IT" "$ITERATION" "$DEST_ICA"
|
---|
| 86 | fi
|
---|
| 87 | fi
|
---|
| 88 | }
|
---|
| 89 |
|
---|
| 90 | #----------------------------------#
|
---|
| 91 | wrt_do_ica_work() { #
|
---|
| 92 | #----------------------------------#
|
---|
[6bb080e] | 93 | echo -e "\t@extras/do_ica_work $1 $2 $ICALOGDIR $3 >>logs/\$@ 2>&1" >> $MKFILE.tmp
|
---|
[45f82718] | 94 | }
|
---|
| 95 |
|
---|
[10c8b78] | 96 | #----------------------------------#
|
---|
| 97 | wrt_logs() { #
|
---|
| 98 | #----------------------------------#
|
---|
| 99 | local build=build_$1
|
---|
| 100 | local file
|
---|
| 101 |
|
---|
| 102 | (
|
---|
| 103 | cat << EOF
|
---|
| 104 | @cd logs && \\
|
---|
| 105 | mkdir $build && \\
|
---|
[b7515ec] | 106 | mv -f `echo ${system_build} | sed 's/ /* /g'`* $build && \\
|
---|
[10c8b78] | 107 | if [ ! $build = build_1 ] ; then \\
|
---|
| 108 | cd $build && \\
|
---|
| 109 | for file in \`ls .\` ; do \\
|
---|
| 110 | mv -f \$\$file \`echo \$\$file | sed -e 's,-$build,,'\` ; \\
|
---|
| 111 | done ; \\
|
---|
[7b7b5e9] | 112 | fi
|
---|
[10c8b78] | 113 | @cd /\$(SCRIPT_ROOT)
|
---|
| 114 | @if [ -d test-logs ] ; then \\
|
---|
| 115 | cd test-logs && \\
|
---|
| 116 | mkdir $build && \\
|
---|
[7fa9369] | 117 | mv -f `echo ${system_build} | sed 's/ /* /g'`* $build && \\
|
---|
[10c8b78] | 118 | if [ ! $build = build_1 ] ; then \\
|
---|
| 119 | cd $build && \\
|
---|
| 120 | for file in \`ls .\` ; do \\
|
---|
| 121 | mv -f \$\$file \`echo \$\$file | sed -e 's,-$build,,'\` ; \\
|
---|
| 122 | done ; \\
|
---|
| 123 | fi ; \\
|
---|
| 124 | cd /\$(SCRIPT_ROOT) ; \\
|
---|
| 125 | fi ;
|
---|
| 126 | EOF
|
---|
| 127 | ) >> $MKFILE.tmp
|
---|
| 128 | }
|
---|