source: common/func_ICA.sh@ eb024db

experimental
Last change on this file since eb024db was eb024db, checked in by Manuel Canales Esparcia <manuel@…>, 18 years ago

Started new method to create iteration Makefile targets.

  • Property mode set to 100644
File size: 3.4 KB
Line 
1# $Id$
2
3#----------------------------------#
4wrt_ica_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
11 echo "$ITERATION: chapter6" >> $MKFILE
12 echo -e "\t@\$(call echo_message, Building)" >> $MKFILE
13 wrt_ica_work "$ITERATION"
14 wrt_logs_and_clean "$ITERATION"
15 else
16 wrt_system_build $N
17 echo "iteration-last: $PREV system_build_$N" >> $MKFILE
18 echo -e "\t@\$(call echo_message, Building)" >> $MKFILE
19 wrt_ica_work "$ITERATION" "$PREV"
20 if [ "$N" = "$ITERATIONS" ] ; then
21 wrt_logs "$ITERATION"
22 else
23 wrt_logs_and_clean "$ITERATION"
24 fi
25 fi
26 PREV=$ITERATION
27 done
28}
29
30#----------------------------------#
31wrt_system_build() { #
32#----------------------------------#
33 local RUN=$1
34
35 # Placeholder for now
36}
37
38#----------------------------------#
39wrt_ica_work() { #
40#----------------------------------#
41 local ITERATION=$1
42 local PREV=$2
43 local PRUNEPATH="/dev /home /jhalfs /lost+found /media /mnt /opt /proc \
44/sources /root /srv /sys /tmp /tools /usr/local /usr/src /var/log/paco"
45
46 if [[ "$PROGNAME" = "clfs" ]] && [[ "$METHOD" = "boot" ]] ; then
47 local ROOT_DIR=/
48 local DEST_TOPDIR=/jhalfs
49 local ICALOGDIR=/jhalfs/logs/ICA
50 local FARCELOGDIR=/jhalfs/logs/farce
51 else
52 local ROOT_DIR=$BUILDDIR
53 local DEST_TOPDIR=$BUILDDIR/jhalfs
54 fi
55
56 if [[ "$RUN_ICA" = "1" ]] ; then
57 local DEST_ICA=$DEST_TOPDIR/ICA && \
58(
59 cat << EOF
60 @extras/do_copy_files "$PRUNEPATH" $ROOT_DIR $DEST_ICA/$ITERATION && \\
61 extras/do_ica_prep $DEST_ICA/$ITERATION
62EOF
63) >> $MKFILE
64 if [[ "$ITERATION" != "iteration-1" ]] ; then
65 wrt_do_ica_work "$PREV" "$ITERATION" "$DEST_ICA"
66 fi
67 fi
68
69 if [[ "$RUN_FARCE" = "1" ]] ; then
70 local DEST_FARCE=$DEST_TOPDIR/farce && \
71(
72 cat << EOF
73 @extras/do_copy_files "$PRUNEPATH" $ROOT_DIR $DEST_FARCE/$ITERATION && \\
74 extras/filelist $DEST_FARCE/$ITERATION $DEST_FARCE/$ITERATION.filelist
75EOF
76) >> $MKFILE
77 if [[ "$ITERATION" != "iteration-1" ]] ; then
78 wrt_do_farce_work "$PREV" "$ITERATION" "$DEST_FARCE"
79 fi
80 fi
81}
82
83#----------------------------------#
84wrt_do_ica_work() { #
85#----------------------------------#
86 echo -e "\t@extras/do_ica_work $1 $2 $ICALOGDIR $3" >> $MKFILE
87}
88
89#----------------------------------#
90wrt_do_farce_work() { #
91#----------------------------------#
92 local OUTPUT=$FARCELOGDIR/${1}_V_${2}
93 local PREDIR=$3/$1
94 local PREFILE=$3/$1.filelist
95 local ITEDIR=$3/$2
96 local ITEFILE=$3/$2.filelist
97 echo -e "\t@extras/farce --directory $OUTPUT $PREDIR $PREFILE $ITEDIR $ITEFILE" >> $MKFILE
98}
99
100#----------------------------------#
101wrt_logs_and_clean() { #
102#----------------------------------#
103 local ITERATION=$1
104
105(
106 cat << EOF
107 @pushd logs && \\
108 mkdir $ITERATION && \\
109 mv $system_rebuild $ITERATION && \\
110 popd
111 @rm -f $system_rebuild
112 @touch \$@
113
114EOF
115) >> $MKFILE
116}
117
118#----------------------------------#
119wrt_logs() { #
120#----------------------------------#
121 local ITERATION=$1
122
123(
124 cat << EOF
125 @pushd logs && \\
126 mkdir $ITERATION && \\
127 cp $system_rebuild $ITERATION && \\
128 popd
129 @touch \$@
130
131EOF
132) >> $MKFILE
133}
Note: See TracBrowser for help on using the repository browser.