Diff for /elwix/build_tools.sh between versions 1.1.2.3 and 1.8.2.5

version 1.1.2.3, 2012/03/10 15:42:28 version 1.8.2.5, 2018/07/06 00:23:20
Line 1 Line 1
 #!/bin/sh  #!/bin/sh
 #  #
# ELWIX build script for cross# ELWIX build script for tools
 #  #
 # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>  # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
 #    by Michael Pounov <misho@elwix.org>  #    by Michael Pounov <misho@elwix.org>
Line 15  if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then Line 15  if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
         echo          echo
         exit 1          exit 1
 fi  fi
   V=${VERSION}
   #[ -r ${CENV} ] && . ${CENV}
   unset INSTALL
   unset VERSION
   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 32  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 44  clean_tools() Line 52  clean_tools()
   
 }  }
   
compile_fbsdtools()clean_bootstrap()
 {  {
        echo "+++ Compile ELWIX FreeBSD tools ..."        echo "+++ Clean ELWIX pkgsrc bootstrap tools ..."
   
        cd $CROSS_FT_ATH        rm -Rf ${WORLD}/usr/pkgsrc/bootstrap/work
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        rm -f /elwix ${WORLD}/usr/pkgsrc
                clean DESTDIR=${WORLD}        rm -Rf ${WORLD}/elwix
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        install -d ${WORLD}/elwix
                DESTDIR=${WORLD}        ln -sf ${WORLD}/elwix /elwix
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        ln -sf ${PKGSRC} ${WORLD}/usr/pkgsrc
                install DESTDIR=${WORLD} 
        cd - 
   
        cd $CROSS_FT_IPW        install -d ${PKGDIR}
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        install -d ${PKGDIR}/db
                clean DESTDIR=${WORLD}        install -d ${PKGDIR}/etc
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \}
                DESTDIR=${WORLD} 
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD}/usr/local/bin 
        cd - 
   
        cd $CROSS_FT_IWIcompile_deps()
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \{
                clean DESTDIR=${WORLD}        echo "+++ Compile ELWIX programs bootstrap tools ..."
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        if [ -d tools -a -f tools/Makefile ]; then
                DESTDIR=${WORLD}                cd tools
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \                make cleandepend
                install DESTDIR=${WORLD}/usr/local/bin                make clean
        cd -                make obj
                 make
                 make install
                 cd -
         fi
 }
   
        cd $CROSS_FT_MWLcompile_bootstrap()
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \{
                clean DESTDIR=${WORLD}        echo "+++ Compile ELWIX pkgsrc bootstrap tools ..."
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \        if [ ! -d ${WORLD}/usr/pkgsrc/bootstrap/work ]; then
                DESTDIR=${WORLD}                cd ${WORLD}/usr/pkgsrc/bootstrap
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \                ./cleanup --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db 
                install DESTDIR=${WORLD}                ./bootstrap --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db
        cd -                cd -
         else
                 echo " Skip bootstrap pkgsrc - already inited pkgsrc"
         fi
   
        cd $CROSS_FT_NET80211        cat >>/elwix/pkg/etc/mk.conf << _EOF
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                clean DESTDIR=${WORLD} 
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                DESTDIR=${WORLD} 
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
        cd - 
   
        cd $CROSS_FT_VIMAGE.if defined(USE_CROSS_COMPILE) && !empty(USE_CROSS_COMPILE:M[yY][eE][sS])
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \USE_DESTDIR=                yes
                clean DESTDIR=${WORLD}DEPENDS_TARGET=         package-install
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                DESTDIR=${WORLD} 
        env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ 
                install DESTDIR=${WORLD} 
        cd - 
   
#       cd $CROSS_FT_WTAPTOOLDIR=                ${CROSSTOOLDIR}
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \CROSS_DESTDIR=                ${WORLD}
#               clean DESTDIR=${WORLD}
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \TARGET=                 ${TARGET}
#               DESTDIR=${WORLD}TARGET_ARCH=            ${TARGET_ARCH}
#       env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \MACHINE_PLATFORM=       FreeBSD-${PLATFORM}-${TARGET_ARCH}
#               install DESTDIR=${WORLD}MACHINE_GNU_PLATFORM=        ${TARGET_ARCH}-elwix-freebsd
#       cd -
 PKGSRC_COMPILER=        gcc
 USE_PKGSRC_GCC=         no
 USE_NATIVE_GCC=         yes
 
 .endif                  # end cross-compilation settings
 _EOF
 }  }
   
compile_tools()compile_fbsdtools()
 {  {
        echo "+++ Compile ELWIX Cross ..."        echo "+++ Compile ELWIX FreeBSD tools ..."
   
        cd $CROSS_AXL        if [ "$(uname -m)" != ${TARGET} ]; then
        ${AXL_CFG}                BSDSTATDIR="${BSDOBJ}/${TARGET}.${TARGET_ARCH}${BSDSRC}/lib/libbsdstat"
        ${CBUILD} clean        else
        ${CBUILD}                BSDSTATDIR="${BSDOBJ}${BSDSRC}/lib/libbsdstat"
        ${CBUILD} install        fi
        cd - 
   
        cd $CROSS_AITIO        cd $CROSS_FT_ATH
        ${AITIO_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean#       cp ${CROSSTOOLDIR}/usr/include/private/bsdstat/bsdstat.h ${BSDTOOLS}/ath/common || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD} LIBBSDSTATDIR="${BSDSTATDIR}" || exit 1
        ${CBUILD} install        ${CBUILD} DESTDIR=${WORLD} install || exit 1
         cd -          cd -
   
        cd $CROSS_AITCRC        cd $CROSS_FT_CXGB
        ${AITCRC_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install 
         cd -          cd -
   
        cd $CROSS_AITCFG        cd $CROSS_FT_IFINFO
        ${AITCFG_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install 
         cd -          cd -
   
        cd $CROSS_AITSESS#        cd $CROSS_FT_MCTEST
        ${AITSESS_CFG}#        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean#        ${CBUILD} DESTDIR=${WORLD} MK_MAN="no" || exit 1
        ${CBUILD}#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin MK_MAN="no" BINDIR="" install || exit 1
        ${CBUILD} install#        cd -
        cd - 
   
        cd $CROSS_AITRPC#        cd $CROSS_FT_NETMAP
        ${AITRPC_CFG}#        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean#        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}#       ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install#        cd -
        cd - 
   
        cd $CROSS_AITSCHED        cd $CROSS_FT_NETBLAST
        ${AITSCHED_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install 
         cd -          cd -
   
        cd $CROSS_AITWWW        cd $CROSS_FT_NETRCV
        ${AITWWW_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install 
         cd -          cd -
   
        cd $CROSS_AITPELCO        cd $CROSS_FT_NETSND
        ${AITPELCO_CFG}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} clean        ${CBUILD} DESTDIR=${WORLD} || exit 1
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD}/usr/local/bin BINDIR="" install || exit 1
        ${CBUILD} install 
         cd -          cd -
   }
   
        cd $CROSS_AITPWDcompile_files()
        ${AITPWD_CFG}{
        ${CBUILD} clean        cd files
        ${CBUILD}        ${CBUILD} DESTDIR=${WORLD} clean || exit 1
        ${CBUILD} install        ${CBUILD} DESTDIR=${WORLD} obj || exit 1
         ${CBUILD} DESTDIR=${WORLD} depend || exit 1
         ${CBUILD} DESTDIR=${WORLD} || exit 1
         ${CBUILD} DESTDIR=${WORLD} install || exit 1
         cd -          cd -
   }
   
        cd $CROSS_AITSYNCcompile_sw()
        ${AITSYNC_CFG}{
        ${CBUILD} clean        CROSS_OPTS=$(eval echo "\$$2_OPTS")
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_AITCLI        cd $1$2
        ${AITCLI_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_AITMQTTcompile_tools()
        ${AITMQTT_CFG}{
        ${CBUILD} clean        echo "+++ Compile ELWIX Cross ..."
        ${CBUILD} 
        ${CBUILD} install 
        cd - 
   
        cd $CROSS_EMBEDTOOLS        for i in ${CROSS_TOOLS}; do
        ${EMBEDTOOLS_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_ANSHinstall_tools()
        ${ANSH_CFG}{
        ${CBUILD} clean        LIBS="${ROMFS_USR2}/lib"
        ${CBUILD}        LIBEXEC="${ROMFS_USR2}/libexec"
        ${CBUILD} install        BIN="${ROMFS_USR2}/bin"
         SBIN="${ROMFS_USR2}/sbin"
         ETC="${ROMFS_USR2}/etc"
 
         echo "+++ Install ELWIX RomFS secondary firmware ... ${ROMFS_USR2}"
 
         StripFiles \*.so\* ${PKG}/lib
         InstallFiles \*.so\* ${PKG}/lib $LIBS
         StripFiles \* ${PKG}/libexec
         InstallFiles \* ${PKG}/libexec $LIBEXEC
         StripFiles \* ${PKG}/bin
         InstallFiles \* ${PKG}/bin $BIN
         StripFiles \* ${PKG}/sbin
         InstallFiles \* ${PKG}/sbin $SBIN
 
         InstallFiles \* ${PKG}/etc $ETC
 
         chown -R root:wheel $SBIN $BIN $LIBDATA $LIBEXEC $LIBS
 }
 
 build_tools()
 {
         echo "+++ Build ELWIX core firmware image ... ${WORLD}/usr/local --> ${REL}/${LOCALFS_IMG}"
 
         cd ${WORLD}/usr/local
         find . -name ".debug" -exec rm -rf {} \;
         pax -w -z -v -f${REL}/${LOCALFS_IMG} .
         cd -          cd -
   
        echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver        echo "+++ Completed ELWIX core firmware image ... ${REL}/${LOCALFS_IMG}"
 }  }
   
 ### main()  ### main()
   if [ -n "${1}" ]; then
           rm ${WORLD}/usr/local/elwix.ver
   fi
   
   if [ "${COMPILE_DEPTOOLS}" = "YES" ]; then
           compile_deps || exit 1
   fi
   
   #if ! SnitVer ${WORLD}/elwix/elwix.ver; then
   #       clean_bootstrap
   #       compile_bootstrap || exit 1
   #
   #       echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver
   #else
   #       echo "Skipped ELWIX bootstrap pkgsrc tools build ..."
   #fi
   
 if ! SnitVer ${WORLD}/usr/local/elwix.ver; then  if ! SnitVer ${WORLD}/usr/local/elwix.ver; then
        clean_tools        clean_tools || exit 1
        compile_fbsdtools
        compile_tools        compile_fbsdtools || exit 1
         compile_files || exit 1
         compile_tools || exit 1
 
         build_tools || exit 1
 
         echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver
 else  else
         echo "Skipped ELWIX tools build ..."          echo "Skipped ELWIX tools build ..."
 fi  fi

Removed from v.1.1.2.3  
changed lines
  Added in v.1.8.2.5


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