File:  [ELWIX - Embedded LightWeight unIX -] / elwix / Attic / build_cross.sh
Revision 1.1.1.1.2.9: download - view: text, annotated - select for diffs - revision graph
Sat Sep 17 10:39:47 2011 UTC (12 years, 9 months ago) by misho
Branches: elwix1_4
Diff to: branchpoint 1.1.1.1: preferred, unified
added new lib aitsched to build script

    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_cross.sh,v 1.1.1.1.2.9 2011/09/17 10:39:47 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: 
   19: if [ ! -d $BSDSRC ]; then
   20: 	echo
   21: 	echo "ELWIX project is not configured - missing BSD sources !?!"
   22: 	echo
   23: 	exit 1
   24: fi
   25: 
   26: if [ ! -d $DEST ]; then
   27: 	echo
   28: 	echo "ELWIX project is not configured - missing Dest directory !?!"
   29: 	echo
   30: 	exit 1
   31: fi
   32: 
   33: clean_cross()
   34: {
   35: 	echo "+++ Clean ELWIX Cross script ..."
   36: 	rm -f ${CBUILD}
   37: 
   38: 	rm -rf ${PKG}
   39: 	install -d ${PKG}
   40: 	install -d ${PKG}/bin
   41: 	install -d ${PKG}/etc
   42: 	install -d ${PKG}/include
   43: 	install -d ${PKG}/man
   44: 	install -d ${PKG}/lib
   45: 	install -d ${PKG}/libexec
   46: 	install -d ${PKG}/sbin
   47: }
   48: 
   49: build_cross()
   50: {
   51: 	echo "+++ Build ELWIX Cross script ..."
   52: 	cd $BSDSRC
   53: 	cat >${CBUILD} <<_EOF
   54: #!/bin/sh
   55: #
   56: # Create auto cross build env script
   57: #
   58: _EOF
   59: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   60: 		buildenvvars >> ${DEST}/cross_build.sh
   61: 	cd -
   62: 	cp ${CBUILD} ${CGBUILD}
   63: 	cat >>${CBUILD} <<_EOF
   64: PATH=$PATH:/usr/local/bin:/usr/local/sbin
   65: make \$*
   66: _EOF
   67: 	cat >>${CGBUILD} <<_EOF
   68: PATH=$PATH:/usr/local/bin:/usr/local/sbin
   69: /usr/local/bin/gmake \$*
   70: _EOF
   71: 
   72: 	chmod +x ${CBUILD} ${CGBUILD}
   73: 	echo "Done."
   74: }
   75: 
   76: compile_fbsdtools()
   77: {
   78: 	echo "+++ Compile ELWIX Cross FreeBSD tools ..."
   79: 
   80: 	rm -rf ${WORLD}/usr/local
   81: 	install -d ${WORLD}/usr/local
   82: 	install -d ${WORLD}/usr/local/bin
   83: 	install -d ${WORLD}/usr/local/sbin
   84: 	install -d ${WORLD}/usr/local/lib
   85: 	install -d ${WORLD}/usr/local/libdata
   86: 
   87: 	cd $CROSS_FT_ATH
   88: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   89: 		clean DESTDIR=${WORLD}
   90: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   91: 		DESTDIR=${WORLD}
   92: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   93: 		install DESTDIR=${WORLD}
   94: 	cd -
   95: 
   96: 	cd $CROSS_FT_IPW
   97: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   98: 		clean DESTDIR=${WORLD}
   99: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  100: 		DESTDIR=${WORLD}
  101: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  102: 		install DESTDIR=${WORLD}/usr/local/bin
  103: 	cd -
  104: 
  105: 	cd $CROSS_FT_IWI
  106: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  107: 		clean DESTDIR=${WORLD}
  108: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  109: 		DESTDIR=${WORLD}
  110: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  111: 		install DESTDIR=${WORLD}/usr/local/bin
  112: 	cd -
  113: 
  114: 	cd $CROSS_FT_MWL
  115: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  116: 		clean DESTDIR=${WORLD}
  117: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  118: 		DESTDIR=${WORLD}
  119: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  120: 		install DESTDIR=${WORLD}
  121: 	cd -
  122: 
  123: 	cd $CROSS_FT_NET80211
  124: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  125: 		clean DESTDIR=${WORLD}
  126: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  127: 		DESTDIR=${WORLD}
  128: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  129: 		install DESTDIR=${WORLD}
  130: 	cd -
  131: 
  132: 	cd $CROSS_FT_VIMAGE
  133: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  134: 		clean DESTDIR=${WORLD}
  135: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  136: 		DESTDIR=${WORLD}
  137: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  138: 		install DESTDIR=${WORLD}
  139: 	cd -
  140: 
  141: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix0.ver
  142: }
  143: 
  144: compile_cross()
  145: {
  146: 	echo "+++ Compile ELWIX Cross ..."
  147: 	cd $CROSS_AXL
  148: 	${AXL_CFG}
  149: 	${CBUILD} clean
  150: 	${CBUILD}
  151: 	${CBUILD} install
  152: 	cd -
  153: 
  154: 	cd $CROSS_AITIO
  155: 	${AITIO_CFG}
  156: 	${CBUILD} clean
  157: 	${CBUILD}
  158: 	${CBUILD} install
  159: 	cd -
  160: 
  161: 	cd $CROSS_AITCRC
  162: 	${AITCRC_CFG}
  163: 	${CBUILD} clean
  164: 	${CBUILD}
  165: 	${CBUILD} install
  166: 	cd -
  167: 
  168: 	cd $CROSS_AITCFG
  169: 	${AITCFG_CFG}
  170: 	${CBUILD} clean
  171: 	${CBUILD}
  172: 	${CBUILD} install
  173: 	cd -
  174: 
  175: 	cd $CROSS_AITSESS
  176: 	${AITSESS_CFG}
  177: 	${CBUILD} clean
  178: 	${CBUILD}
  179: 	${CBUILD} install
  180: 	cd -
  181: 
  182: 	cd $CROSS_AITRPC
  183: 	${AITRPC_CFG}
  184: 	${CBUILD} clean
  185: 	${CBUILD}
  186: 	${CBUILD} install
  187: 	cd -
  188: 
  189: 	cd $CROSS_AITSCHED
  190: 	${AITSCHED_CFG}
  191: 	${CBUILD} clean
  192: 	${CBUILD}
  193: 	${CBUILD} install
  194: 	cd -
  195: 
  196: 	cd $CROSS_AITPELCO
  197: 	${AITPELCO_CFG}
  198: 	${CBUILD} clean
  199: 	${CBUILD}
  200: 	${CBUILD} install
  201: 	cd -
  202: 
  203: 	cd $CROSS_AITPWD
  204: 	${AITPWD_CFG}
  205: 	${CBUILD} clean
  206: 	${CBUILD}
  207: 	${CBUILD} install
  208: 	cd -
  209: 
  210: 	cd $CROSS_AITSYNC
  211: 	${AITSYNC_CFG}
  212: 	${CBUILD} clean
  213: 	${CBUILD}
  214: 	${CBUILD} install
  215: 	cd -
  216: 
  217: 	cd $CROSS_AITCLI
  218: 	${AITCLI_CFG}
  219: 	${CBUILD} clean
  220: 	${CBUILD}
  221: 	${CBUILD} install
  222: 	cd -
  223: 
  224: 	cd $CROSS_EMBEDTOOLS
  225: 	${EMBEDTOOLS_CFG}
  226: 	${CBUILD} clean
  227: 	${CBUILD}
  228: 	${CBUILD} install
  229: 	cd -
  230: 
  231: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
  232: }
  233: 
  234: compile_3th()
  235: {
  236: 	echo "+++ Compile ELWIX 3th party ..."
  237: 
  238: 	cd $CROSS_3TH
  239: 	./build.sh libevent ${CBUILD} ${PKG}
  240: 	[ $? -ne 0 ] && exit 1
  241: 	./build.sh lzo ${CBUILD} ${PKG}
  242: 	[ $? -ne 0 ] && exit 1
  243: 	./build.sh libiconv ${CGBUILD} ${PKG}
  244: 	[ $? -ne 0 ] && exit 1
  245: 	./build.sh pcre ${CBUILD} ${PKG}
  246: 	[ $? -ne 0 ] && exit 1
  247: 	./build.sh mini_sendmail ${CBUILD} ${PKG}
  248: 	[ $? -ne 0 ] && exit 1
  249: 	./build.sh choparp ${CBUILD} ${PKG}
  250: 	[ $? -ne 0 ] && exit 1
  251: 	./build.sh scan_ffs ${CBUILD} ${PKG}
  252: 	[ $? -ne 0 ] && exit 1
  253: 	./build.sh pciutils ${CGBUILD} ${PKG}
  254: 	[ $? -ne 0 ] && exit 1
  255: 	./build.sh rsync ${CBUILD} ${PKG}
  256: 	[ $? -ne 0 ] && exit 1
  257: 	./build.sh ttcp ${CBUILD} ${PKG}
  258: 	[ $? -ne 0 ] && exit 1
  259: 	./build.sh ifstated ${CBUILD} ${PKG}
  260: 	[ $? -ne 0 ] && exit 1
  261: 	./build.sh mpd ${CBUILD} ${PKG}
  262: 	[ $? -ne 0 ] && exit 1
  263: 	./build.sh mrouted ${CBUILD} ${PKG}
  264: 	[ $? -ne 0 ] && exit 1
  265: 	./build.sh igmpproxy ${CBUILD} ${PKG}
  266: 	[ $? -ne 0 ] && exit 1
  267: 	./build.sh sudo ${CBUILD} ${PKG}
  268: 	[ $? -ne 0 ] && exit 1
  269: 	./build.sh pwgen ${CGBUILD} ${PKG}
  270: 	[ $? -ne 0 ] && exit 1
  271: 	./build.sh ladvd ${CBUILD} ${PKG}
  272: 	[ $? -ne 0 ] && exit 1
  273: 	./build.sh bmon ${CGBUILD} ${PKG}
  274: 	[ $? -ne 0 ] && exit 1
  275: 	./build.sh mtr ${CBUILD} ${PKG}
  276: 	[ $? -ne 0 ] && exit 1
  277: 	./build.sh ipguard ${CBUILD} ${PKG}
  278: 	[ $? -ne 0 ] && exit 1
  279: 	./build.sh ishell ${CBUILD} ${PKG}
  280: 	[ $? -ne 0 ] && exit 1
  281: 	./build.sh miniupnpd ${CBUILD} ${PKG}
  282: 	[ $? -ne 0 ] && exit 1
  283: 	./build.sh miniupnpc ${CGBUILD} ${PKG}
  284: 	[ $? -ne 0 ] && exit 1
  285: 	./build.sh iperf ${CBUILD} ${PKG}
  286: 	[ $? -ne 0 ] && exit 1
  287: 	./build.sh strobe ${CBUILD} ${PKG}
  288: 	[ $? -ne 0 ] && exit 1
  289: 	./build.sh smartmontools ${CBUILD} ${PKG}
  290: 	[ $? -ne 0 ] && exit 1
  291: 	./build.sh conserver ${CBUILD} ${PKG}
  292: 	[ $? -ne 0 ] && exit 1
  293: 	./build.sh sqlite3 ${CBUILD} ${PKG}
  294: 	[ $? -ne 0 ] && exit 1
  295: 	./build.sh openvpn ${CBUILD} ${PKG}
  296: 	[ $? -ne 0 ] && exit 1
  297: 	./build.sh quagga ${CBUILD} ${PKG}
  298: 	[ $? -ne 0 ] && exit 1
  299: 	./build.sh coova-chilli ${CBUILD} ${PKG}
  300: 	[ $? -ne 0 ] && exit 1
  301: 	./build.sh ntpd ${CBUILD} ${PKG}
  302: 	[ $? -ne 0 ] && exit 1
  303: 	./build.sh iftop ${CBUILD} ${PKG}
  304: 	[ $? -ne 0 ] && exit 1
  305: 	./build.sh arping ${CBUILD} ${PKG}
  306: 	[ $? -ne 0 ] && exit 1
  307: 	./build.sh hping ${CGBUILD} ${PKG}
  308: 	[ $? -ne 0 ] && exit 1
  309: 	./build.sh trafshow ${CBUILD} ${PKG}
  310: 	[ $? -ne 0 ] && exit 1
  311: 	./build.sh ipsec-tools ${CBUILD} ${PKG}
  312: 	[ $? -ne 0 ] && exit 1
  313: 	./build.sh dhcp ${CBUILD} ${PKG}
  314: 	[ $? -ne 0 ] && exit 1
  315: 	./build.sh dhcping ${CBUILD} ${PKG}
  316: 	[ $? -ne 0 ] && exit 1
  317: 	./build.sh dhcdrop ${CBUILD} ${PKG}
  318: 	[ $? -ne 0 ] && exit 1
  319: 	./build.sh spawn-fcgi ${CBUILD} ${PKG}
  320: 	[ $? -ne 0 ] && exit 1
  321: 	./build.sh lighttpd ${CBUILD} ${PKG}
  322: 	[ $? -ne 0 ] && exit 1
  323: 	./build.sh php ${CBUILD} ${PKG}
  324: 	[ $? -ne 0 ] && exit 1
  325: 	cd -
  326: 
  327: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
  328: }
  329: 
  330: ### main()
  331: if ! SnitVer ${PKG}/elwix0.ver; then
  332: 	compile_fbsdtools
  333: else
  334: 	echo "Skipped ELWIX Cross FreeBSD tools build ..."
  335: fi
  336: 
  337: if ! SnitVer ${PKG}/elwix.ver; then
  338: 	clean_cross
  339: 	build_cross
  340: 	compile_cross
  341: else
  342: 	echo "Skipped ELWIX Cross build ..."
  343: fi
  344: 
  345: if ! SnitVer ${PKG}/elwix1.ver; then
  346: 	compile_3th
  347: else
  348: 	echo "Skipped ELWIX Cross 3th party build ..."
  349: fi
  350: 
  351: echo "+++ Complete build ELWIX Cross"

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