Diff for /elwix/build_rootfs.sh between versions 1.2.4.1 and 1.8.2.7

version 1.2.4.1, 2011/12/19 20:43:07 version 1.8.2.7, 2014/07/01 18:02:20
Line 30  if [ "${USER}" != "root" ]; then Line 30  if [ "${USER}" != "root" ]; then
         exit 1          exit 1
 fi  fi
   
NEWKERN="${REL}/kernel"KRNNAME="kernel_rootfs"
 NEWKERN="${REL}/${KRNNAME}"
 MKF="Makefile.elwix"
 MKH="Makefile.inc"
   
   # Set TARGET_CPUTYPE only for world compiling. Don't use this in kernel build!
   X_TARGET_CPUTYPE="TARGET_CPUTYPE=${TARGET_CPUTYPE}"
   
 clean_elwix()  clean_elwix()
 {  {
        echo "+++ Clean csh from ELWIX World ..."        echo "+++ Clean elwix binary from ELWIX World ..."
        rm -rf ${BSDOBJ}/usr/src/bin/csh/*        rm -rf $BSDOBJ/elwix
   
         echo "+++ Clean ELWIX RootFS firmware ..."          echo "+++ Clean ELWIX RootFS firmware ..."
        rm -rf $MKDIR        rm -rf $ROOTFS_MKDIR
        mkdir $MKDIR        mkdir $ROOTFS_MKDIR
   
         echo "+++ Clean RootFS directory ..."          echo "+++ Clean RootFS directory ..."
           chflags -R noschg $ROOTFS
         rm -rf $ROOTFS          rm -rf $ROOTFS
         mkdir $ROOTFS          mkdir $ROOTFS
   
Line 52  clean_elwix() Line 59  clean_elwix()
 prepare_elwix()  prepare_elwix()
 {  {
         echo "+++ Prepair ELWIX RootFS firmware ..."          echo "+++ Prepair ELWIX RootFS firmware ..."
        cd $MKDIR        cd $ROOTFS_MKDIR
         cat >$MKH <<_EOF          cat >$MKH <<_EOF
 # Auto-generated Makefile include for crungegen  # Auto-generated Makefile include for crungegen
 # !!! Dont edit by hand !!!  # !!! 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  LIBS += -L${WORLD}/lib -L${WORLD}/usr/lib
 _EOF  _EOF
         cat >$ROOTFS_CONF <<_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}/bin ${BSDSRC}/sbin ${BSDSRC}/libexec ${BSDSRC}/cddl/sbin ${BSDSRC}/sbin/ggate
#buildopts -DRESCUE CRUNCH_CFLAGS=-DRESCUE TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ}srcdirs ${BSDSRC}/usr.bin ${BSDSRC}/usr.sbin ${BSDSRC}/usr.sbin/wpa
buildopts TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} MAKEOBJDIRPREFIX=${BSDOBJ}srcdirs ${BSDSRC}/secure/usr.bin ${BSDSRC}/secure/usr.sbin ${BSDSRC}/secure/libexec
 
 buildopts TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} ${X_TARGET_CPUTYPE} __MAKE_CONF=${MAKECONF}
 buildopts -DNO_PAM -DNO_KERBEROS WITHOUT_PAM_SUPPORT=yes WITHOUT_KERBEROS_SUPPORT=yes WITHOUT_KERBEROS=yes
 buildopts -DMK_CASPER=no WITHOUT_CASPER=yes
 _EOF  _EOF
         cat $CFGDIR/$ROOTFS_CONF >>$ROOTFS_CONF          cat $CFGDIR/$ROOTFS_CONF >>$ROOTFS_CONF
   
        crunchgen -f -p $BSDOBJ -h $MKDIR/$MKH -m $MKF -c elwix.c -e elwix $ROOTFS_CONF        install -d ${BSDOBJ}/elwix
         env MAKEOBJDIRPREFIX=${BSDOBJ}/elwix crunchgen -f \
                 -h $ROOTFS_MKDIR/$MKH -m $MKF \
                 -c elwix.c -e elwix $ROOTFS_CONF
         if [ $? -ne 0 ]; then
                 exit 1
         fi
         cd -          cd -
 }  }
   
 build_elwix()  build_elwix()
 {  {
         echo "+++ Build ELWIX RootFS firmware ..."          echo "+++ Build ELWIX RootFS firmware ..."
        cd $MKDIR        cd $ROOTFS_MKDIR
        make -f $MKF clean        env MAKEOBJDIRPREFIX=${BSDOBJ}/elwix make -f $MKF \
        make -f $MKF                TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
                 ${X_TARGET_CPUTYPE} __MAKE_CONF=${MAKECONF} clean
         env MAKEOBJDIRPREFIX=${BSDOBJ}/elwix make -f $MKF \
                 TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
                 ${X_TARGET_CPUTYPE} __MAKE_CONF=${MAKECONF}
         if [ $? -ne 0 ]; then
                 exit 1
         fi
         cd -          cd -
 }  }
   
Line 92  build_rootdir() Line 115  build_rootdir()
         install -d dev;          install -d dev;
         install -d elwix;          install -d elwix;
         install -d elwix/etc;          install -d elwix/etc;
           install -d libexec;
         install -d mnt;          install -d mnt;
         install -d -m 0555 proc;          install -d -m 0555 proc;
         install -d sbin;          install -d sbin;
         install -d system;  
         install -d -m 1777 tmp;          install -d -m 1777 tmp;
         install -d usr;          install -d usr;
           install -d usr/bin;
           install -d usr/lib;
           install -d usr/libexec;
           install -d usr/sbin;
         install -d var;          install -d var;
           install -d var/sys;
   
         ln -fs /usr/lib lib;          ln -fs /usr/lib lib;
         ln -fs /usr/libexec libexec;  
   
         ln -fs /elwix/etc etc;          ln -fs /elwix/etc etc;
         ln -fs /elwix/exports exports;          ln -fs /elwix/exports exports;
Line 114  build_rootdir() Line 141  build_rootdir()
   
 install_rootfs()  install_rootfs()
 {  {
         PRG="/sbin/elwix"  
         BIN="${ROOTFS}/bin"          BIN="${ROOTFS}/bin"
         SBIN="${ROOTFS}/sbin"          SBIN="${ROOTFS}/sbin"
           UBIN="${ROOTFS}/usr/bin"
           LIBEXEC="${ROOTFS}/usr/libexec"
         ETC="${ROOTFS}/elwix/etc"          ETC="${ROOTFS}/elwix/etc"
   
           PRG="/sbin/elwix"
           LNPRG="${SBIN}/elwix"
   
         echo "+++ Install ELWIX into RootFS directory ..."          echo "+++ Install ELWIX into RootFS directory ..."
        install $MKDIR/elwix $SBIN        install $ROOTFS_MKDIR/elwix $SBIN
   
         InstallList ${ELWIX_ROOTFS} ${WORLD} ${ROOTFS}          InstallList ${ELWIX_ROOTFS} ${WORLD} ${ROOTFS}
   
         InstallDir ${ROOTFS_ETC} $ETC          InstallDir ${ROOTFS_ETC} $ETC
   
        ln -s /usr/sbin/nologin $SBIN#        ln -s /usr/sbin/nologin $SBIN
   
         ln -s $PRG $BIN/test          ln -s $PRG $BIN/test
         ln -s $PRG $BIN/\[          ln -s $PRG $BIN/\[
Line 135  install_rootfs() Line 166  install_rootfs()
         ln -s $PRG $BIN/chio          ln -s $PRG $BIN/chio
         ln -s $PRG $BIN/chmod          ln -s $PRG $BIN/chmod
         ln -s $PRG $BIN/cp          ln -s $PRG $BIN/cp
#        ln -s $PRG $BIN/csh        ln -s $PRG $BIN/csh
#        ln -s $PRG $BIN/tcsh        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/date
         ln -s $PRG $BIN/dd          ln -s $PRG $BIN/dd
         ln -s $PRG $BIN/df          ln -s $PRG $BIN/df
         ln -s $PRG $BIN/domainname          ln -s $PRG $BIN/domainname
         ln -s $PRG $BIN/echo          ln -s $PRG $BIN/echo
         ln -s $PRG $BIN/expr          ln -s $PRG $BIN/expr
         ln -s $PRG $BIN/getfacl  
         ln -s $PRG $BIN/hostname          ln -s $PRG $BIN/hostname
         ln -s $PRG $BIN/kenv          ln -s $PRG $BIN/kenv
         ln -s $PRG $BIN/kill          ln -s $PRG $BIN/kill
Line 166  install_rootfs() Line 194  install_rootfs()
         ln -s $PRG $BIN/rm          ln -s $PRG $BIN/rm
         ln -s $PRG $BIN/unlink          ln -s $PRG $BIN/unlink
         ln -s $PRG $BIN/rmdir          ln -s $PRG $BIN/rmdir
         ln -s $PRG $BIN/setfacl  
         ln -s $PRG $BIN/sleep          ln -s $PRG $BIN/sleep
         ln -s $PRG $BIN/stty          ln -s $PRG $BIN/stty
         ln -s $PRG $BIN/sync          ln -s $PRG $BIN/sync
         ln -s $PRG $BIN/uuidgen          ln -s $PRG $BIN/uuidgen
   
        ln -s $PRG $SBIN/adjkerntz        ln -s $PRG $BIN/true
        ln -s $PRG $SBIN/atacontrol        ln -s $PRG $BIN/false
        ln -s $PRG $SBIN/badsect        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/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/bsdlabel          ln -s $PRG $SBIN/bsdlabel
         ln -s $PRG $SBIN/disklabel          ln -s $PRG $SBIN/disklabel
         ln -s $PRG $SBIN/camcontrol          ln -s $PRG $SBIN/camcontrol
         ln -s $PRG $SBIN/ccdconfig  
         ln -s $PRG $SBIN/comcontrol          ln -s $PRG $SBIN/comcontrol
         ln -s $PRG $SBIN/conscontrol          ln -s $PRG $SBIN/conscontrol
         ln -s $PRG $SBIN/devfs          ln -s $PRG $SBIN/devfs
Line 186  install_rootfs() Line 258  install_rootfs()
         ln -s $PRG $SBIN/dmesg          ln -s $PRG $SBIN/dmesg
         ln -s $PRG $SBIN/dump          ln -s $PRG $SBIN/dump
         ln -s $PRG $SBIN/rdump          ln -s $PRG $SBIN/rdump
         ln -s $PRG $SBIN/dumpfs  
         ln -s $PRG $SBIN/dumpon          ln -s $PRG $SBIN/dumpon
         ln -s $PRG $SBIN/fdisk          ln -s $PRG $SBIN/fdisk
         ln -s $PRG $SBIN/ffsinfo  
         ln -s $PRG $SBIN/fsck          ln -s $PRG $SBIN/fsck
         ln -s $PRG $SBIN/fsck_ffs          ln -s $PRG $SBIN/fsck_ffs
         ln -s $PRG $SBIN/fsck_ufs          ln -s $PRG $SBIN/fsck_ufs
         ln -s $PRG $SBIN/fsck_4.2bsd          ln -s $PRG $SBIN/fsck_4.2bsd
         ln -s $PRG $SBIN/fsck_msdosfs          ln -s $PRG $SBIN/fsck_msdosfs
        ln -s $PRG $SBIN/gbde        ln -s $PRG $SBIN/etherswitchcfg
        ln -s $PRG $SBIN/ggatec 
        ln -s $PRG $SBIN/ggated 
        ln -s $PRG $SBIN/ggatel 
         ln -s $PRG $SBIN/-geom          ln -s $PRG $SBIN/-geom
         ln -s $PRG $SBIN/glabel          ln -s $PRG $SBIN/glabel
         ln -s $PRG $SBIN/gpart          ln -s $PRG $SBIN/gpart
           ln -s $PRG $SBIN/graid
         ln -s $PRG $SBIN/growfs          ln -s $PRG $SBIN/growfs
         ln -s $PRG $SBIN/hastctl          ln -s $PRG $SBIN/hastctl
         ln -s $PRG $SBIN/hastd          ln -s $PRG $SBIN/hastd
Line 227  install_rootfs() Line 295  install_rootfs()
         ln -s $PRG $SBIN/mount_cd9660          ln -s $PRG $SBIN/mount_cd9660
         ln -s $PRG $SBIN/mount_msdosfs          ln -s $PRG $SBIN/mount_msdosfs
         ln -s $PRG $SBIN/mount_nfs          ln -s $PRG $SBIN/mount_nfs
        ln -s $PRG $SBIN/mount_ntfs#        ln -s $PRG $SBIN/mount_ntfs
         ln -s $PRG $SBIN/mount_nullfs          ln -s $PRG $SBIN/mount_nullfs
         ln -s $PRG $SBIN/mount_udf          ln -s $PRG $SBIN/mount_udf
         ln -s $PRG $SBIN/mount_unionfs          ln -s $PRG $SBIN/mount_unionfs
         ln -s $PRG $SBIN/natd  
         ln -s $PRG $SBIN/newfs          ln -s $PRG $SBIN/newfs
         ln -s $PRG $SBIN/newfs_msdos          ln -s $PRG $SBIN/newfs_msdos
         ln -s $PRG $SBIN/nfsiod          ln -s $PRG $SBIN/nfsiod
         ln -s $PRG $SBIN/nos-tun          ln -s $PRG $SBIN/nos-tun
           ln -s $PRG $SBIN/nvmecontrol
         ln -s $PRG $SBIN/pfctl          ln -s $PRG $SBIN/pfctl
         ln -s $PRG $SBIN/pflogd          ln -s $PRG $SBIN/pflogd
         ln -s $PRG $SBIN/ping  
         ln -s $PRG $SBIN/ping6  
         ln -s $PRG $SBIN/quotacheck          ln -s $PRG $SBIN/quotacheck
         ln -s $PRG $SBIN/reboot          ln -s $PRG $SBIN/reboot
         ln -s $PRG $SBIN/halt          ln -s $PRG $SBIN/halt
Line 250  install_rootfs() Line 316  install_rootfs()
         ln -s $PRG $SBIN/rrestore          ln -s $PRG $SBIN/rrestore
         ln -s $PRG $SBIN/route          ln -s $PRG $SBIN/route
         ln -s $PRG $SBIN/rtsol          ln -s $PRG $SBIN/rtsol
         ln -s $PRG $SBIN/savecore  
         ln -s $PRG $SBIN/setkey  
         ln -s $PRG $SBIN/shutdown          ln -s $PRG $SBIN/shutdown
        ln -s $PRG $SBIN/spppcontrol        ln -s $PRG $SBIN/savecore
         ln -s $PRG $SBIN/swapon          ln -s $PRG $SBIN/swapon
         ln -s $PRG $SBIN/swapoff          ln -s $PRG $SBIN/swapoff
         ln -s $PRG $SBIN/swapctl          ln -s $PRG $SBIN/swapctl
Line 263  install_rootfs() Line 327  install_rootfs()
         ln -s $PRG $SBIN/zfs          ln -s $PRG $SBIN/zfs
         ln -s $PRG $SBIN/zpool          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
           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 -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          chown -hR root:wheel $ROOTFS
   
         echo "+++ ELWIX clean CVS tags ..."          echo "+++ ELWIX clean CVS tags ..."
         CleanCVS $ETC          CleanCVS $ETC
         CleanCVS $ETC/etc          CleanCVS $ETC/etc
           echo
 }  }
   
 build_image()  build_image()
Line 279  build_image() Line 389  build_image()
 install_image()  install_image()
 {  {
         echo "+++ Install ELWIX RootFS Image into kernel ..."          echo "+++ Install ELWIX RootFS Image into kernel ..."
        START=`strings -td $KERNEL | grep "MFS Filesystem" | cut -d ' ' -f 1 | head -1`        START=`strings -td $KERNEL_ROOTFS | grep "MFS Filesystem" | cut -d ' ' -f 1 | head -1`
        STOP=`strings -td $KERNEL | grep "MFS Filesystem" | cut -d ' ' -f 1 | tail -1`        STOP=`strings -td $KERNEL_ROOTFS | grep "MFS Filesystem" | cut -d ' ' -f 1 | tail -1`
         STOP=$(($STOP + 1))          STOP=$(($STOP + 1))
   
        head -c $START $KERNEL >$NEWKERN        head -c $START $KERNEL_ROOTFS >$NEWKERN
         cat $REL/$ROOTFS_IMG >>$NEWKERN          cat $REL/$ROOTFS_IMG >>$NEWKERN
        tail -c +$STOP $KERNEL >>$NEWKERN        tail -c +$STOP $KERNEL_ROOTFS >>$NEWKERN
   
         cd $REL          cd $REL
        gzip -9 kernel        gzip -9 $KRNNAME
         cd -          cd -
 }  }
   
 ### main()  ### main()
 if SnitVer ${WORLD}/elwix.ver; then  if SnitVer ${WORLD}/elwix.ver; then
         clean_elwix          clean_elwix
        prepare_elwix        prepare_elwix || exit 1
        build_elwix        build_elwix || exit 1
   
        build_rootdir        build_rootdir || exit 1
        install_rootfs        install_rootfs || exit 1
   
        build_image        build_image || exit 1
        install_image        install_image || exit 1
 else  else
        echo "Skipped ELWIX RootFS build ..."        echo "$? Skipped ELWIX RootFS build ..."
 fi  fi
   
 echo "+++ Complete build ELWIX RootFS"  echo "+++ Complete build ELWIX RootFS"

Removed from v.1.2.4.1  
changed lines
  Added in v.1.8.2.7


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>