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.1 2011/07/19 21:54:27 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: cat >>${CBUILD} <<_EOF
63: env CFLAGS="--sysroot=${WORLD}" make \$*
64: echo "Done."
65: _EOF
66:
67: chmod +x ${CBUILD}
68: }
69:
70: compile_cross()
71: {
72: echo "+++ Compile ELWIX Cross ..."
73: cd $CROSS_AXL
74: ${AXL_CFG}
75: ${CBUILD} clean
76: ${CBUILD}
77: ${CBUILD} install
78: cd -
79:
80: cd $CROSS_AITIO
81: ${AITIO_CFG}
82: ${CBUILD} clean
83: ${CBUILD}
84: ${CBUILD} install
85: cd -
86:
87: cd $CROSS_AITCRC
88: ${AITCRC_CFG}
89: ${CBUILD} clean
90: ${CBUILD}
91: ${CBUILD} install
92: cd -
93:
94: cd $CROSS_AITCFG
95: ${AITCFG_CFG}
96: ${CBUILD} clean
97: ${CBUILD}
98: ${CBUILD} install
99: cd -
100:
101: cd $CROSS_AITSESS
102: ${AITSESS_CFG}
103: ${CBUILD} clean
104: ${CBUILD}
105: ${CBUILD} install
106: cd -
107:
108: cd $CROSS_AITRPC
109: ${AITRPC_CFG}
110: ${CBUILD} clean
111: ${CBUILD}
112: ${CBUILD} install
113: cd -
114:
115: cd $CROSS_AITPELCO
116: ${AITPELCO_CFG}
117: ${CBUILD} clean
118: ${CBUILD}
119: ${CBUILD} install
120: cd -
121:
122: cd $CROSS_AITPWD
123: ${AITPWD_CFG}
124: ${CBUILD} clean
125: ${CBUILD}
126: ${CBUILD} install
127: cd -
128:
129: cd $CROSS_AITSYNC
130: ${AITSYNC_CFG}
131: ${CBUILD} clean
132: ${CBUILD}
133: ${CBUILD} install
134: cd -
135:
136: cd $CROSS_AITCLI
137: ${AITCLI_CFG}
138: ${CBUILD} clean
139: ${CBUILD}
140: ${CBUILD} install
141: cd -
142:
143: cd $CROSS_EMBEDTOOLS
144: ${EMBEDTOOLS_CFG}
145: ${CBUILD} clean
146: ${CBUILD}
147: ${CBUILD} install
148: cd -
149:
150: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
151: }
152:
153: compile_3th()
154: {
155: echo "+++ Compile ELWIX 3th party ..."
156:
157: # echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix1.ver
158: }
159:
160: ### main()
161: if ! SnitVer ${PKG}/elwix.ver; then
162: clean_cross
163: build_cross
164: compile_cross
165: else
166: echo "Skipped ELWIX Cross build ..."
167: fi
168:
169: if ! SnitVer ${PKG}/elwix1.ver; then
170: compile_3th
171: fi
172:
173: echo "+++ Complete build ELWIX Cross"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>