File:  [ELWIX - Embedded LightWeight unIX -] / elwix / build_tools.sh
Revision 1.1.2.4: download - view: text, annotated - select for diffs - revision graph
Tue Mar 20 15:10:06 2012 UTC (12 years, 3 months ago) by misho
Branches: elwix1_6
add bootstrap pkgsrc tools

    1: #!/bin/sh
    2: #
    3: # ELWIX build script for cross
    4: #
    5: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
    6: #    by Michael Pounov <misho@elwix.org>
    7: #
    8: # $Id: build_tools.sh,v 1.1.2.4 2012/03/20 15:10:06 misho Exp $
    9: #
   10: 
   11: [ -r ./config/rc.elwix ] && . ./config/rc.elwix
   12: if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
   13: 	echo
   14: 	echo "ELWIX project is not configured !?!"
   15: 	echo
   16: 	exit 1
   17: fi
   18: [ -r ${CENV} ] && . ${CENV}
   19: 
   20: if [ ! -d $BSDSRC ]; then
   21: 	echo
   22: 	echo "ELWIX project is not configured - missing BSD sources !?!"
   23: 	echo
   24: 	exit 1
   25: fi
   26: 
   27: if [ ! -d $DEST ]; then
   28: 	echo
   29: 	echo "ELWIX project is not configured - missing Dest directory !?!"
   30: 	echo
   31: 	exit 1
   32: fi
   33: 
   34: clean_tools()
   35: {
   36: 	echo "+++ Clean ELWIX FreeBSD tools ..."
   37: 
   38: 	rm -rf ${WORLD}/usr/local
   39: 	install -d ${WORLD}/usr/local
   40: 	install -d ${WORLD}/usr/local/bin
   41: 	install -d ${WORLD}/usr/local/include
   42: 	install -d ${WORLD}/usr/local/lib
   43: 	install -d ${WORLD}/usr/local/libdata
   44: 	install -d ${WORLD}/usr/local/sbin
   45: 
   46: }
   47: 
   48: clean_bootstrap()
   49: {
   50: 	echo "+++ Clean ELWIX pkgsrc bootstrap tools ..."
   51: 
   52: 	rm -rf ${WORLD}/usr/pkgsrc/bootstrap/work
   53: 	rm -f /elwix ${WORLD}/usr/pkgsrc
   54: 	rm -rf ${WORLD}/elwix
   55: 	install -d ${WORLD}/elwix
   56: 	ln -sf ${WORLD}/elwix /elwix
   57: 	ln -sf ${PKGSRC} ${WORLD}/usr/pkgsrc
   58: 
   59: 	install -d ${PKGDIR}
   60: 	install -d ${PKGDIR}/db
   61: }
   62: 
   63: compile_bootstrap()
   64: {
   65: 	echo "+++ Compile ELWIX pkgsrc bootstrap tools ..."
   66: 	if [ ! -d ${WORLD}/usr/pkgsrc/bootstrap/work ]; then
   67: 		cd ${WORLD}/usr/pkgsrc/bootstrap
   68: 		./bootstrap --prefix /elwix/pkg --pkgdbdir /elwix/pkg/db
   69: 		cd -
   70: 	else
   71: 		echo " Skip bootstrap pkgsrc - already inited pkgsrc"
   72: 	fi
   73: 
   74: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/elwix/elwix.ver
   75: }
   76: 
   77: compile_fbsdtools()
   78: {
   79: 	echo "+++ Compile ELWIX FreeBSD tools ..."
   80: 
   81: 	cd $CROSS_FT_ATH
   82: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   83: 		clean DESTDIR=${WORLD}
   84: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   85: 		DESTDIR=${WORLD}
   86: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   87: 		install DESTDIR=${WORLD}
   88: 	cd -
   89: 
   90: 	cd $CROSS_FT_IPW
   91: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   92: 		clean DESTDIR=${WORLD}
   93: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   94: 		DESTDIR=${WORLD}
   95: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   96: 		install DESTDIR=${WORLD}/usr/local/bin
   97: 	cd -
   98: 
   99: 	cd $CROSS_FT_IWI
  100: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  101: 		clean DESTDIR=${WORLD}
  102: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  103: 		DESTDIR=${WORLD}
  104: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  105: 		install DESTDIR=${WORLD}/usr/local/bin
  106: 	cd -
  107: 
  108: 	cd $CROSS_FT_MWL
  109: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  110: 		clean DESTDIR=${WORLD}
  111: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  112: 		DESTDIR=${WORLD}
  113: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  114: 		install DESTDIR=${WORLD}
  115: 	cd -
  116: 
  117: 	cd $CROSS_FT_NET80211
  118: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  119: 		clean DESTDIR=${WORLD}
  120: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  121: 		DESTDIR=${WORLD}
  122: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  123: 		install DESTDIR=${WORLD}
  124: 	cd -
  125: 
  126: 	cd $CROSS_FT_VIMAGE
  127: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  128: 		clean DESTDIR=${WORLD}
  129: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  130: 		DESTDIR=${WORLD}
  131: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  132: 		install DESTDIR=${WORLD}
  133: 	cd -
  134: 
  135: #	cd $CROSS_FT_WTAP
  136: #	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  137: #		clean DESTDIR=${WORLD}
  138: #	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  139: #		DESTDIR=${WORLD}
  140: #	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  141: #		install DESTDIR=${WORLD}
  142: #	cd -
  143: }
  144: 
  145: compile_tools()
  146: {
  147: 	echo "+++ Compile ELWIX Cross ..."
  148: 
  149: 	unset INSTALL
  150: 
  151: 	cd $CROSS_AXL
  152: 	${AXL_CFG}
  153: 	${CBUILD} clean
  154: 	${CBUILD}
  155: 	${CBUILD} install
  156: 	cd -
  157: 
  158: 	cd $CROSS_AITIO
  159: 	${AITIO_CFG}
  160: 	${CBUILD} clean
  161: 	${CBUILD}
  162: 	${CBUILD} install
  163: 	cd -
  164: 
  165: 	cd $CROSS_AITCRC
  166: 	${AITCRC_CFG}
  167: 	${CBUILD} clean
  168: 	${CBUILD}
  169: 	${CBUILD} install
  170: 	cd -
  171: 
  172: 	cd $CROSS_AITCFG
  173: 	${AITCFG_CFG}
  174: 	${CBUILD} clean
  175: 	${CBUILD}
  176: 	${CBUILD} install
  177: 	cd -
  178: 
  179: 	cd $CROSS_AITSESS
  180: 	${AITSESS_CFG}
  181: 	${CBUILD} clean
  182: 	${CBUILD}
  183: 	${CBUILD} install
  184: 	cd -
  185: 
  186: 	cd $CROSS_AITRPC
  187: 	${AITRPC_CFG}
  188: 	${CBUILD} clean
  189: 	${CBUILD}
  190: 	${CBUILD} install
  191: 	cd -
  192: 
  193: 	cd $CROSS_AITSCHED
  194: 	${AITSCHED_CFG}
  195: 	${CBUILD} clean
  196: 	${CBUILD}
  197: 	${CBUILD} install
  198: 	cd -
  199: 
  200: 	cd $CROSS_AITWWW
  201: 	${AITWWW_CFG}
  202: 	${CBUILD} clean
  203: 	${CBUILD}
  204: 	${CBUILD} install
  205: 	cd -
  206: 
  207: 	cd $CROSS_AITPELCO
  208: 	${AITPELCO_CFG}
  209: 	${CBUILD} clean
  210: 	${CBUILD}
  211: 	${CBUILD} install
  212: 	cd -
  213: 
  214: 	cd $CROSS_AITPWD
  215: 	${AITPWD_CFG}
  216: 	${CBUILD} clean
  217: 	${CBUILD}
  218: 	${CBUILD} install
  219: 	cd -
  220: 
  221: 	cd $CROSS_AITSYNC
  222: 	${AITSYNC_CFG}
  223: 	${CBUILD} clean
  224: 	${CBUILD}
  225: 	${CBUILD} install
  226: 	cd -
  227: 
  228: 	cd $CROSS_AITCLI
  229: 	${AITCLI_CFG}
  230: 	${CBUILD} clean
  231: 	${CBUILD}
  232: 	${CBUILD} install
  233: 	cd -
  234: 
  235: 	cd $CROSS_AITMQTT
  236: 	${AITMQTT_CFG}
  237: 	${CBUILD} clean
  238: 	${CBUILD}
  239: 	${CBUILD} install
  240: 	cd -
  241: 
  242: 	cd $CROSS_EMBEDTOOLS
  243: 	${EMBEDTOOLS_CFG}
  244: 	${CBUILD} clean
  245: 	${CBUILD}
  246: 	${CBUILD} install
  247: 	cd -
  248: 
  249: 	cd $CROSS_ANSH
  250: 	${ANSH_CFG}
  251: 	${CBUILD} clean
  252: 	${CBUILD}
  253: 	${CBUILD} install
  254: 	cd -
  255: 
  256: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${WORLD}/usr/local/elwix.ver
  257: }
  258: 
  259: ### main()
  260: if SnitVer ${WORLD}/elwix/elwix.ver; then
  261: 	clean_bootstrap
  262: 	compile_bootstrap
  263: else
  264: 	echo "Skipped ELWIX bootstrap pkgsrc tools build ..."
  265: fi
  266: 
  267: if SnitVer ${WORLD}/usr/local/elwix.ver; then
  268: 	clean_tools
  269: 	compile_fbsdtools
  270: 	compile_tools
  271: else
  272: 	echo "Skipped ELWIX tools build ..."
  273: fi
  274: 
  275: echo "+++ Complete build ELWIX tools"

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