File:  [ELWIX - Embedded LightWeight unIX -] / elwix / Attic / build_cross.sh
Revision 1.1.1.1.2.6: download - view: text, annotated - select for diffs - revision graph
Wed Jul 20 14:28:34 2011 UTC (13 years ago) by misho
Branches: elwix1_4
Diff to: branchpoint 1.1.1.1: preferred, unified
final changes for cross 3th party

    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.6 2011/07/20 14:28:34 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: 
   85: 	cd $CROSS_FT_ATH
   86: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   87: 		clean DESTDIR=${WORLD}
   88: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   89: 		DESTDIR=${WORLD}
   90: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   91: 		install DESTDIR=${WORLD}
   92: 	cd -
   93: 
   94: 	cd $CROSS_FT_IPW
   95: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   96: 		clean DESTDIR=${WORLD}
   97: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
   98: 		DESTDIR=${WORLD}
   99: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  100: 		install DESTDIR=${WORLD}/usr/local/bin
  101: 	cd -
  102: 
  103: 	cd $CROSS_FT_IWI
  104: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  105: 		clean DESTDIR=${WORLD}
  106: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  107: 		DESTDIR=${WORLD}
  108: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  109: 		install DESTDIR=${WORLD}/usr/local/bin
  110: 	cd -
  111: 
  112: 	cd $CROSS_FT_MWL
  113: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  114: 		clean DESTDIR=${WORLD}
  115: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  116: 		DESTDIR=${WORLD}
  117: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  118: 		install DESTDIR=${WORLD}
  119: 	cd -
  120: 
  121: 	cd $CROSS_FT_NET80211
  122: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  123: 		clean DESTDIR=${WORLD}
  124: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  125: 		DESTDIR=${WORLD}
  126: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  127: 		install DESTDIR=${WORLD}
  128: 	cd -
  129: 
  130: 	cd $CROSS_FT_VIMAGE
  131: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  132: 		clean DESTDIR=${WORLD}
  133: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  134: 		DESTDIR=${WORLD}
  135: 	env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
  136: 		install DESTDIR=${WORLD}
  137: 	cd -
  138: 
  139: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix0.ver
  140: }
  141: 
  142: compile_cross()
  143: {
  144: 	echo "+++ Compile ELWIX Cross ..."
  145: 	cd $CROSS_AXL
  146: 	${AXL_CFG}
  147: 	${CBUILD} clean
  148: 	${CBUILD}
  149: 	${CBUILD} install
  150: 	cd -
  151: 
  152: 	cd $CROSS_AITIO
  153: 	${AITIO_CFG}
  154: 	${CBUILD} clean
  155: 	${CBUILD}
  156: 	${CBUILD} install
  157: 	cd -
  158: 
  159: 	cd $CROSS_AITCRC
  160: 	${AITCRC_CFG}
  161: 	${CBUILD} clean
  162: 	${CBUILD}
  163: 	${CBUILD} install
  164: 	cd -
  165: 
  166: 	cd $CROSS_AITCFG
  167: 	${AITCFG_CFG}
  168: 	${CBUILD} clean
  169: 	${CBUILD}
  170: 	${CBUILD} install
  171: 	cd -
  172: 
  173: 	cd $CROSS_AITSESS
  174: 	${AITSESS_CFG}
  175: 	${CBUILD} clean
  176: 	${CBUILD}
  177: 	${CBUILD} install
  178: 	cd -
  179: 
  180: 	cd $CROSS_AITRPC
  181: 	${AITRPC_CFG}
  182: 	${CBUILD} clean
  183: 	${CBUILD}
  184: 	${CBUILD} install
  185: 	cd -
  186: 
  187: 	cd $CROSS_AITPELCO
  188: 	${AITPELCO_CFG}
  189: 	${CBUILD} clean
  190: 	${CBUILD}
  191: 	${CBUILD} install
  192: 	cd -
  193: 
  194: 	cd $CROSS_AITPWD
  195: 	${AITPWD_CFG}
  196: 	${CBUILD} clean
  197: 	${CBUILD}
  198: 	${CBUILD} install
  199: 	cd -
  200: 
  201: 	cd $CROSS_AITSYNC
  202: 	${AITSYNC_CFG}
  203: 	${CBUILD} clean
  204: 	${CBUILD}
  205: 	${CBUILD} install
  206: 	cd -
  207: 
  208: 	cd $CROSS_AITCLI
  209: 	${AITCLI_CFG}
  210: 	${CBUILD} clean
  211: 	${CBUILD}
  212: 	${CBUILD} install
  213: 	cd -
  214: 
  215: 	cd $CROSS_EMBEDTOOLS
  216: 	${EMBEDTOOLS_CFG}
  217: 	${CBUILD} clean
  218: 	${CBUILD}
  219: 	${CBUILD} install
  220: 	cd -
  221: 
  222: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
  223: }
  224: 
  225: compile_3th()
  226: {
  227: 	echo "+++ Compile ELWIX 3th party ..."
  228: 
  229: 	cd $CROSS_3TH
  230: 	./build.sh expat ${CBUILD} ${PKG}
  231: 	[ $? -ne 0 ] && exit 1
  232: 	./build.sh libevent ${CBUILD} ${PKG}
  233: 	[ $? -ne 0 ] && exit 1
  234: 	./build.sh lzo ${CBUILD} ${PKG}
  235: 	[ $? -ne 0 ] && exit 1
  236: 	./build.sh libiconv ${CGBUILD} ${PKG}
  237: 	[ $? -ne 0 ] && exit 1
  238: 	./build.sh libgcrypt ${CGBUILD} ${PKG}
  239: 	[ $? -ne 0 ] && exit 1
  240: 	./build.sh curl ${CBUILD} ${PKG}
  241: 	[ $? -ne 0 ] && exit 1
  242: 	./build.sh pcre ${CBUILD} ${PKG}
  243: 	[ $? -ne 0 ] && exit 1
  244: 	./build.sh mini_sendmail ${CBUILD} ${PKG}
  245: 	[ $? -ne 0 ] && exit 1
  246: 	./build.sh choparp ${CBUILD} ${PKG}
  247: 	[ $? -ne 0 ] && exit 1
  248: 	./build.sh scan_ffs ${CBUILD} ${PKG}
  249: 	[ $? -ne 0 ] && exit 1
  250: 	./build.sh pciutils ${CGBUILD} ${PKG}
  251: 	[ $? -ne 0 ] && exit 1
  252: 	./build.sh rsync ${CBUILD} ${PKG}
  253: 	[ $? -ne 0 ] && exit 1
  254: 	./build.sh ttcp ${CBUILD} ${PKG}
  255: 	[ $? -ne 0 ] && exit 1
  256: 	./build.sh ifstated ${CBUILD} ${PKG}
  257: 	[ $? -ne 0 ] && exit 1
  258: 	./build.sh mpd ${CBUILD} ${PKG}
  259: 	[ $? -ne 0 ] && exit 1
  260: 	./build.sh mrouted ${CBUILD} ${PKG}
  261: 	[ $? -ne 0 ] && exit 1
  262: 	./build.sh igmpproxy ${CBUILD} ${PKG}
  263: 	[ $? -ne 0 ] && exit 1
  264: 	./build.sh sudo ${CBUILD} ${PKG}
  265: 	[ $? -ne 0 ] && exit 1
  266: 	./build.sh pwgen ${CGBUILD} ${PKG}
  267: 	[ $? -ne 0 ] && exit 1
  268: 	./build.sh ladvd ${CBUILD} ${PKG}
  269: 	[ $? -ne 0 ] && exit 1
  270: 	./build.sh bmon ${CGBUILD} ${PKG}
  271: 	[ $? -ne 0 ] && exit 1
  272: 	./build.sh mtr ${CBUILD} ${PKG}
  273: 	[ $? -ne 0 ] && exit 1
  274: 	./build.sh ipguard ${CBUILD} ${PKG}
  275: 	[ $? -ne 0 ] && exit 1
  276: 	./build.sh ishell ${CBUILD} ${PKG}
  277: 	[ $? -ne 0 ] && exit 1
  278: 	./build.sh miniupnpd ${CBUILD} ${PKG}
  279: 	[ $? -ne 0 ] && exit 1
  280: 	./build.sh miniupnpc ${CGBUILD} ${PKG}
  281: 	[ $? -ne 0 ] && exit 1
  282: 	./build.sh iperf ${CBUILD} ${PKG}
  283: 	[ $? -ne 0 ] && exit 1
  284: 	./build.sh strobe ${CBUILD} ${PKG}
  285: 	[ $? -ne 0 ] && exit 1
  286: 	./build.sh smartmontools ${CBUILD} ${PKG}
  287: 	[ $? -ne 0 ] && exit 1
  288: 	./build.sh conserver ${CBUILD} ${PKG}
  289: 	[ $? -ne 0 ] && exit 1
  290: 	./build.sh sqlite3 ${CBUILD} ${PKG}
  291: 	[ $? -ne 0 ] && exit 1
  292: 	./build.sh openvpn ${CBUILD} ${PKG}
  293: 	[ $? -ne 0 ] && exit 1
  294: 	./build.sh quagga ${CBUILD} ${PKG}
  295: 	[ $? -ne 0 ] && exit 1
  296: 	./build.sh coova-chilli ${CBUILD} ${PKG}
  297: 	[ $? -ne 0 ] && exit 1
  298: 	./build.sh ntpd ${CBUILD} ${PKG}
  299: 	[ $? -ne 0 ] && exit 1
  300: 	./build.sh iftop ${CBUILD} ${PKG}
  301: 	[ $? -ne 0 ] && exit 1
  302: 	./build.sh arping ${CBUILD} ${PKG}
  303: 	[ $? -ne 0 ] && exit 1
  304: 	./build.sh hping2 ${CGBUILD} ${PKG}
  305: 	[ $? -ne 0 ] && exit 1
  306: 	./build.sh trafshow ${CBUILD} ${PKG}
  307: 	[ $? -ne 0 ] && exit 1
  308: 	./build.sh ipsec-tools ${CBUILD} ${PKG}
  309: 	[ $? -ne 0 ] && exit 1
  310: 	./build.sh dhcp ${CBUILD} ${PKG}
  311: 	[ $? -ne 0 ] && exit 1
  312: 	./build.sh dhcping ${CBUILD} ${PKG}
  313: 	[ $? -ne 0 ] && exit 1
  314: 	./build.sh dhcdrop ${CBUILD} ${PKG}
  315: 	[ $? -ne 0 ] && exit 1
  316: 	./build.sh pure-ftpd ${CBUILD} ${PKG}
  317: 	[ $? -ne 0 ] && exit 1
  318: 	./build.sh spawn-fcgi ${CBUILD} ${PKG}
  319: 	[ $? -ne 0 ] && exit 1
  320: 	./build.sh lighttpd ${CBUILD} ${PKG}
  321: 	[ $? -ne 0 ] && exit 1
  322: 	./build.sh php ${CBUILD} ${PKG}
  323: 	[ $? -ne 0 ] && exit 1
  324: 	cd -
  325: 
  326: 	echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
  327: }
  328: 
  329: ### main()
  330: if ! SnitVer ${PKG}/elwix0.ver; then
  331: 	compile_fbsdtools
  332: else
  333: 	echo "Skipped ELWIX Cross FreeBSD tools build ..."
  334: fi
  335: 
  336: if ! SnitVer ${PKG}/elwix.ver; then
  337: 	clean_cross
  338: 	build_cross
  339: 	compile_cross
  340: else
  341: 	echo "Skipped ELWIX Cross build ..."
  342: fi
  343: 
  344: if ! SnitVer ${PKG}/elwix1.ver; then
  345: 	compile_3th
  346: else
  347: 	echo "Skipped ELWIX Cross 3th party build ..."
  348: fi
  349: 
  350: echo "+++ Complete build ELWIX Cross"

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