--- elwix/build_rootfs.sh 2012/02/16 10:05:34 1.2.4.5 +++ elwix/build_rootfs.sh 2012/10/09 15:23:56 1.2.4.14 @@ -5,7 +5,7 @@ # (C) AITNET ltd - Sofia/Bulgaria # by Michael Pounov # -# $Id: build_rootfs.sh,v 1.2.4.5 2012/02/16 10:05:34 misho Exp $ +# $Id: build_rootfs.sh,v 1.2.4.14 2012/10/09 15:23:56 misho Exp $ # [ -r ./config/rc.elwix ] && . ./config/rc.elwix @@ -34,14 +34,15 @@ NEWKERN="${REL}/kernel" clean_elwix() { - echo "+++ Clean csh from ELWIX World ..." - rm -rf ${BSDOBJ}/usr/src/bin/csh/* + echo "+++ Clean elwix binary from ELWIX World ..." + rm -rf $BSDOBJ/elwix echo "+++ Clean ELWIX RootFS firmware ..." rm -rf $MKDIR mkdir $MKDIR echo "+++ Clean RootFS directory ..." + chflags -R noschg $ROOTFS rm -rf $ROOTFS mkdir $ROOTFS @@ -57,22 +58,24 @@ prepare_elwix() # Auto-generated Makefile include for crungegen # !!! Dont edit by hand !!! # -#BUILDOPTS += TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ} -CRUNCH_SUPPRESS_LINK_-sh= 1 -CRUNCH_SUPPRESS_LINK_-csh= 1 -CRUNCH_SUPPRESS_LINK_-tcsh= 1 + LIBS += -L${WORLD}/lib -L${WORLD}/usr/lib _EOF cat >$ROOTFS_CONF <<_EOF +srcdirs ${BSDSRC}/tools/tools ${BSDSRC}/tools/tools/ath +srcdirs ${BSDSRC}/release/picobsd/tinyware srcdirs ${BSDSRC}/bin ${BSDSRC}/sbin ${BSDSRC}/libexec ${BSDSRC}/cddl/sbin ${BSDSRC}/sbin/ggate srcdirs ${BSDSRC}/usr.bin ${BSDSRC}/usr.sbin ${BSDSRC}/usr.sbin/wpa +srcdirs ${BSDSRC}/secure/usr.bin ${BSDSRC}/secure/usr.sbin ${BSDSRC}/secure/libexec -#buildopts -DRESCUE CRUNCH_CFLAGS=-DRESCUE TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ} -buildopts TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ} +buildopts -DNO_PAM -DNO_KERBEROS WITHOUT_PAM_SUPPORT=yes WITHOUT_KERBEROS_SUPPORT=yes WITHOUT_KERBEROS=yes +buildopts TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ}/elwix _EOF cat $CFGDIR/$ROOTFS_CONF >>$ROOTFS_CONF - crunchgen -f -p $BSDOBJ -h $MKDIR/$MKH -m $MKF -c elwix.c -e elwix $ROOTFS_CONF + . ${CENV} + install -d ${BSDOBJ}/elwix + crunchgen -f -o -p ${BSDOBJ}/elwix -h $MKDIR/$MKH -m $MKF -c elwix.c -e elwix $ROOTFS_CONF cd - } @@ -80,8 +83,13 @@ build_elwix() { echo "+++ Build ELWIX RootFS firmware ..." cd $MKDIR + . ${CENV} + MAKEOBJDIRPREFIX=${BSDOBJ}/elwix make -f $MKF clean make -f $MKF + if [ $? -ne 0 ]; then + exit 1 + fi cd - } @@ -94,6 +102,7 @@ build_rootdir() install -d dev; install -d elwix; install -d elwix/etc; + install -d libexec; install -d mnt; install -d -m 0555 proc; install -d sbin; @@ -107,7 +116,6 @@ build_rootdir() install -d var; ln -fs /usr/lib lib; - ln -fs /usr/libexec libexec; ln -fs /elwix/etc etc; ln -fs /elwix/exports exports; @@ -120,14 +128,15 @@ build_rootdir() install_rootfs() { - PRG="/sbin/elwix" BIN="${ROOTFS}/bin" SBIN="${ROOTFS}/sbin" UBIN="${ROOTFS}/usr/bin" LIBEXEC="${ROOTFS}/usr/libexec" - USBIN="${ROOTFS}/usr/sbin" ETC="${ROOTFS}/elwix/etc" + PRG="/sbin/elwix" + LNPRG="${SBIN}/elwix" + echo "+++ Install ELWIX into RootFS directory ..." install $MKDIR/elwix $SBIN @@ -144,17 +153,12 @@ install_rootfs() ln -s $PRG $BIN/chio ln -s $PRG $BIN/chmod ln -s $PRG $BIN/cp -# ln -s $PRG $BIN/csh -# ln -s $PRG $BIN/tcsh - ln -s /bin/tcsh $BIN/-tcsh - ln -s /bin/csh $BIN/-csh ln -s $PRG $BIN/date ln -s $PRG $BIN/dd ln -s $PRG $BIN/df ln -s $PRG $BIN/domainname ln -s $PRG $BIN/echo ln -s $PRG $BIN/expr - ln -s $PRG $BIN/getfacl ln -s $PRG $BIN/hostname ln -s $PRG $BIN/kenv ln -s $PRG $BIN/kill @@ -175,7 +179,6 @@ install_rootfs() ln -s $PRG $BIN/rm ln -s $PRG $BIN/unlink ln -s $PRG $BIN/rmdir - ln -s $PRG $BIN/setfacl ln -s $PRG $BIN/sleep ln -s $PRG $BIN/stty ln -s $PRG $BIN/sync @@ -220,18 +223,19 @@ install_rootfs() ln -s $PRG $BIN/cpio ln -s $PRG $BIN/nawk ln -s $PRG $BIN/gunzip + ln -s $PRG $BIN/gzcat + ln -s $PRG $BIN/zcat ln -s $PRG $BIN/more ln -s $PRG $BIN/reset ln -s $PRG $BIN/readlink ln -s $PRG $BIN/uptime + ln -s $PRG $BIN/bzip2 + ln -s $PRG $BIN/bunzip2 + ln -s $PRG $BIN/bzcat - ln -s $PRG $SBIN/adjkerntz - ln -s $PRG $SBIN/atacontrol - ln -s $PRG $SBIN/badsect ln -s $PRG $SBIN/bsdlabel ln -s $PRG $SBIN/disklabel ln -s $PRG $SBIN/camcontrol - ln -s $PRG $SBIN/ccdconfig ln -s $PRG $SBIN/comcontrol ln -s $PRG $SBIN/conscontrol ln -s $PRG $SBIN/devfs @@ -239,22 +243,18 @@ install_rootfs() ln -s $PRG $SBIN/dmesg ln -s $PRG $SBIN/dump ln -s $PRG $SBIN/rdump - ln -s $PRG $SBIN/dumpfs ln -s $PRG $SBIN/dumpon ln -s $PRG $SBIN/fdisk - ln -s $PRG $SBIN/ffsinfo ln -s $PRG $SBIN/fsck ln -s $PRG $SBIN/fsck_ffs ln -s $PRG $SBIN/fsck_ufs ln -s $PRG $SBIN/fsck_4.2bsd ln -s $PRG $SBIN/fsck_msdosfs - ln -s $PRG $SBIN/gbde - ln -s $PRG $SBIN/ggatec - ln -s $PRG $SBIN/ggated - ln -s $PRG $SBIN/ggatel + ln -s $PRG $SBIN/etherswitchcfg ln -s $PRG $SBIN/-geom ln -s $PRG $SBIN/glabel ln -s $PRG $SBIN/gpart + ln -s $PRG $SBIN/graid ln -s $PRG $SBIN/growfs ln -s $PRG $SBIN/hastctl ln -s $PRG $SBIN/hastd @@ -284,14 +284,12 @@ install_rootfs() ln -s $PRG $SBIN/mount_nullfs ln -s $PRG $SBIN/mount_udf ln -s $PRG $SBIN/mount_unionfs - ln -s $PRG $SBIN/natd ln -s $PRG $SBIN/newfs ln -s $PRG $SBIN/newfs_msdos ln -s $PRG $SBIN/nfsiod ln -s $PRG $SBIN/nos-tun + ln -s $PRG $SBIN/nvmecontrol ln -s $PRG $SBIN/pfctl - ln -s $PRG $SBIN/ping - ln -s $PRG $SBIN/ping6 ln -s $PRG $SBIN/pflogd ln -s $PRG $SBIN/quotacheck ln -s $PRG $SBIN/reboot @@ -305,8 +303,6 @@ install_rootfs() ln -s $PRG $SBIN/rtsol ln -s $PRG $SBIN/shutdown ln -s $PRG $SBIN/savecore - ln -s $PRG $SBIN/setkey - ln -s $PRG $SBIN/spppcontrol ln -s $PRG $SBIN/swapon ln -s $PRG $SBIN/swapoff ln -s $PRG $SBIN/swapctl @@ -316,8 +312,11 @@ install_rootfs() ln -s $PRG $SBIN/zfs ln -s $PRG $SBIN/zpool + ln -s $PRG $SBIN/ping + ln -s $PRG $SBIN/ping6 ln -s $PRG $SBIN/traceroute ln -s $PRG $SBIN/traceroute6 + ln -s $PRG $SBIN/chown ln -s $PRG $SBIN/pwd_mkdb ln -s $PRG $SBIN/arp @@ -350,9 +349,14 @@ install_rootfs() ln -s $PRG $SBIN/swapinfo ln -s $PRG $SBIN/chgrp + ln -s $PRG $UBIN/login + ln -s $PRG $UBIN/passwd + ln -s $PRG $LIBEXEC/getty ln -s $PRG $LIBEXEC/tftpd + strip -s $LNPRG + chown -hR root:wheel $ROOTFS echo "+++ ELWIX clean CVS tags ..." @@ -391,7 +395,8 @@ if SnitVer ${WORLD}/elwix.ver; then build_rootdir install_rootfs - build_image && install_image + build_image + install_image else echo "Skipped ELWIX RootFS build ..." fi