2 # This file is in the public domain
5 if [ "x$1" != "x" ] ; then
17 make -j 4 buildworld \
18 __MAKE_CONF=${ODIR}/make.conf \
20 make -j 4 buildkernel \
22 __MAKE_CONF=${ODIR}/make.conf \
27 dd if=/dev/zero of=${ODIR}/_.i bs=1m count=200
29 MD=`mdconfig -a -t vnode -f ${ODIR}/_.i`
30 trap "umount ${MNT} || true ; mdconfig -d -u $MD" 1 2 15 EXIT
31 newfs -O1 -U -b 4096 -f 512 /dev/$MD
32 mount /dev/${MD} ${MNT}
36 __MAKE_CONF=${ODIR}/make.conf \
41 __MAKE_CONF=${ODIR}/make.conf \
48 __MAKE_CONF=${ODIR}/make.conf \
52 ( cd ${MNT} && mtree -c ) > ${ODIR}/_.mtree
53 ( cd ${MNT} && du ) > ${ODIR}/_.du
54 ( df -i ${MNT} ) > ${ODIR}/_.df
63 # Clean and recrate the ODIR
66 if rm -rf ${ODIR} ; then
69 chflags -R noschg ${ODIR}
76 # Build the reference world
79 echo '' > ${ODIR}/make.conf
80 MAKEOBJDIRPREFIX=$ODIR/_.ref
81 export MAKEOBJDIRPREFIX
85 # Parse option list into subdirectories with make.conf files.
89 grep -v '^[ ]*#' $OPLIST | while read o
91 echo "$o=/dev/YES" > ${ODIR}/_make.conf
92 m=`md5 < ${ODIR}/_make.conf`
94 mv ${ODIR}/_make.conf ${RDIR}/$m/make.conf
98 # Do the reference installworld
101 echo '' > ${ODIR}/make.conf
102 MAKEOBJDIRPREFIX=$ODIR/_.ref
103 export MAKEOBJDIRPREFIX
106 cp ${ODIR}/_.df ${RDIR}/Ref
107 cp ${ODIR}/_.mtree ${RDIR}/Ref
108 cp ${ODIR}/_.du ${RDIR}/Ref
111 # Run through each testtarget in turn
114 for d in ${RDIR}/[0-9a-z]*
116 if [ ! -d $d ] ; then
119 echo '------------------------------------------------'
121 echo '------------------------------------------------'
122 cp $d/make.conf ${ODIR}/make.conf
124 if [ ! -f $d/iw/done ] ; then
128 MAKEOBJDIRPREFIX=$ODIR/_.ref
129 export MAKEOBJDIRPREFIX
131 cp ${ODIR}/_.df $d/iw
132 cp ${ODIR}/_.mtree $d/iw
133 cp ${ODIR}/_.du $d/iw
135 cp ${ODIR}/_.iw $d/iw || true
136 cp ${ODIR}/_.ik $d/iw || true
140 if [ ! -f $d/bw/done ] ; then
142 MAKEOBJDIRPREFIX=$ODIR/_.tst
143 export MAKEOBJDIRPREFIX
148 cp ${ODIR}/_.mtree $d/w
151 cp ${ODIR}/_.iw $d/w || true
152 cp ${ODIR}/_.ik $d/w || true
157 echo '' > ${ODIR}/make.conf
159 cp ${ODIR}/_.df $d/bw
160 cp ${ODIR}/_.mtree $d/bw
161 cp ${ODIR}/_.du $d/bw
163 cp ${ODIR}/_.iw $d/bw || true
164 cp ${ODIR}/_.ik $d/bw || true
169 cp ${ODIR}/_.bw $d/bw || true
170 cp ${ODIR}/_.bk $d/bw || true