PERFORCE change 81329 for review
soc-saturnero
soc-saturnero at FreeBSD.org
Tue Aug 2 10:30:16 GMT 2005
http://perforce.freebsd.org/chv.cgi?CH=81329
Change 81329 by soc-saturnero at soc-saturnero_sberta on 2005/08/02 10:29:17
Added support for unionfs. Actually, this is broken on FreeBSD >5.0.
You'll more likely set NO_UNIONFS somewhere.
Affected files ...
.. //depot/projects/soc2005/freesbie/ToDo#5 edit
.. //depot/projects/soc2005/freesbie/conf/make.conf.minimal#2 edit
.. //depot/projects/soc2005/freesbie/conf/rc.d/unionfs#1 add
.. //depot/projects/soc2005/freesbie/scripts/clonefs.sh#3 edit
.. //depot/projects/soc2005/freesbie/scripts/flash.sh#2 edit
.. //depot/projects/soc2005/freesbie/scripts/img.sh#4 edit
.. //depot/projects/soc2005/freesbie/scripts/installkernel.sh#2 edit
Differences ...
==== //depot/projects/soc2005/freesbie/ToDo#5 (text+ko) ====
@@ -1,13 +1,9 @@
-- Write freesbie rcNG script
- - eventually write separated files (one for uzip, one for unionfs, ..)
+???
- Add a new target (patch?) for
- creating loader.conf
- creating rc.conf
- - copying freesbie rcNG script
-- Add FILE_LIST support to clonefs
-- Add PRUNE_LIST support to clonefs
- Package management
- Extra stuff
==== //depot/projects/soc2005/freesbie/conf/make.conf.minimal#2 (text+ko) ====
@@ -1,30 +1,49 @@
-NO_PROFILE=TRUE
-NO_KERBEROS=YES
-NO_MODULES=YES
+NO_ACPI=YES
+NO_ATM=YES
+NO_AUTHPF=YES
+NO_BIND=YES
+NO_BIND_DNSSEC=YES
+NO_BIND_ETC=YES
+NO_BIND_LIBS_LWRES=YES
+NO_BIND_MTREE=YES
+NO_BIND_NAMED=YES
+NO_BIND_UTILS=YES
NO_BLUETOOTH=YES
NO_CVS=YES
NO_CXX=YES
+NO_DICT=YES
NO_FORTRAN=YES
+NO_GAMES=YES
+NO_GCOV=YES
NO_GDB=YES
+NO_GPIB=YES
+NO_HESIOD_LIBC=YES
+NO_HTML=YES
NO_I4B=YES
+NO_INET6=YES
+NO_INFO=YES
NO_IPFILTER=YES
-NO_PF=YES
-NO_AUTHPF=YES
-NO_TOOLCHAIN=YES
-NO_ATM=YES
+NO_KERBEROS=YES
+NO_KLDLOAD=YES
+NO_LIBC_R=YES
+NO_LIBPTHREAD=YES
+NO_LIBTHR=YES
NO_LPR=YES
-NO_VINUM=YES
NO_MAILWRAPPER=YES
NO_MAN=YES
+NO_MODULES=YES
+NO_NETCAT=YES
+NO_NETGRAPH=YES
+NO_NIS=YES
NO_OBJC=YES
+NO_P1003_1B=YES
+NO_PAM=YES
+NO_PF=YES
+NO_PROFILE=YES
+NO_RESCUE=YES
+NO_TOOLCHAIN=YES
+NO_USB=YES
+NO_VINUM=YES
NO_SENDMAIL=YES
NO_SHAREDOCS=YES
-NO_GAMES=YES
-NO_INFO=YES
-NO_BIND=YES
-NO_BIND_DNSSEC=YES
-NO_BIND_ETC=YES
-NO_BIND_LIBS_LWRES=YES
-NO_BIND_MTREE=YES
-NO_BIND_NAMED=YES
-NO_BIND_UTILS=YES
+PPP_NO_RADIUS=YES
==== //depot/projects/soc2005/freesbie/scripts/clonefs.sh#3 (text+ko) ====
@@ -80,6 +80,7 @@
clone_system() {
echo "#### Cloning ${BASEDIR} to ${CLONEDIR} ####"
+#varbug means that command is temporarily disabled
mkdir -p ${CLONEDIR}
if [ -d "${CLONEDIR}" ]; then
@@ -89,12 +90,13 @@
if [ -z "${NO_UNIONFS:-}" ]; then
# Preparing unionfs environment
- mkdir -p ${CLONEDIR}/dist ${CLONEDIR}/mnt/union/{usr,var}
+ mkdir -p ${CLONEDIR}/dist
+ mkdir -p ${CLONEDIR}/mnt/union/usr
+ #${CLONEDIR}/mnt/union/var
# Saving directory structure
mtree -Pcdp ${BASEDIR}/usr > ${CLONEDIR}/dist/usr.dirs
- mtree -Pcdp ${BASEDIR}/var > ${CLONEDIR}/dist/var.dirs
-
+#varbug mtree -Pcdp ${BASEDIR}/var > ${CLONEDIR}/dist/var.dirs
fi
if [ -z "${NO_COMPRESSEDFS:-}" ]; then
@@ -107,31 +109,65 @@
# When NO_UNIONFS is set, we prefer using a mdmfs var (created
# automatically by rc.d scripts
if [ -z "${NO_UNIONFS:-}" ]; then
- VARDEVICE=$(create_vnode ${CLONEDIR}/uzip/var.ufs var)
- DEVICES=${DEVICES} ${VARDEVICE}
+#varbug VARDEVICE=$(create_vnode ${CLONEDIR}/uzip/var.ufs var)
+#varbug DEVICES="${DEVICES} ${VARDEVICE}"
fi
trap "umount_md_devices ${DEVICES}; exit 1" INT
fi
cd ${BASEDIR}
- # XXX Add support for FILE_LIST and/or PRUNE_LIST
- find . -print -depth | cpio -pvudm ${CLONEDIR} >> ${LOGFILE} 2>&1
+
+ # If FILE_LIST isn't defined...
+ if [ -z "${FILE_LIST:-}" ]; then
+ # then copy the whole filesystem
+ find . -print -depth | cpio -dump -v ${CLONEDIR} >> ${LOGFILE} 2>&1
+ else
+ # else pass it to cpio
+ if [ -f ${FILE_LIST} ]; then
+ echo "Using ${FILE_LIST} as source" | tee -a ${LOGFILE}
+ cpio -dump -v ${CLONEDIR} < ${FILE_LIST} >> ${LOGFILE} 2>&1
+ else
+ echo "${FILE_LIST} is not a valid path, exiting..." \
+ | tee -a ${LOGFILE}
+ if [ -z "${NO_COMPRESSEDFS:-}" ]; then
+ umount_md_devices ${DEVICES}
+ fi
+ exit 1
+ fi
+ fi
+
+ # If PRUNE_LIST file exists, delete files and dir listed in it
+ if [ -n "${PRUNE_LIST:-}" ]; then
+ if [ -f ${PRUNE_LIST} ]; then
+ echo "Deleting files listed in ${PRUNE_LIST}" | tee -a ${LOGFILE}
+ (cd ${CLONEDIR} && cat ${PRUNE_LIST} | xargs rm -rvf >> ${LOGFILE} 2>&1)
+ else
+ echo "${PRUNE_LIST} isn't a regular file, skipping file deletion" \
+ | tee -a ${LOGFILE}
+ fi
+ fi
if [ -z "${NO_COMPRESSEDFS:-}" ]; then
umount_md_devices ${DEVICES}
trap "" INT
uzip $CLONEDIR/uzip/usr.ufs $CLONEDIR/uzip/usr.uzip
if [ -z "${NO_UNIONFS:-}" ]; then
- uzip $CLONEDIR/uzip/var.ufs $CLONEDIR/uzip/var.uzip
+#var bug uzip $CLONEDIR/uzip/var.ufs $CLONEDIR/uzip/var.uzip
fi
- #Copy the rc script
+ # Copy the rc script for uzip files
cp ${LOCALDIR}/conf/rc.d/uzip ${CLONEDIR}/etc/rc.d/
chmod 555 ${CLONEDIR}/etc/rc.d/uzip
fi
+
+ if [ -z "${NO_UNIONFS:-}" ]; then
+ # Copy the rc script for unionfs
+ cp ${LOCALDIR}/conf/rc.d/unionfs ${CLONEDIR}/etc/rc.d/
+ chmod 555 ${CLONEDIR}/etc/rc.d/unionfs
+ fi
+
}
-
clone_system
cd ${LOCALDIR}
==== //depot/projects/soc2005/freesbie/scripts/flash.sh#2 (text+ko) ====
@@ -45,9 +45,9 @@
echo "Writing files..."
cd ${CLONEDIR}
-find . -print -depth | cpio -pvudm ${TMPDIR} >> ${LOGFILE} 2>&1
+find . -print -depth | cpio -dump -v ${TMPDIR} >> ${LOGFILE} 2>&1
echo "/dev/ufs/${LABEL} / ufs ro 1 1" > ${TMPDIR}/etc/fstab
umount ${TMPDIR}
cd ${LOCALDIR}
-rm -rf ${TMPDIR}+rm -rf ${TMPDIR}
==== //depot/projects/soc2005/freesbie/scripts/img.sh#4 (text+ko) ====
@@ -51,7 +51,7 @@
echo "Writing files..."
cd ${CLONEDIR}
-find . -print -depth | cpio -pvudm ${TMPDIR} >> ${LOGFILE} 2>&1
+find . -print -depth | cpio -dump -v ${TMPDIR} >> ${LOGFILE} 2>&1
echo "/dev/ufs/${LABEL} / ufs ro 1 1" > ${TMPDIR}/etc/fstab
umount ${TMPDIR}
cd ${LOCALDIR}
==== //depot/projects/soc2005/freesbie/scripts/installkernel.sh#2 (text+ko) ====
@@ -39,4 +39,10 @@
(script -aq $LOGFILE make ${MAKEOPT:-} installkernel __MAKE_CONF=${MAKE_CONF} TARGET_ARCH=${ARCH} DESTDIR=${BASEDIR} || print_error;) | grep '^>>>'
+cd ${BASEDIR}/boot/kernel
+if [ "${ARCH}" = "`uname -m`" -a -z "${DEBUG:-}" ]; then
+ strip kernel
+fi
+gzip -f9 kernel
+
cd $LOCALDIR
More information about the p4-projects
mailing list