--- elwix/build_world.sh 2011/07/05 23:43:00 1.1 +++ elwix/build_world.sh 2012/10/12 08:22:43 1.2 @@ -5,7 +5,7 @@ # (C) AITNET ltd - Sofia/Bulgaria # by Michael Pounov # -# $Id: build_world.sh,v 1.1 2011/07/05 23:43:00 misho Exp $ +# $Id: build_world.sh,v 1.2 2012/10/12 08:22:43 misho Exp $ # [ -r ./config/rc.elwix ] && . ./config/rc.elwix @@ -42,6 +42,8 @@ clean_world() echo "+++ Clean ELWIX World ..." rm -rf $WORLD mkdir -p $WORLD + + rm -f ${CBUILD} ${CGBUILD} ${CENV} } build_world() @@ -50,7 +52,11 @@ build_world() cd $BSDSRC env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ -j${PARALLEL_BUILD} buildworld DESTDIR=${WORLD} - cd - + if [ $? -eq 0 ]; then + cd - + else + exit 1 + fi } install_world() @@ -61,17 +67,53 @@ install_world() installworld DESTDIR=${WORLD} cd - - echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix.ver + if [ $? -eq 0 ]; then + echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix.ver + fi } +build_cross() +{ + echo "+++ Build ELWIX Cross script ..." + cd $BSDSRC + cat >${CENV} <<_EOF +#!/bin/sh +# +# Create auto cross build env script +# +export \\ +_EOF + env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ + buildenvvars >> ${CENV} + cat >>${CENV} <<_EOF +PATH=$WORLD/elwix/pkg/bin:$WORLD/elwix/pkg/sbin:/elwix/pkg/bin:/elwix/pkg/sbin:$PKG/bin:$PKG/sbin:\$PATH:$PATH +_EOF + cd - + cp ${CENV} ${CBUILD} + cp ${CENV} ${CGBUILD} + cp ${CENV} ${CEXEC} + cat >>${CBUILD} <<_EOF +make \$* +_EOF + cat >>${CGBUILD} <<_EOF +gmake \$* +_EOF + cat >>${CEXEC} <<_EOF +eval \$* +_EOF + chmod +x ${CBUILD} ${CGBUILD} ${CEXEC} ${CENV} + echo "Done." +} + ### main() if ! SnitVer ${WORLD}/elwix.ver; then clean_world build_world install_world + + build_cross else echo "Skipped ELWIX World build ..." fi - echo "+++ Complete build ELWIX World"