--- elwix/build_rootfs.sh 2012/02/16 10:05:34 1.2.4.5 +++ elwix/build_rootfs.sh 2012/02/21 16:15:14 1.2.4.6 @@ -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.6 2012/02/21 16:15:14 misho Exp $ # [ -r ./config/rc.elwix ] && . ./config/rc.elwix @@ -35,7 +35,8 @@ NEWKERN="${REL}/kernel" clean_elwix() { echo "+++ Clean csh from ELWIX World ..." - rm -rf ${BSDOBJ}/usr/src/bin/csh/* +# rm -rf ${BSDOBJ}/usr/src/bin/csh/* + rm -rf $BSDOBJ/elwix echo "+++ Clean ELWIX RootFS firmware ..." rm -rf $MKDIR @@ -57,22 +58,28 @@ 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 + +#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 +87,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 +106,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 +120,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 +132,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 @@ -137,221 +150,230 @@ install_rootfs() # ln -s /usr/sbin/nologin $SBIN - ln -s $PRG $BIN/test - ln -s $PRG $BIN/\[ - ln -s $PRG $BIN/cat - ln -s $PRG $BIN/chflags - 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 - ln -s $PRG $BIN/ln - ln -s $PRG $BIN/link - ln -s $PRG $BIN/ls - ln -s $PRG $BIN/mkdir - ln -s $PRG $BIN/mv - ln -s $PRG $BIN/pax - ln -s $PRG $BIN/pkill - ln -s $PRG $BIN/pgrep - ln -s $PRG $BIN/sh - ln -s $PRG $BIN/-sh - ln -s $PRG $BIN/ps - ln -s $PRG $BIN/pwait - ln -s $PRG $BIN/pwd - ln -s $PRG $BIN/realpath - 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 - ln -s $PRG $BIN/uuidgen + ln $LNPRG $BIN/csh + ln $LNPRG $BIN/tcsh - ln -s $PRG $BIN/true - ln -s $PRG $BIN/false - ln -s $PRG $BIN/basename - ln -s $PRG $BIN/tail - ln -s $PRG $BIN/nc - ln -s $PRG $BIN/w - ln -s $PRG $BIN/head - ln -s $PRG $BIN/uname - ln -s $PRG $BIN/tset - ln -s $PRG $BIN/vmstat - ln -s $PRG $BIN/systat - ln -s $PRG $BIN/tput - ln -s $PRG $BIN/grep - ln -s $PRG $BIN/awk - ln -s $PRG $BIN/less - ln -s $PRG $BIN/gzip - ln -s $PRG $BIN/cap_mkdb - ln -s $PRG $BIN/sed - ln -s $PRG $BIN/vi - ln -s $PRG $BIN/du - ln -s $PRG $BIN/getopt - ln -s $PRG $BIN/logger - ln -s $PRG $BIN/nice - ln -s $PRG $BIN/nohup - ln -s $PRG $BIN/seq - ln -s $PRG $BIN/sockstat - ln -s $PRG $BIN/stat - ln -s $PRG $BIN/tee - ln -s $PRG $BIN/tftp - ln -s $PRG $BIN/touch - ln -s $PRG $BIN/wc - ln -s $PRG $BIN/xargs - ln -s $PRG $BIN/printenv - ln -s $PRG $BIN/egrep - ln -s $PRG $BIN/fgrep - ln -s $PRG $BIN/tar - ln -s $PRG $BIN/cpio - ln -s $PRG $BIN/nawk - ln -s $PRG $BIN/gunzip - ln -s $PRG $BIN/more - ln -s $PRG $BIN/reset - ln -s $PRG $BIN/readlink - ln -s $PRG $BIN/uptime + ln $LNPRG $BIN/test + ln $LNPRG $BIN/\[ + ln $LNPRG $BIN/cat + ln $LNPRG $BIN/chflags + ln $LNPRG $BIN/chio + ln $LNPRG $BIN/chmod + ln $LNPRG $BIN/cp + ln $LNPRG $BIN/date + ln $LNPRG $BIN/dd + ln $LNPRG $BIN/df + ln $LNPRG $BIN/domainname + ln $LNPRG $BIN/echo + ln $LNPRG $BIN/expr + ln $LNPRG $BIN/getfacl + ln $LNPRG $BIN/hostname + ln $LNPRG $BIN/kenv + ln $LNPRG $BIN/kill + ln $LNPRG $BIN/ln + ln $LNPRG $BIN/link + ln $LNPRG $BIN/ls + ln $LNPRG $BIN/mkdir + ln $LNPRG $BIN/mv + ln $LNPRG $BIN/pax + ln $LNPRG $BIN/pkill + ln $LNPRG $BIN/pgrep + ln $LNPRG $BIN/sh + ln $LNPRG $BIN/-sh + ln $LNPRG $BIN/ps + ln $LNPRG $BIN/pwait + ln $LNPRG $BIN/pwd + ln $LNPRG $BIN/realpath + ln $LNPRG $BIN/rm + ln $LNPRG $BIN/unlink + ln $LNPRG $BIN/rmdir + ln $LNPRG $BIN/setfacl + ln $LNPRG $BIN/sleep + ln $LNPRG $BIN/stty + ln $LNPRG $BIN/sync + ln $LNPRG $BIN/uuidgen - 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 - ln -s $PRG $SBIN/dhclient - 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/-geom - ln -s $PRG $SBIN/glabel - ln -s $PRG $SBIN/gpart - ln -s $PRG $SBIN/growfs - ln -s $PRG $SBIN/hastctl - ln -s $PRG $SBIN/hastd - ln -s $PRG $SBIN/ifconfig - ln -s $PRG $SBIN/init - ln -s $PRG $SBIN/ipfw - ln -s $PRG $SBIN/iscontrol - ln -s $PRG $SBIN/kldconfig - ln -s $PRG $SBIN/kldload - ln -s $PRG $SBIN/kldstat - ln -s $PRG $SBIN/kldunload - ln -s $PRG $SBIN/ldconfig - ln -s $PRG $SBIN/md5 - ln -s $PRG $SBIN/sha1 - ln -s $PRG $SBIN/sha256 - ln -s $PRG $SBIN/rmd160 - ln -s $PRG $SBIN/mdconfig - ln -s $PRG $SBIN/mdmfs - ln -s $PRG $SBIN/mount_mfs - ln -s $PRG $SBIN/mknod - ln -s $PRG $SBIN/mksnap_ffs - ln -s $PRG $SBIN/mount - ln -s $PRG $SBIN/mount_cd9660 - ln -s $PRG $SBIN/mount_msdosfs - ln -s $PRG $SBIN/mount_nfs - ln -s $PRG $SBIN/mount_ntfs - 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/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 - ln -s $PRG $SBIN/halt - ln -s $PRG $SBIN/fastboot - ln -s $PRG $SBIN/fasthalt - ln -s $PRG $SBIN/recoverdisk - ln -s $PRG $SBIN/restore - ln -s $PRG $SBIN/rrestore - ln -s $PRG $SBIN/route - 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 - ln -s $PRG $SBIN/sysctl - ln -s $PRG $SBIN/tunefs - ln -s $PRG $SBIN/umount - ln -s $PRG $SBIN/zfs - ln -s $PRG $SBIN/zpool + ln $LNPRG $BIN/true + ln $LNPRG $BIN/false + ln $LNPRG $BIN/basename + ln $LNPRG $BIN/tail + ln $LNPRG $BIN/nc + ln $LNPRG $BIN/w + ln $LNPRG $BIN/head + ln $LNPRG $BIN/uname + ln $LNPRG $BIN/tset + ln $LNPRG $BIN/vmstat + ln $LNPRG $BIN/systat + ln $LNPRG $BIN/tput + ln $LNPRG $BIN/grep + ln $LNPRG $BIN/awk + ln $LNPRG $BIN/less + ln $LNPRG $BIN/gzip + ln $LNPRG $BIN/cap_mkdb + ln $LNPRG $BIN/sed + ln $LNPRG $BIN/vi + ln $LNPRG $BIN/du + ln $LNPRG $BIN/getopt + ln $LNPRG $BIN/logger + ln $LNPRG $BIN/nice + ln $LNPRG $BIN/nohup + ln $LNPRG $BIN/seq + ln $LNPRG $BIN/sockstat + ln $LNPRG $BIN/stat + ln $LNPRG $BIN/tee + ln $LNPRG $BIN/tftp + ln $LNPRG $BIN/touch + ln $LNPRG $BIN/wc + ln $LNPRG $BIN/xargs + ln $LNPRG $BIN/printenv + ln $LNPRG $BIN/egrep + ln $LNPRG $BIN/fgrep + ln $LNPRG $BIN/tar + ln $LNPRG $BIN/cpio + ln $LNPRG $BIN/nawk + ln $LNPRG $BIN/gunzip + ln $LNPRG $BIN/gzcat + ln $LNPRG $BIN/zcat + ln $LNPRG $BIN/more + ln $LNPRG $BIN/reset + ln $LNPRG $BIN/readlink + ln $LNPRG $BIN/uptime + ln $LNPRG $BIN/bzip2 + ln $LNPRG $BIN/bunzip2 + ln $LNPRG $BIN/bzcat - 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 - ln -s $PRG $SBIN/gpioctl - ln -s $PRG $SBIN/hostapd - ln -s $PRG $SBIN/hostapd_cli - ln -s $PRG $SBIN/wpa_supplicant - ln -s $PRG $SBIN/wpa_cli - ln -s $PRG $SBIN/wpa_passphrase - ln -s $PRG $SBIN/wake - ln -s $PRG $SBIN/watchdog - ln -s $PRG $SBIN/watchdogd - ln -s $PRG $SBIN/inetd - ln -s $PRG $SBIN/wlandebug - ln -s $PRG $SBIN/chroot - ln -s $PRG $SBIN/i2c - ln -s $PRG $SBIN/iostat - ln -s $PRG $SBIN/jail - ln -s $PRG $SBIN/jexec - ln -s $PRG $SBIN/jls - ln -s $PRG $SBIN/ndp - ln -s $PRG $SBIN/newsyslog - ln -s $PRG $SBIN/nologin - ln -s $PRG $SBIN/pstat - ln -s $PRG $SBIN/rtadvctl - ln -s $PRG $SBIN/rtadvd - ln -s $PRG $SBIN/rtsold - ln -s $PRG $SBIN/syslogd - ln -s $PRG $SBIN/setfib - ln -s $PRG $SBIN/swapinfo - ln -s $PRG $SBIN/chgrp + ln $LNPRG $SBIN/adjkerntz + ln $LNPRG $SBIN/atacontrol + ln $LNPRG $SBIN/badsect + ln $LNPRG $SBIN/bsdlabel + ln $LNPRG $SBIN/disklabel + ln $LNPRG $SBIN/camcontrol + ln $LNPRG $SBIN/ccdconfig + ln $LNPRG $SBIN/comcontrol + ln $LNPRG $SBIN/conscontrol + ln $LNPRG $SBIN/devfs + ln $LNPRG $SBIN/dhclient + ln $LNPRG $SBIN/dmesg + ln $LNPRG $SBIN/dump + ln $LNPRG $SBIN/rdump + ln $LNPRG $SBIN/dumpfs + ln $LNPRG $SBIN/dumpon + ln $LNPRG $SBIN/fdisk + ln $LNPRG $SBIN/ffsinfo + ln $LNPRG $SBIN/fsck + ln $LNPRG $SBIN/fsck_ffs + ln $LNPRG $SBIN/fsck_ufs + ln $LNPRG $SBIN/fsck_4.2bsd + ln $LNPRG $SBIN/fsck_msdosfs + ln $LNPRG $SBIN/gbde + ln $LNPRG $SBIN/ggatec + ln $LNPRG $SBIN/ggated + ln $LNPRG $SBIN/ggatel + ln $LNPRG $SBIN/-geom + ln $LNPRG $SBIN/glabel + ln $LNPRG $SBIN/gpart + ln $LNPRG $SBIN/growfs + ln $LNPRG $SBIN/hastctl + ln $LNPRG $SBIN/hastd + ln $LNPRG $SBIN/ifconfig + ln $LNPRG $SBIN/init + ln $LNPRG $SBIN/ipfw + ln $LNPRG $SBIN/iscontrol + ln $LNPRG $SBIN/kldconfig + ln $LNPRG $SBIN/kldload + ln $LNPRG $SBIN/kldstat + ln $LNPRG $SBIN/kldunload + ln $LNPRG $SBIN/ldconfig + ln $LNPRG $SBIN/md5 + ln $LNPRG $SBIN/sha1 + ln $LNPRG $SBIN/sha256 + ln $LNPRG $SBIN/rmd160 + ln $LNPRG $SBIN/mdconfig + ln $LNPRG $SBIN/mdmfs + ln $LNPRG $SBIN/mount_mfs + ln $LNPRG $SBIN/mknod + ln $LNPRG $SBIN/mksnap_ffs + ln $LNPRG $SBIN/mount + ln $LNPRG $SBIN/mount_cd9660 + ln $LNPRG $SBIN/mount_msdosfs + ln $LNPRG $SBIN/mount_nfs + ln $LNPRG $SBIN/mount_ntfs + ln $LNPRG $SBIN/mount_nullfs + ln $LNPRG $SBIN/mount_udf + ln $LNPRG $SBIN/mount_unionfs + ln $LNPRG $SBIN/natd + ln $LNPRG $SBIN/newfs + ln $LNPRG $SBIN/newfs_msdos + ln $LNPRG $SBIN/nfsiod + ln $LNPRG $SBIN/nos-tun + ln $LNPRG $SBIN/pfctl + ln $LNPRG $SBIN/pflogd + ln $LNPRG $SBIN/quotacheck + ln $LNPRG $SBIN/reboot + ln $LNPRG $SBIN/halt + ln $LNPRG $SBIN/fastboot + ln $LNPRG $SBIN/fasthalt + ln $LNPRG $SBIN/recoverdisk + ln $LNPRG $SBIN/restore + ln $LNPRG $SBIN/rrestore + ln $LNPRG $SBIN/route + ln $LNPRG $SBIN/rtsol + ln $LNPRG $SBIN/shutdown + ln $LNPRG $SBIN/savecore + ln $LNPRG $SBIN/setkey + ln $LNPRG $SBIN/spppcontrol + ln $LNPRG $SBIN/swapon + ln $LNPRG $SBIN/swapoff + ln $LNPRG $SBIN/swapctl + ln $LNPRG $SBIN/sysctl + ln $LNPRG $SBIN/tunefs + ln $LNPRG $SBIN/umount + ln $LNPRG $SBIN/zfs + ln $LNPRG $SBIN/zpool - ln -s $PRG $LIBEXEC/getty - ln -s $PRG $LIBEXEC/tftpd + ln $LNPRG $SBIN/ping + ln $LNPRG $SBIN/ping6 + ln $LNPRG $SBIN/traceroute + ln $LNPRG $SBIN/traceroute6 + + ln $LNPRG $SBIN/chown + ln $LNPRG $SBIN/pwd_mkdb + ln $LNPRG $SBIN/arp + ln $LNPRG $SBIN/gpioctl + ln $LNPRG $SBIN/hostapd + ln $LNPRG $SBIN/hostapd_cli + ln $LNPRG $SBIN/wpa_supplicant + ln $LNPRG $SBIN/wpa_cli + ln $LNPRG $SBIN/wpa_passphrase + ln $LNPRG $SBIN/wake + ln $LNPRG $SBIN/watchdog + ln $LNPRG $SBIN/watchdogd + ln $LNPRG $SBIN/inetd + ln $LNPRG $SBIN/wlandebug + ln $LNPRG $SBIN/chroot + ln $LNPRG $SBIN/i2c + ln $LNPRG $SBIN/iostat + ln $LNPRG $SBIN/jail + ln $LNPRG $SBIN/jexec + ln $LNPRG $SBIN/jls + ln $LNPRG $SBIN/ndp + ln $LNPRG $SBIN/newsyslog + ln $LNPRG $SBIN/nologin + ln $LNPRG $SBIN/pstat + ln $LNPRG $SBIN/rtadvctl + ln $LNPRG $SBIN/rtadvd + ln $LNPRG $SBIN/rtsold + ln $LNPRG $SBIN/syslogd + ln $LNPRG $SBIN/setfib + ln $LNPRG $SBIN/swapinfo + ln $LNPRG $SBIN/chgrp + + ln $LNPRG $UBIN/login + ln $LNPRG $UBIN/passwd + ln $LNPRG $UBIN/vimage + + ln $LNPRG $LIBEXEC/getty + ln $LNPRG $LIBEXEC/tftpd chown -hR root:wheel $ROOTFS