Annotation of elwix/build_3thparty.sh, revision 1.8
1.2 misho 1: #!/bin/sh
2: #
3: # ELWIX build script for cross compiling 3th party software
4: #
5: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
6: # by Michael Pounov <misho@elwix.org>
7: #
1.8 ! misho 8: # $Id: build_3thparty.sh,v 1.7.2.2 2021/03/17 20:30:44 misho Exp $
1.2 misho 9: #
10:
11: [ -r ./config/rc.elwix ] && . ./config/rc.elwix
1.5 misho 12: if [ ! -r ./config/rc.3thparty_helper ]; then
13: echo
14: echo "ELWIX project is not configured - Missing rc.3thparty_helper script"
15: echo
16: exit 1
17: fi
18:
1.2 misho 19: if [ X"${ELWIX_IS_CONFIGURED}" != X"YES" ]; then
20: echo
21: echo "ELWIX project is not configured !?!"
22: echo
23: exit 1
24: fi
25: V=${VERSION}
26: [ -r ${CENV} ] && . ${CENV}
27: unset INSTALL
28: unset VERSION
29: VERSION="$V"
30:
31: if [ ! -d $BSDSRC ]; then
32: echo
33: echo "ELWIX project is not configured - missing BSD sources !?!"
34: echo
35: exit 1
36: fi
37:
38: if [ ! -d $DEST ]; then
39: echo
40: echo "ELWIX project is not configured - missing Dest directory !?!"
41: echo
42: exit 1
43: fi
44:
45: clean_3th()
46: {
1.6 misho 47: echo "+++ Clean ELWIX 3th party ... ${PKG}, ${ROMFS_USR2}"
1.2 misho 48:
1.3 misho 49: rm -rf ${PKG} ${ROMFS_USR2}
50:
1.2 misho 51: install -d ${PKG}
52: install -d ${PKG}/bin
53: install -d ${PKG}/etc
54: install -d ${PKG}/include
55: install -d ${PKG}/man
56: install -d ${PKG}/lib
57: install -d ${PKG}/libexec
58: install -d ${PKG}/sbin
1.3 misho 59:
60: install -d ${ROMFS_USR2}
61: install -d ${ROMFS_USR2}/bin
62: install -d ${ROMFS_USR2}/etc
63: install -d ${ROMFS_USR2}/lib
64: install -d ${ROMFS_USR2}/libexec
65: install -d ${ROMFS_USR2}/sbin
1.2 misho 66: }
67:
68: compile_3th()
69: {
70: echo "+++ Compile ELWIX 3th party ..."
71:
1.5 misho 72: BUILD_SH="./config/rc.3thparty_helper"
73:
1.7 misho 74: for i in ${CROSS_3THPARTY}; do
1.8 ! misho 75: MK=$(eval echo "\$${i}_MAKE")
! 76: env CFLAGS="-I${PKG}/include" LDFLAGS="-L${PKG}/lib" ${BUILD_SH} \
! 77: $i $MK ${PKG} ${TARGET_BUILD} || Die "ERROR:: with $i packet!"
1.7 misho 78: done
1.6 misho 79:
1.5 misho 80: echo
1.3 misho 81: }
82:
83: install_3th()
84: {
85: LIBS="${ROMFS_USR2}/lib"
86: LIBEXEC="${ROMFS_USR2}/libexec"
87: BIN="${ROMFS_USR2}/bin"
88: SBIN="${ROMFS_USR2}/sbin"
89: ETC="${ROMFS_USR2}/etc"
90:
1.6 misho 91: echo "+++ Install ELWIX RomFS secondary firmware ... ${ROMFS_USR2}"
1.3 misho 92:
93: StripFiles \*.so\* ${PKG}/lib
94: InstallFiles \*.so\* ${PKG}/lib $LIBS
1.7 misho 95: InstallLinks \*.so\* ${PKG}/lib $LIBS
1.3 misho 96: StripFiles \* ${PKG}/libexec
97: InstallFiles \* ${PKG}/libexec $LIBEXEC
98: StripFiles \* ${PKG}/bin
99: InstallFiles \* ${PKG}/bin $BIN
100: StripFiles \* ${PKG}/sbin
101: InstallFiles \* ${PKG}/sbin $SBIN
102:
103: InstallFiles \* ${PKG}/etc $ETC
104:
105: chown -R root:wheel $SBIN $BIN $LIBDATA $LIBEXEC $LIBS
106: }
107:
108: build_3th()
109: {
1.6 misho 110: echo "+++ Build ELWIX Firmware secondary image ... ${ROMFS_USR2} --> ${REL}/${ROMFS_IMG2}"
1.3 misho 111:
112: cd ${ROMFS_USR2}
113: pax -w -z -v -f${REL}/${ROMFS_IMG2} .
114: cd -
1.2 misho 115:
1.3 misho 116: # Stop using uzip fs
117: # makefs -ominfree=0,bsize=8192,fsize=1024,optimization=space -s${ROMFS_SIZE2} \
118: # ${REL}/${ROMFS_IMG2} ${ROMFS_USR2}
119:
120: # MDDEV=$(mdconfig -a -t vnode -f ${REL}/${ROMFS_IMG2});
121: # tunefs -L elwixFirmware2 /dev/$MDDEV;
122: # mdconfig -d -u $MDDEV;
123:
124: # mkuzip -s 8192 -o ${REL}/${ROMFS_IMG2}.uzip ${REL}/${ROMFS_IMG2};
125: # mv ${REL}/${ROMFS_IMG2}.uzip ${REL}/${ROMFS_IMG2}
1.6 misho 126:
127: echo "+++ Complited ELWIX Firmware secondary image ... ${REL}/${ROMFS_IMG2}"
1.2 misho 128: }
129:
130: ### main()
1.7 misho 131: if [ -n "${1}" ]; then
132: rm ${PKG}/elwix.ver
133: fi
134:
1.2 misho 135: if ! SnitVer ${PKG}/elwix.ver; then
1.5 misho 136: clean_3th || exit 1
137: compile_3th || exit 1
1.3 misho 138:
1.5 misho 139: install_3th || exit 1
140: build_3th || exit 1
1.3 misho 141:
142: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${PKG}/elwix.ver
1.2 misho 143: else
144: echo "Skipped ELWIX 3th party build ..."
145: fi
146:
147: echo "+++ Complete build ELWIX 3th party"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>