Annotation of elwix/build_cross.sh, revision 1.1.1.1.2.5

1.1       misho       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: #
1.1.1.1.2.5! misho       8: # $Id: build_cross.sh,v 1.1.1.1.2.4 2011/07/20 01:09:42 misho Exp $
1.1       misho       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 ..."
1.1.1.1.2.1  misho      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
1.1       misho      47: }
                     48: 
                     49: build_cross()
                     50: {
                     51:        echo "+++ Build ELWIX Cross script ..."
                     52:        cd $BSDSRC
1.1.1.1.2.1  misho      53:        cat >${CBUILD} <<_EOF
1.1       misho      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 -
1.1.1.1.2.2  misho      62:        cp ${CBUILD} ${CGBUILD}
1.1.1.1.2.1  misho      63:        cat >>${CBUILD} <<_EOF
1.1.1.1.2.5! misho      64: PATH=$PATH:/usr/local/bin:/usr/local/sbin
1.1.1.1.2.4  misho      65: make \$*
1.1       misho      66: _EOF
1.1.1.1.2.2  misho      67:        cat >>${CGBUILD} <<_EOF
1.1.1.1.2.5! misho      68: PATH=$PATH:/usr/local/bin:/usr/local/sbin
1.1.1.1.2.4  misho      69: /usr/local/bin/gmake \$*
1.1.1.1.2.2  misho      70: _EOF
1.1       misho      71: 
1.1.1.1.2.3  misho      72:        chmod +x ${CBUILD} ${CGBUILD}
                     73:        echo "Done."
1.1       misho      74: }
                     75: 
                     76: compile_cross()
                     77: {
                     78:        echo "+++ Compile ELWIX Cross ..."
                     79:        cd $CROSS_AXL
                     80:        ${AXL_CFG}
1.1.1.1.2.1  misho      81:        ${CBUILD} clean
                     82:        ${CBUILD}
                     83:        ${CBUILD} install
1.1       misho      84:        cd -
                     85: 
                     86:        cd $CROSS_AITIO
                     87:        ${AITIO_CFG}
1.1.1.1.2.1  misho      88:        ${CBUILD} clean
                     89:        ${CBUILD}
                     90:        ${CBUILD} install
1.1       misho      91:        cd -
                     92: 
                     93:        cd $CROSS_AITCRC
                     94:        ${AITCRC_CFG}
1.1.1.1.2.1  misho      95:        ${CBUILD} clean
                     96:        ${CBUILD}
                     97:        ${CBUILD} install
1.1       misho      98:        cd -
                     99: 
                    100:        cd $CROSS_AITCFG
                    101:        ${AITCFG_CFG}
1.1.1.1.2.1  misho     102:        ${CBUILD} clean
                    103:        ${CBUILD}
                    104:        ${CBUILD} install
1.1       misho     105:        cd -
                    106: 
                    107:        cd $CROSS_AITSESS
                    108:        ${AITSESS_CFG}
1.1.1.1.2.1  misho     109:        ${CBUILD} clean
                    110:        ${CBUILD}
                    111:        ${CBUILD} install
1.1       misho     112:        cd -
                    113: 
                    114:        cd $CROSS_AITRPC
                    115:        ${AITRPC_CFG}
1.1.1.1.2.1  misho     116:        ${CBUILD} clean
                    117:        ${CBUILD}
                    118:        ${CBUILD} install
1.1       misho     119:        cd -
                    120: 
                    121:        cd $CROSS_AITPELCO
                    122:        ${AITPELCO_CFG}
1.1.1.1.2.1  misho     123:        ${CBUILD} clean
                    124:        ${CBUILD}
                    125:        ${CBUILD} install
1.1       misho     126:        cd -
                    127: 
                    128:        cd $CROSS_AITPWD
                    129:        ${AITPWD_CFG}
1.1.1.1.2.1  misho     130:        ${CBUILD} clean
                    131:        ${CBUILD}
                    132:        ${CBUILD} install
1.1       misho     133:        cd -
                    134: 
                    135:        cd $CROSS_AITSYNC
                    136:        ${AITSYNC_CFG}
1.1.1.1.2.1  misho     137:        ${CBUILD} clean
                    138:        ${CBUILD}
                    139:        ${CBUILD} install
1.1       misho     140:        cd -
                    141: 
                    142:        cd $CROSS_AITCLI
                    143:        ${AITCLI_CFG}
1.1.1.1.2.1  misho     144:        ${CBUILD} clean
                    145:        ${CBUILD}
                    146:        ${CBUILD} install
                    147:        cd -
                    148: 
                    149:        cd $CROSS_EMBEDTOOLS
                    150:        ${EMBEDTOOLS_CFG}
                    151:        ${CBUILD} clean
                    152:        ${CBUILD}
                    153:        ${CBUILD} install
1.1       misho     154:        cd -
1.1.1.1.2.1  misho     155: 
                    156:        echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
1.1       misho     157: }
                    158: 
                    159: compile_3th()
                    160: {
                    161:        echo "+++ Compile ELWIX 3th party ..."
1.1.1.1.2.1  misho     162: 
1.1.1.1.2.2  misho     163:        cd $CROSS_3TH
1.1.1.1.2.5! misho     164: #      ./build.sh expat ${CBUILD} ${PKG}
        !           165: #      ./build.sh libevent ${CBUILD} ${PKG}
        !           166: #      ./build.sh mini_sendmail ${CBUILD} ${PKG}
        !           167: #      ./build.sh choparp ${CBUILD} ${PKG}
        !           168: #      ./build.sh ttcp ${CBUILD} ${PKG}
        !           169: #      ./build.sh ifstated ${CBUILD} ${PKG}
        !           170: #      ./build.sh mpd ${CBUILD} ${PKG}
        !           171: #      ./build.sh mrouted ${CBUILD} ${PKG}
        !           172: #      ./build.sh igmpproxy ${CBUILD} ${PKG}
        !           173: #      ./build.sh sudo ${CBUILD} ${PKG}
        !           174: #      ./build.sh bmon ${CGBUILD} ${PKG}
        !           175: #      ./build.sh ntpd ${CBUILD} ${PKG}
        !           176:        ./build.sh iftop ${CBUILD} ${PKG}
        !           177: #      ./build.sh trafshow ${CBUILD} ${PKG}
        !           178: #      ./build.sh ipsec-tools ${CBUILD} ${PKG}
        !           179: #      ./build.sh dhcp ${CBUILD} ${PKG}
        !           180: #      ./build.sh dhcping ${CBUILD} ${PKG}
        !           181: #      ./build.sh dhcdrop ${CBUILD} ${PKG}
1.1.1.1.2.2  misho     182:        cd -
                    183: 
1.1.1.1.2.1  misho     184: #      echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
1.1       misho     185: }
                    186: 
                    187: ### main()
1.1.1.1.2.1  misho     188: if ! SnitVer ${PKG}/elwix.ver; then
1.1       misho     189:        clean_cross
                    190:        build_cross
                    191:        compile_cross
                    192: else
                    193:        echo "Skipped ELWIX Cross build ..."
                    194: fi
                    195: 
1.1.1.1.2.1  misho     196: if ! SnitVer ${PKG}/elwix1.ver; then
                    197:        compile_3th
                    198: fi
1.1       misho     199: 
                    200: echo "+++ Complete build ELWIX Cross"

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