Annotation of elwix/build_cross.sh, revision 1.3.2.1
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.3.2.1 ! misho 8: # $Id: build_cross.sh,v 1.3 2011/11/02 09:51:32 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.2 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.2 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} \
1.3 misho 60: buildenvvars >> ${CBUILD}
61: cat >>${CBUILD} <<_EOF
62: PATH=$PKG/bin:$PKG/sbin:\$PATH:$PATH
63: _EOF
1.1 misho 64: cd -
1.2 misho 65: cp ${CBUILD} ${CGBUILD}
1.3 misho 66: cp ${CBUILD} ${CENV}
1.2 misho 67: cat >>${CBUILD} <<_EOF
1.1 misho 68: make \$*
69: _EOF
1.2 misho 70: cat >>${CGBUILD} <<_EOF
71: /usr/local/bin/gmake \$*
72: _EOF
1.3 misho 73: cat >>${CENV} <<_EOF
74: exec \$*
75: _EOF
76: chmod +x ${CBUILD} ${CGBUILD} ${CENV}
1.2 misho 77: echo "Done."
78: }
79:
80: compile_fbsdtools()
81: {
82: echo "+++ Compile ELWIX Cross FreeBSD tools ..."
83:
84: rm -rf ${WORLD}/usr/local
85: install -d ${WORLD}/usr/local
86: install -d ${WORLD}/usr/local/bin
87: install -d ${WORLD}/usr/local/sbin
88: install -d ${WORLD}/usr/local/lib
89: install -d ${WORLD}/usr/local/libdata
90:
91: cd $CROSS_FT_ATH
92: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
93: clean DESTDIR=${WORLD}
94: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
95: DESTDIR=${WORLD}
96: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
97: install DESTDIR=${WORLD}
98: cd -
99:
100: cd $CROSS_FT_IPW
101: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
102: clean DESTDIR=${WORLD}
103: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
104: DESTDIR=${WORLD}
105: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
106: install DESTDIR=${WORLD}/usr/local/bin
107: cd -
108:
109: cd $CROSS_FT_IWI
110: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
111: clean DESTDIR=${WORLD}
112: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
113: DESTDIR=${WORLD}
114: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
115: install DESTDIR=${WORLD}/usr/local/bin
116: cd -
117:
118: cd $CROSS_FT_MWL
119: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
120: clean DESTDIR=${WORLD}
121: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
122: DESTDIR=${WORLD}
123: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
124: install DESTDIR=${WORLD}
125: cd -
126:
127: cd $CROSS_FT_NET80211
128: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
129: clean DESTDIR=${WORLD}
130: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
131: DESTDIR=${WORLD}
132: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
133: install DESTDIR=${WORLD}
134: cd -
135:
136: cd $CROSS_FT_VIMAGE
137: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
138: clean DESTDIR=${WORLD}
139: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
140: DESTDIR=${WORLD}
141: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
142: install DESTDIR=${WORLD}
143: cd -
1.1 misho 144:
1.2 misho 145: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix0.ver
1.1 misho 146: }
147:
148: compile_cross()
149: {
150: echo "+++ Compile ELWIX Cross ..."
151: cd $CROSS_AXL
152: ${AXL_CFG}
1.2 misho 153: ${CBUILD} clean
154: ${CBUILD}
155: ${CBUILD} install
1.1 misho 156: cd -
157:
158: cd $CROSS_AITIO
159: ${AITIO_CFG}
1.2 misho 160: ${CBUILD} clean
161: ${CBUILD}
162: ${CBUILD} install
1.1 misho 163: cd -
164:
165: cd $CROSS_AITCRC
166: ${AITCRC_CFG}
1.2 misho 167: ${CBUILD} clean
168: ${CBUILD}
169: ${CBUILD} install
1.1 misho 170: cd -
171:
172: cd $CROSS_AITCFG
173: ${AITCFG_CFG}
1.2 misho 174: ${CBUILD} clean
175: ${CBUILD}
176: ${CBUILD} install
1.1 misho 177: cd -
178:
179: cd $CROSS_AITSESS
180: ${AITSESS_CFG}
1.2 misho 181: ${CBUILD} clean
182: ${CBUILD}
183: ${CBUILD} install
1.1 misho 184: cd -
185:
186: cd $CROSS_AITRPC
187: ${AITRPC_CFG}
1.2 misho 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
1.1 misho 198: cd -
199:
200: cd $CROSS_AITPELCO
201: ${AITPELCO_CFG}
1.2 misho 202: ${CBUILD} clean
203: ${CBUILD}
204: ${CBUILD} install
1.1 misho 205: cd -
206:
207: cd $CROSS_AITPWD
208: ${AITPWD_CFG}
1.2 misho 209: ${CBUILD} clean
210: ${CBUILD}
211: ${CBUILD} install
1.1 misho 212: cd -
213:
214: cd $CROSS_AITSYNC
215: ${AITSYNC_CFG}
1.2 misho 216: ${CBUILD} clean
217: ${CBUILD}
218: ${CBUILD} install
1.1 misho 219: cd -
220:
221: cd $CROSS_AITCLI
222: ${AITCLI_CFG}
1.2 misho 223: ${CBUILD} clean
224: ${CBUILD}
225: ${CBUILD} install
226: cd -
227:
1.3.2.1 ! misho 228: cd $CROSS_AITMQTT
! 229: ${AITMQTT_CFG}
! 230: ${CBUILD} clean
! 231: ${CBUILD}
! 232: ${CBUILD} install
! 233: cd -
! 234:
1.2 misho 235: cd $CROSS_EMBEDTOOLS
236: ${EMBEDTOOLS_CFG}
237: ${CBUILD} clean
238: ${CBUILD}
239: ${CBUILD} install
240: cd -
241:
242: cd $CROSS_ANSH
243: ${ANSH_CFG}
244: ${CBUILD} clean
245: ${CBUILD}
246: ${CBUILD} install
1.1 misho 247: cd -
1.2 misho 248:
249: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
1.1 misho 250: }
251:
252: compile_3th()
253: {
254: echo "+++ Compile ELWIX 3th party ..."
1.2 misho 255:
256: cd $CROSS_3TH
1.3 misho 257: ./build.sh expat ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 258: [ $? -ne 0 ] && exit 1
1.3 misho 259: ./build.sh libevent ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 260: [ $? -ne 0 ] && exit 1
1.3 misho 261: ./build.sh libiconv ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 262: [ $? -ne 0 ] && exit 1
1.3 misho 263: ./build.sh pcre ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 264: [ $? -ne 0 ] && exit 1
1.3 misho 265: ./build.sh mini_sendmail ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 266: [ $? -ne 0 ] && exit 1
1.3 misho 267: ./build.sh choparp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 268: [ $? -ne 0 ] && exit 1
1.3 misho 269: ./build.sh scan_ffs ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 270: [ $? -ne 0 ] && exit 1
1.3 misho 271: ./build.sh pciutils ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 272: [ $? -ne 0 ] && exit 1
1.3 misho 273: ./build.sh rsync ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 274: [ $? -ne 0 ] && exit 1
1.3 misho 275: ./build.sh ttcp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 276: [ $? -ne 0 ] && exit 1
1.3 misho 277: ./build.sh ifstated ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 278: [ $? -ne 0 ] && exit 1
1.3 misho 279: ./build.sh mpd ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 280: [ $? -ne 0 ] && exit 1
1.3 misho 281: ./build.sh igmpproxy ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 282: [ $? -ne 0 ] && exit 1
1.3 misho 283: ./build.sh sudo ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 284: [ $? -ne 0 ] && exit 1
1.3 misho 285: ./build.sh bmon ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 286: [ $? -ne 0 ] && exit 1
1.3 misho 287: ./build.sh mtr ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 288: [ $? -ne 0 ] && exit 1
1.3 misho 289: ./build.sh ipguard ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 290: [ $? -ne 0 ] && exit 1
1.3 misho 291: ./build.sh iperf ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 292: [ $? -ne 0 ] && exit 1
1.3 misho 293: ./build.sh smartmontools ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 294: [ $? -ne 0 ] && exit 1
1.3 misho 295: ./build.sh sqlite3 ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 296: [ $? -ne 0 ] && exit 1
1.3 misho 297: ./build.sh quagga ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 298: [ $? -ne 0 ] && exit 1
1.3 misho 299: ./build.sh coova-chilli ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 300: [ $? -ne 0 ] && exit 1
1.3 misho 301: ./build.sh ntpd ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 302: [ $? -ne 0 ] && exit 1
1.3 misho 303: ./build.sh iftop ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 304: [ $? -ne 0 ] && exit 1
1.3 misho 305: ./build.sh arping ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 306: [ $? -ne 0 ] && exit 1
1.3 misho 307: ./build.sh hping ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 308: [ $? -ne 0 ] && exit 1
1.3 misho 309: ./build.sh trafshow ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 310: [ $? -ne 0 ] && exit 1
1.3 misho 311: ./build.sh ipsec-tools ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 312: [ $? -ne 0 ] && exit 1
1.3 misho 313: ./build.sh dhcp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 314: [ $? -ne 0 ] && exit 1
1.3 misho 315: ./build.sh dhcdrop ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 316: [ $? -ne 0 ] && exit 1
1.3 misho 317: ./build.sh spawn-fcgi ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 318: [ $? -ne 0 ] && exit 1
1.3 misho 319: ./build.sh lighttpd ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 320: [ $? -ne 0 ] && exit 1
1.3 misho 321: ./build.sh php ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 322: [ $? -ne 0 ] && exit 1
323: cd -
324:
325: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
1.1 misho 326: }
327:
328: ### main()
1.2 misho 329: if ! SnitVer ${PKG}/elwix0.ver; then
330: compile_fbsdtools
331: else
332: echo "Skipped ELWIX Cross FreeBSD tools build ..."
333: fi
334:
335: if ! SnitVer ${PKG}/elwix.ver; then
1.1 misho 336: clean_cross
337: build_cross
338: compile_cross
1.2 misho 339: else
340: echo "Skipped ELWIX Cross build ..."
341: fi
1.1 misho 342:
1.2 misho 343: if ! SnitVer ${PKG}/elwix1.ver; then
1.1 misho 344: compile_3th
345: else
1.2 misho 346: echo "Skipped ELWIX Cross 3th party build ..."
1.1 misho 347: fi
348:
349: echo "+++ Complete build ELWIX Cross"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>