--- elwix/build_tools.sh 2013/05/22 15:29:14 1.5.4.3 +++ elwix/build_tools.sh 2014/02/21 09:16:30 1.6.6.8 @@ -5,7 +5,7 @@ # (C) AITNET ltd - Sofia/Bulgaria # by Michael Pounov # -# $Id: build_tools.sh,v 1.5.4.3 2013/05/22 15:29:14 misho Exp $ +# $Id: build_tools.sh,v 1.6.6.8 2014/02/21 09:16:30 misho Exp $ # [ -r ./config/rc.elwix ] && . ./config/rc.elwix @@ -15,7 +15,15 @@ if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then echo exit 1 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 echo echo "ELWIX project is not configured - missing BSD sources !?!" @@ -63,13 +71,15 @@ clean_bootstrap() compile_deps() { echo "+++ Compile ELWIX programs bootstrap tools ..." - cd tools - make cleandepend - make clean - make obj - make - make install - cd - + if [ -d tools -a -f tools/Makefile ]; then + cd tools + make cleandepend + make clean + make obj + make + make install + cd - + fi } compile_bootstrap() @@ -104,8 +114,6 @@ USE_NATIVE_GCC= yes .endif # end cross-compilation settings _EOF - - echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver } compile_fbsdtools() @@ -113,98 +121,67 @@ compile_fbsdtools() echo "+++ Compile ELWIX FreeBSD tools ..." cd $CROSS_FT_VIMAGE - 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} + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD} install cd - cd $CROSS_FT_ATH - 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} + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD} install cd - cd $CROSS_FT_IPW - 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}/usr/local/bin + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD}/usr/local/bin install cd - cd $CROSS_FT_IWI - 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}/usr/local/bin + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD}/usr/local/bin install cd - cd $CROSS_FT_MWL - 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} + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD} install cd - - - cd $CROSS_FT_NET80211 - 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_WTAP -# 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 - } compile_files() { cd files - env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \ - TARGET_ARCH=${TARGET_ARCH} clean DESTDIR=${WORLD} - env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \ - TARGET_ARCH=${TARGET_ARCH} obj depend DESTDIR=${WORLD} - env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \ - TARGET_ARCH=${TARGET_ARCH} DESTDIR=${WORLD} - env MAKEOBJDIRPREFIX=${BSDOBJ} BSDSRC=${BSDSRC} make TARGET=${TARGET} \ - TARGET_ARCH=${TARGET_ARCH} install DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD} clean + ${CBUILD} DESTDIR=${WORLD} obj + ${CBUILD} DESTDIR=${WORLD} depend + ${CBUILD} DESTDIR=${WORLD} + ${CBUILD} DESTDIR=${WORLD} install cd - - - strip -s ${WORLD}/usr/bin/csh } compile_tools() { echo "+++ Compile ELWIX Cross ..." - cd $CROSS_AXL - ${AXL_CFG} +# cd $CROSS_AXL +# ${AXL_CFG} +# ${CBUILD} clean +# ${CBUILD} +# ${CBUILD} install +# cd - + + cd $CROSS_ELWIX + ${ELWIX_CFG} ${CBUILD} clean ${CBUILD} ${CBUILD} install cd - - cd $CROSS_ELWIX - ${ELWIX_CFG} + cd $CROSS_AITSCHED + ${AITSCHED_CFG} ${CBUILD} clean ${CBUILD} ${CBUILD} install @@ -224,13 +201,6 @@ compile_tools() ${CBUILD} install cd - - cd $CROSS_AITSCHED - ${AITSCHED_CFG} - ${CBUILD} clean - ${CBUILD} - ${CBUILD} install - cd - - cd $CROSS_AITRPC ${AITRPC_CFG} ${CBUILD} clean @@ -294,29 +264,76 @@ compile_tools() ${CBUILD} install cd - - echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver + cd $CROSS_WIFINATOR + ${WIFINATOR_CFG} + ${CBUILD} clean + ${CBUILD} + ${CBUILD} install + cd - + + cd $CROSS_TFTPD + ${TFTPD_CFG} + ${CBUILD} clean + ${CBUILD} + ${CBUILD} install + cd - } +install_tools() +{ + LIBS="${ROMFS_USR2}/lib" + LIBEXEC="${ROMFS_USR2}/libexec" + BIN="${ROMFS_USR2}/bin" + SBIN="${ROMFS_USR2}/sbin" + ETC="${ROMFS_USR2}/etc" + + echo "+++ Install ELWIX RomFS secondary firmware ..." + + 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 ..." + + cd ${WORLD}/usr/local + pax -w -z -v -f${REL}/${LOCALFS_IMG} . + cd - +} + ### main() -if ! SnitVer ${WORLD}/elwix/elwix.ver; then - compile_deps || exit 1 +compile_deps || exit 1 + +#if ! SnitVer ${WORLD}/elwix/elwix.ver; then # clean_bootstrap # compile_bootstrap || exit 1 -else - echo "Skipped ELWIX bootstrap pkgsrc tools build ..." -fi +# +# echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver +#else +# echo "Skipped ELWIX bootstrap pkgsrc tools build ..." +#fi -V=${VERSION} -[ -r ${CENV} ] && . ${CENV} -unset INSTALL -unset VERSION -VERSION="$V" - if ! SnitVer ${WORLD}/usr/local/elwix.ver; then clean_tools + compile_fbsdtools compile_files compile_tools + + build_tools + + echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver else echo "Skipped ELWIX tools build ..." fi