1: #!/bin/sh
2: #
3: # ELWIX build script for kernel
4: #
5: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
6: # by Michael Pounov <misho@elwix.org>
7: #
8: # $Id: build_kernel.sh,v 1.1.1.1 2011/07/05 23:43:00 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 -o ! -d ${BSDKERNCONF} ]; then
20: echo
21: echo "ELWIX project is not configured - missing BSD sources !?!"
22: echo
23: exit 1
24: fi
25:
26: if [ "${USER}" != "root" ]; then
27: echo
28: echo "ELWIX project is not configured - BSD kernel must compile under root !?!"
29: echo
30: exit 1
31: fi
32:
33: clean_kernel()
34: {
35: echo "+++ Clean ELWIX Kernel ..."
36: rm -rf $KERN
37: mkdir -p $KERN
38:
39: ln -sf $(pwd)/config/${KERNCONF} ${BSDKERNCONF}
40: }
41:
42: build_kernel()
43: {
44: echo "+++ Build ELWIX Kernel ..."
45: cd $BSDSRC
46: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
47: -j${PARALLEL_BUILD} buildkernel KERNCONF=${KERNCONF} DESTDIR=${KERN}
48: cd -
49: }
50:
51: install_kernel()
52: {
53: echo "+++ Install ELWIX Kernel ..."
54: cd $BSDSRC
55: env MAKEOBJDIRPREFIX=${BSDOBJ} make TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
56: installkernel KERNCONF=${KERNCONF} DESTDIR=${KERN}
57: cd -
58:
59: echo "ELWIX Platform:${PLATFORM} Version:${VERSION} TargetArch:${TARGET_ARCH}" >${KERN}/elwix.ver
60: }
61:
62: ### main()
63: if ! SnitVer ${KERN}/elwix.ver; then
64: clean_kernel
65: build_kernel
66: install_kernel
67: else
68: echo "Skipped ELWIX Kernel build ..."
69: fi
70:
71: echo "+++ Complete build ELWIX Kernel"
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>