Diff for /elwix/build_tools.sh between versions 1.3 and 1.10

version 1.3, 2013/01/28 01:47:34 version 1.10, 2021/07/16 18:35:50
Line 16  if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then Line 16  if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
         exit 1          exit 1
 fi  fi
 V=${VERSION}  V=${VERSION}
[ -r ${CENV} ] && . ${CENV}#[ -r ${CENV} ] && . ${CENV}
 unset INSTALL  unset INSTALL
 unset VERSION  unset VERSION
 VERSION="$V"  VERSION="$V"
   
   # Set TARGET_CPUTYPE only for world compiling. Don't use this in kernel build!
   X_TARGET_CPUTYPE="TARGET_CPUTYPE=${TARGET_CPUTYPE}"
   
 if [ ! -d $BSDSRC ]; then  if [ ! -d $BSDSRC ]; then
         echo          echo
         echo "ELWIX project is not configured - missing BSD sources !?!"          echo "ELWIX project is not configured - missing BSD sources !?!"
Line 37  fi Line 40  fi
   
 clean_tools()  clean_tools()
 {  {
        echo "+++ Clean ELWIX FreeBSD tools ..."        echo "+++ Clean ELWIX FreeBSD tools ... ${WORLD}/usr/local"
   
         rm -rf ${WORLD}/usr/local          rm -rf ${WORLD}/usr/local
         install -d ${WORLD}/usr/local          install -d ${WORLD}/usr/local
Line 53  clean_bootstrap() Line 56  clean_bootstrap()
 {  {
         echo "+++ Clean ELWIX pkgsrc bootstrap tools ..."          echo "+++ Clean ELWIX pkgsrc bootstrap tools ..."
   
        rm -rf ${WORLD}/usr/pkgsrc/bootstrap/work        rm -Rf ${WORLD}/usr/pkgsrc/bootstrap/work
         rm -f /elwix ${WORLD}/usr/pkgsrc          rm -f /elwix ${WORLD}/usr/pkgsrc
        rm -rf ${WORLD}/elwix        rm -Rf ${WORLD}/elwix
         install -d ${WORLD}/elwix          install -d ${WORLD}/elwix
         ln -sf ${WORLD}/elwix /elwix          ln -sf ${WORLD}/elwix /elwix
         ln -sf ${PKGSRC} ${WORLD}/usr/pkgsrc          ln -sf ${PKGSRC} ${WORLD}/usr/pkgsrc
Line 65  clean_bootstrap() Line 68  clean_bootstrap()
         install -d ${PKGDIR}/etc          install -d ${PKGDIR}/etc
 }  }
   
   compile_deps()
   {
           echo "+++ Compile ELWIX programs bootstrap tools ..."
           if [ -d tools -a -f tools/Makefile ]; then
                   cd tools
                   make cleandepend
                   make clean
                   make obj
                   make
                   make install
                   cd -
           fi
   }
   
 compile_bootstrap()  compile_bootstrap()
 {  {
         echo "+++ Compile ELWIX pkgsrc bootstrap tools ..."          echo "+++ Compile ELWIX pkgsrc bootstrap tools ..."
         if [ ! -d ${WORLD}/usr/pkgsrc/bootstrap/work ]; then          if [ ! -d ${WORLD}/usr/pkgsrc/bootstrap/work ]; then
                 cd ${WORLD}/usr/pkgsrc/bootstrap                  cd ${WORLD}/usr/pkgsrc/bootstrap
                   ./cleanup --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db 
                 ./bootstrap --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db                  ./bootstrap --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db
                 cd -                  cd -
         else          else
Line 96  USE_NATIVE_GCC=  yes Line 114  USE_NATIVE_GCC=  yes
   
 .endif                  # end cross-compilation settings  .endif                  # end cross-compilation settings
 _EOF  _EOF
   
         echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver  
 }  }
   
 compile_fbsdtools()  compile_fbsdtools()
 {  {
         echo "+++ Compile ELWIX FreeBSD tools ..."          echo "+++ Compile ELWIX FreeBSD tools ..."
   
        cd $CROSS_FT_VIMAGE        if [ "$(uname -m)" != ${TARGET} ]; then
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \                BSDSTATDIR="${BSDOBJ}/${TARGET}.${TARGET_ARCH}${BSDSRC}/lib/libbsdstat"
                clean DESTDIR=${WORLD}        else
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \                BSDSTATDIR="${BSDOBJ}${BSDSRC}/lib/libbsdstat"
                DESTDIR=${WORLD}        fi
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
        cd - 
   
         cd $CROSS_FT_ATH          cd $CROSS_FT_ATH
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                clean DESTDIR=${WORLD}#       cp ${CROSSTOOLDIR}/usr/include/private/bsdstat/bsdstat.h ${BSDTOOLS}/ath/common || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        ${CBUILD} DESTDIR=${WORLD} LIBBSDSTATDIR="${BSDSTATDIR}" || exit 1
                DESTDIR=${WORLD}        ${CBUILD} DESTDIR=${WORLD} install || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
         cd -          cd -
   
        cd $CROSS_FT_IPW#        cd $CROSS_FT_CXGB
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                clean DESTDIR=${WORLD}#       ${CBUILD} DESTDIR=${WORLD} || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
                DESTDIR=${WORLD}#        cd -
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD}/usr/local/bin 
        cd - 
   
        cd $CROSS_FT_IWI#        cd $CROSS_FT_IFINFO
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                clean DESTDIR=${WORLD}#       ${CBUILD} DESTDIR=${WORLD} || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
                DESTDIR=${WORLD}#        cd -
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD}/usr/local/bin 
        cd - 
   
        cd $CROSS_FT_MWL#        cd $CROSS_FT_MCTEST
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                clean DESTDIR=${WORLD}#       ${CBUILD} DESTDIR=${WORLD} MK_MAN="no" || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin MK_MAN="no" BINDIR="" install || exit 1
                DESTDIR=${WORLD}#        cd -
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
        cd - 
   
        cd $CROSS_FT_NET80211#        cd $CROSS_FT_NETMAP
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                clean DESTDIR=${WORLD}#       ${CBUILD} DESTDIR=${WORLD} || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
                DESTDIR=${WORLD}#        cd -
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
        cd - 
   
#       cd $CROSS_FT_WTAP#       cd $CROSS_FT_NETBLAST
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
#               clean DESTDIR=${WORLD}#       ${CBUILD} DESTDIR=${WORLD} || exit 1
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
#               DESTDIR=${WORLD} 
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
#               install DESTDIR=${WORLD} 
 #       cd -  #       cd -
   
   #       cd $CROSS_FT_NETRCV
   #       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
   #       ${CBUILD} DESTDIR=${WORLD} || exit 1
   #       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
   #       cd -
   
   #       cd $CROSS_FT_NETSND
   #       ${CBUILD} DESTDIR=${WORLD} clean || exit 1
   #       ${CBUILD} DESTDIR=${WORLD} || exit 1
   #       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
   #       cd -
 }  }
   
 compile_files()  compile_files()
 {  {
         cd files          cd files
        env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
                TARGET_ARCH=${TARGET_ARCH} clean DESTDIR=${WORLD}        ${CBUILD} DESTDIR=${WORLD} obj || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \        ${CBUILD} DESTDIR=${WORLD} depend || exit 1
                TARGET_ARCH=${TARGET_ARCH} obj depend DESTDIR=${WORLD}        ${CBUILD} DESTDIR=${WORLD} || exit 1
        env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \        ${CBUILD} DESTDIR=${WORLD} install || exit 1
                TARGET_ARCH=${TARGET_ARCH} DESTDIR=${WORLD} 
        env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \ 
                TARGET_ARCH=${TARGET_ARCH} install DESTDIR=${WORLD} 
         cd -          cd -
   
         strip -s ${WORLD}/usr/bin/csh  
 }  }
   
compile_tools()compile_sw()
 {  {
        echo "+++ Compile ELWIX Cross ..."        CROSS_OPTS=$(eval echo "\$$2_OPTS")
   
        cd $CROSS_AXL        cd $1$2
        ${AXL_CFG}        ${CEXEC} INSTALL="/usr/bin/install" ./configure $CROSS_OPTS ${CROSS_PFX}
         ${CBUILD} clean          ${CBUILD} clean
         ${CBUILD}          ${CBUILD}
         ${CBUILD} install          ${CBUILD} install
         cd -          cd -
   }
   
        cd $CROSS_ELWIXcompile_tools()
        ${ELWIX_CFG}{
        ${CBUILD} clean        echo "+++ Compile ELWIX Cross ..."
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITIO        for i in ${CROSS_TOOLS}; do
        ${AITIO_CFG}                if [ -d "${CROSS_PATH}$i" ]; then
        ${CBUILD} clean                        compile_sw ${CROSS_PATH} $i
        ${CBUILD}                else
        ${CBUILD} install                        Die "Error:: ${CROSS_PATH}$i not found!"
        cd -                fi
         done
 }
   
        cd $CROSS_AITCFGinstall_tools()
        ${AITCFG_CFG}{
        ${CBUILD} clean        LIBS="${ROMFS_USR2}/lib"
        ${CBUILD}        LIBEXEC="${ROMFS_USR2}/libexec"
        ${CBUILD} install        BIN="${ROMFS_USR2}/bin"
        cd -        SBIN="${ROMFS_USR2}/sbin"
         ETC="${ROMFS_USR2}/etc"
   
        cd $CROSS_AITSESS        echo "+++ Install ELWIX RomFS secondary firmware ... ${ROMFS_USR2}"
        ${AITSESS_CFG} 
        ${CBUILD} clean 
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITRPC        StripFiles \*.so\* ${PKG}/lib
        ${AITRPC_CFG}        InstallFiles \*.so\* ${PKG}/lib $LIBS
        ${CBUILD} clean        StripFiles \* ${PKG}/libexec
        ${CBUILD}        InstallFiles \* ${PKG}/libexec $LIBEXEC
        ${CBUILD} install        StripFiles \* ${PKG}/bin
        cd -        InstallFiles \* ${PKG}/bin $BIN
         StripFiles \* ${PKG}/sbin
         InstallFiles \* ${PKG}/sbin $SBIN
   
        cd $CROSS_AITSCHED        InstallFiles \* ${PKG}/etc $ETC
        ${AITSCHED_CFG} 
        ${CBUILD} clean 
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITWWW        chown -R root:wheel $SBIN $BIN $LIBDATA $LIBEXEC $LIBS
        ${AITWWW_CFG}}
        ${CBUILD} clean 
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITPELCObuild_tools()
        ${AITPELCO_CFG}{
        ${CBUILD} clean        echo "+++ Build ELWIX core firmware image ... ${WORLD}/usr/local --> ${REL}/${LOCALFS_IMG}"
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITSYNC        cd ${WORLD}/usr/local
        ${AITSYNC_CFG}        find . -name ".debug" -exec rm -rf {} \;
        ${CBUILD} clean        pax -w -z -v -f${REL}/${LOCALFS_IMG} .
        ${CBUILD} 
        ${CBUILD} install 
         cd -          cd -
   
        cd $CROSS_AITCLI        echo "+++ Completed ELWIX core firmware image ... ${REL}/${LOCALFS_IMG}"
        ${AITCLI_CFG}}
        ${CBUILD} clean 
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITMQTT### main()
        ${AITMQTT_CFG}if [ -n "${1}" ]; then
        ${CBUILD} clean        rm ${WORLD}/usr/local/elwix.ver
        ${CBUILD}fi
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_EMBEDTOOLSif [ "${COMPILE_DEPTOOLS}" = "YES" ]; then
        ${EMBEDTOOLS_CFG}        compile_deps || exit 1
        ${CBUILD} cleanfi
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_ANSH#if ! SnitVer ${WORLD}/elwix/elwix.ver; then
        ${ANSH_CFG}#        clean_bootstrap
        ${CBUILD} clean#       compile_bootstrap || exit 1
        ${CBUILD}#
        ${CBUILD} install#       echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver
        cd -#else
 #       echo "Skipped ELWIX bootstrap pkgsrc tools build ..."
 #fi
   
        cd $CROSS_MQTTif ! SnitVer ${WORLD}/usr/local/elwix.ver; then
        ${MQTT_CFG}        clean_tools || exit 1
        ${CBUILD} clean 
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver        compile_fbsdtools || exit 1
}        compile_files || exit 1
         compile_tools || exit 1
   
### main()        build_tools || exit 1
if ! SnitVer ${WORLD}/elwix/elwix.ver; then 
        clean_bootstrap 
        compile_bootstrap 
else 
        echo "Skipped ELWIX bootstrap pkgsrc tools build ..." 
fi 
   
if ! SnitVer ${WORLD}/usr/local/elwix.ver; then        echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver
        clean_tools 
        compile_fbsdtools 
        compile_files 
        compile_tools 
 else  else
         echo "Skipped ELWIX tools build ..."          echo "Skipped ELWIX tools build ..."
 fi  fi

Removed from v.1.3  
changed lines
  Added in v.1.10


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