Annotation of elwix/build_cross.sh, revision 1.3.2.4
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.4 ! misho 8: # $Id: build_cross.sh,v 1.3.2.3 2012/02/15 13:46:10 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.3.2.4 ! misho 145: # cd $CROSS_FT_WTAP
! 146: # env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
! 147: # clean DESTDIR=${WORLD}
! 148: # env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
! 149: # DESTDIR=${WORLD}
! 150: # env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
! 151: # install DESTDIR=${WORLD}
! 152: # cd -
! 153:
1.2 misho 154: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix0.ver
1.1 misho 155: }
156:
157: compile_cross()
158: {
159: echo "+++ Compile ELWIX Cross ..."
160: cd $CROSS_AXL
161: ${AXL_CFG}
1.2 misho 162: ${CBUILD} clean
163: ${CBUILD}
164: ${CBUILD} install
1.1 misho 165: cd -
166:
167: cd $CROSS_AITIO
168: ${AITIO_CFG}
1.2 misho 169: ${CBUILD} clean
170: ${CBUILD}
171: ${CBUILD} install
1.1 misho 172: cd -
173:
174: cd $CROSS_AITCRC
175: ${AITCRC_CFG}
1.2 misho 176: ${CBUILD} clean
177: ${CBUILD}
178: ${CBUILD} install
1.1 misho 179: cd -
180:
181: cd $CROSS_AITCFG
182: ${AITCFG_CFG}
1.2 misho 183: ${CBUILD} clean
184: ${CBUILD}
185: ${CBUILD} install
1.1 misho 186: cd -
187:
188: cd $CROSS_AITSESS
189: ${AITSESS_CFG}
1.2 misho 190: ${CBUILD} clean
191: ${CBUILD}
192: ${CBUILD} install
1.1 misho 193: cd -
194:
195: cd $CROSS_AITRPC
196: ${AITRPC_CFG}
1.2 misho 197: ${CBUILD} clean
198: ${CBUILD}
199: ${CBUILD} install
200: cd -
201:
202: cd $CROSS_AITSCHED
203: ${AITSCHED_CFG}
204: ${CBUILD} clean
205: ${CBUILD}
206: ${CBUILD} install
1.1 misho 207: cd -
208:
209: cd $CROSS_AITPELCO
210: ${AITPELCO_CFG}
1.2 misho 211: ${CBUILD} clean
212: ${CBUILD}
213: ${CBUILD} install
1.1 misho 214: cd -
215:
216: cd $CROSS_AITPWD
217: ${AITPWD_CFG}
1.2 misho 218: ${CBUILD} clean
219: ${CBUILD}
220: ${CBUILD} install
1.1 misho 221: cd -
222:
223: cd $CROSS_AITSYNC
224: ${AITSYNC_CFG}
1.2 misho 225: ${CBUILD} clean
226: ${CBUILD}
227: ${CBUILD} install
1.1 misho 228: cd -
229:
230: cd $CROSS_AITCLI
231: ${AITCLI_CFG}
1.2 misho 232: ${CBUILD} clean
233: ${CBUILD}
234: ${CBUILD} install
235: cd -
236:
1.3.2.1 misho 237: cd $CROSS_AITMQTT
238: ${AITMQTT_CFG}
239: ${CBUILD} clean
240: ${CBUILD}
241: ${CBUILD} install
242: cd -
243:
1.2 misho 244: cd $CROSS_EMBEDTOOLS
245: ${EMBEDTOOLS_CFG}
246: ${CBUILD} clean
247: ${CBUILD}
248: ${CBUILD} install
249: cd -
250:
251: cd $CROSS_ANSH
252: ${ANSH_CFG}
253: ${CBUILD} clean
254: ${CBUILD}
255: ${CBUILD} install
1.1 misho 256: cd -
1.2 misho 257:
258: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
1.1 misho 259: }
260:
261: compile_3th()
262: {
263: echo "+++ Compile ELWIX 3th party ..."
1.2 misho 264:
265: cd $CROSS_3TH
1.3 misho 266: ./build.sh expat ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 267: [ $? -ne 0 ] && exit 1
1.3 misho 268: ./build.sh libevent ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 269: [ $? -ne 0 ] && exit 1
1.3 misho 270: ./build.sh libiconv ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 271: [ $? -ne 0 ] && exit 1
1.3 misho 272: ./build.sh pcre ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 273: [ $? -ne 0 ] && exit 1
1.3 misho 274: ./build.sh mini_sendmail ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 275: [ $? -ne 0 ] && exit 1
1.3 misho 276: ./build.sh choparp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 277: [ $? -ne 0 ] && exit 1
1.3 misho 278: ./build.sh scan_ffs ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 279: [ $? -ne 0 ] && exit 1
1.3 misho 280: ./build.sh pciutils ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 281: [ $? -ne 0 ] && exit 1
1.3.2.2 misho 282: ./build.sh istgt ${CBUILD} ${PKG} ${TARGET_BUILD}
283: [ $? -ne 0 ] && exit 1
1.3 misho 284: ./build.sh rsync ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 285: [ $? -ne 0 ] && exit 1
1.3 misho 286: ./build.sh ttcp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 287: [ $? -ne 0 ] && exit 1
1.3 misho 288: ./build.sh ifstated ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 289: [ $? -ne 0 ] && exit 1
1.3 misho 290: ./build.sh mpd ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 291: [ $? -ne 0 ] && exit 1
1.3 misho 292: ./build.sh igmpproxy ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 293: [ $? -ne 0 ] && exit 1
1.3 misho 294: ./build.sh sudo ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 295: [ $? -ne 0 ] && exit 1
1.3 misho 296: ./build.sh bmon ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 297: [ $? -ne 0 ] && exit 1
1.3 misho 298: ./build.sh mtr ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 299: [ $? -ne 0 ] && exit 1
1.3 misho 300: ./build.sh ipguard ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 301: [ $? -ne 0 ] && exit 1
1.3 misho 302: ./build.sh iperf ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 303: [ $? -ne 0 ] && exit 1
1.3 misho 304: ./build.sh smartmontools ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 305: [ $? -ne 0 ] && exit 1
1.3 misho 306: ./build.sh sqlite3 ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 307: [ $? -ne 0 ] && exit 1
1.3 misho 308: ./build.sh quagga ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 309: [ $? -ne 0 ] && exit 1
1.3 misho 310: ./build.sh coova-chilli ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 311: [ $? -ne 0 ] && exit 1
1.3 misho 312: ./build.sh iftop ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 313: [ $? -ne 0 ] && exit 1
1.3 misho 314: ./build.sh arping ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 315: [ $? -ne 0 ] && exit 1
1.3 misho 316: ./build.sh hping ${CGBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 317: [ $? -ne 0 ] && exit 1
1.3 misho 318: ./build.sh trafshow ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 319: [ $? -ne 0 ] && exit 1
1.3 misho 320: ./build.sh ipsec-tools ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 321: [ $? -ne 0 ] && exit 1
1.3 misho 322: ./build.sh dhcp ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 323: [ $? -ne 0 ] && exit 1
1.3 misho 324: ./build.sh dhcdrop ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 325: [ $? -ne 0 ] && exit 1
1.3 misho 326: ./build.sh spawn-fcgi ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 327: [ $? -ne 0 ] && exit 1
1.3 misho 328: ./build.sh lighttpd ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 329: [ $? -ne 0 ] && exit 1
1.3 misho 330: ./build.sh php ${CBUILD} ${PKG} ${TARGET_BUILD}
1.2 misho 331: [ $? -ne 0 ] && exit 1
332: cd -
333:
334: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
1.1 misho 335: }
336:
337: ### main()
1.2 misho 338: if ! SnitVer ${PKG}/elwix0.ver; then
339: compile_fbsdtools
340: else
341: echo "Skipped ELWIX Cross FreeBSD tools build ..."
342: fi
343:
344: if ! SnitVer ${PKG}/elwix.ver; then
1.1 misho 345: clean_cross
346: build_cross
347: compile_cross
1.2 misho 348: else
349: echo "Skipped ELWIX Cross build ..."
350: fi
1.1 misho 351:
1.2 misho 352: if ! SnitVer ${PKG}/elwix1.ver; then
1.1 misho 353: compile_3th
354: else
1.2 misho 355: echo "Skipped ELWIX Cross 3th party build ..."
1.1 misho 356: fi
357:
358: echo "+++ Complete build ELWIX Cross"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>