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