1: # ELWIX project setup
2: #
3: # (C) AITNET ltd - Sofia/Bulgaria <office@aitnet.org>
4: # by Michael Pounov <misho@elwix.org>
5: #
6: # $Id: rc.elwix.amd64,v 1.1.2.6 2017/01/22 21:36:40 misho Exp $
7: #
8: ELWIX_IS_CONFIGURED="YES"
9:
10: VERSION="2.5_amd64"
11: PLATFORM="elwix"
12: TIMEZONE="Europe/Sofia"
13: BUILD_DATE=`date "+%Y-%m-%d"`
14:
15: TARGET="amd64"
16: TARGET_ARCH="amd64"
17: TARGET_BUILD="${TARGET_ARCH}-${PLATFORM}-freebsd"
18: PARALLEL_BUILD="-j2"
19:
20: CURDIR=$(pwd)
21: CFGDIR="${CURDIR}/config"
22:
23: SRCCONF="${CFGDIR}/src_${TARGET}.conf"
24: MAKECONF="${CFGDIR}/make_${TARGET}.conf"
25:
26: PREDIR=".."
27:
28: # Dont change TOPDIR!!!
29: TOPDIR="${CURDIR}/build/${VERSION}"
30: #
31: BSDSRC="/home/fbsd_work.src/src"
32: PKGSRC="/home/pkgsrc"
33: ADDSRC="/home/misho/work/embedaddon"
34:
35: REL="${TOPDIR}/release"
36: DEST="${TOPDIR}/destdir"
37: OBJS="${TOPDIR}/obj"
38: ADIR="${TOPDIR}/arch"
39:
40: WORLD="${ADIR}/${TARGET_ARCH}/world"
41: KERN="${ADIR}/${TARGET_ARCH}/kernel"
42: KERN_ROOTFS="${ADIR}/${TARGET_ARCH}/kernel.rootfs"
43: KERN_NFS="${ADIR}/${TARGET_ARCH}/kernel.nfs"
44: PKG="${ADIR}/${TARGET_ARCH}/pkg"
45: AIT="${ADIR}/${TARGET_ARCH}"
46: BSDOBJ="${OBJS}/${TARGET_ARCH}"
47: BSDTOOLS="${BSDSRC}/tools/tools"
48: PKGDIR="${WORLD}/elwix/pkg"
49: CROSSTOOLDIR="${BSDOBJ}/${TARGET_ARCH}.${TARGET_ARCH}/${BSDSRC}/tmp"
50:
51: ### Kernel
52: BSDKERNCONF="${BSDSRC}/sys/${TARGET}/conf"
53: KERNDEVHINTS="${BSDKERNCONF}/GENERIC.hints"
54:
55: KERNHINT="ELWIX_amd64.hints"
56:
57: KERNEL="${KERN}/boot/kernel/kernel"
58: KERNCONF="ELWIX_amd64"
59:
60: KERNEL_ROOTFS="${KERN_ROOTFS}/boot/kernel/kernel"
61: KERNCONF_ROOTFS="ELWIX_amd64_ROOTFS"
62:
63: KERNEL_NFS="${KERN_NFS}/boot/kernel/kernel"
64: KERNCONF_NFS="ELWIX_amd64_NFS"
65:
66: ### Rootfs
67: ROOTFS_MKDIR="${ADIR}/${TARGET_ARCH}/elwix"
68: ROOTFS_CONF="elwix_firmware.conf"
69:
70: ROOTFS="${DEST}/rootfs"
71: ROOTFS_ETC="${CFGDIR}/etc/rootfs"
72: ELWIX_ROOTFS="${CFGDIR}/elwix_rootfs.conf"
73:
74: ROOTFS_KERN="kernel_rootfs.gz"
75:
76: ROOTFS_IMG="rootfs.img"
77: ROOTFS_SIZE="9600k"
78:
79: ### tools Firmware
80: LOCALFS_IMG="elwix-pkg.frm"
81:
82: ### 3th party
83: ROMFS_USR2="${DEST}/romfs.pkg"
84: ROMFS_IMG2="elwix-firmware2.sys"
85: #ROMFS_SIZE2="40m"
86:
87: ### RomFS Firmware
88: ROMFS="${DEST}/romfs"
89: ELWIX_ROMFS="${CFGDIR}/elwix_romfs.conf"
90:
91: ROMFS_USR="${ROMFS}/usr"
92: ROMFS_IMG="elwix-firmware.sys"
93: #ROMFS_SIZE="38m"
94:
95: ### Base Firmware
96: BASEFS="${DEST}/base"
97: ELWIX_BASEFS="${CFGDIR}/elwix_base.conf"
98:
99: BASE_FS="${DEST}/base.fs"
100: BASE_ETC="${CFGDIR}/etc/default"
101: BASE_OS="ELWIX-${VERSION}_base_64mb_${TARGET_ARCH}_${BUILD_DATE}.tar.gz"
102:
103: ### FS Image
104: FS="${DEST}/elwix.fs"
105: FS_ETC="${CFGDIR}/etc/default"
106: OS="ELWIX-${VERSION}_rootfs_64mb_${TARGET_ARCH}_${BUILD_DATE}.tar.gz"
107:
108: FS_EXT="${DEST}/elwix_ext.fs"
109: FS_EXT_ETC="${CFGDIR}/etc/default"
110: OS_EXT="ELWIX-${VERSION}_rootfsext_128mb_${TARGET_ARCH}_${BUILD_DATE}.tar.gz"
111:
112: ### Make OS Image
113: IMG_SIZE=62592
114: IMG_SIZE128=125100
115:
116: CFG_NAND_SIZE=262144
117:
118: IMGNAME="${REL}/ELWIX-${VERSION}_${TARGET_ARCH}"
119:
120: ### Cross
121: CBUILD="${DEST}/cross_build.sh"
122: CGBUILD="${DEST}/cross_gbuild.sh"
123: CEXEC="${DEST}/cross_exec.sh"
124: CENV="${DEST}/cross_env.sh"
125:
126: CROSS_FT_ATH="${BSDTOOLS}/ath"
127: CROSS_FT_IPW="${BSDTOOLS}/ipw"
128: CROSS_FT_IWI="${BSDTOOLS}/iwi"
129: CROSS_FT_MWL="${BSDTOOLS}/mwl"
130: CROSS_FT_NET80211="${BSDTOOLS}/net80211"
131: CROSS_FT_VIMAGE="${BSDTOOLS}/vimage"
132: CROSS_FT_WTAP="${BSDTOOLS}/wtap"
133:
134: CROSS_ELWIX="../libelwix"
135: ELWIX_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
136:
137: CROSS_AITIO="../libaitio"
138: AITIO_CFG="./configure --enable-aio --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
139:
140: CROSS_AITCFG="../libaitcfg"
141: AITCFG_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
142:
143: CROSS_AITRPC="../libaitrpc"
144: AITRPC_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
145:
146: CROSS_AITSCHED="../libaitsched"
147: AITSCHED_CFG="./configure --enable-aio --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
148:
149: CROSS_AITWWW="../libaitwww"
150: AITWWW_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
151:
152: CROSS_AITPELCO="../libaitpelco"
153: AITPELCO_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
154:
155: CROSS_AITSYNC="../libaitsync"
156: AITSYNC_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
157:
158: CROSS_AITCLI="../libaitcli"
159: AITCLI_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
160:
161: CROSS_AITMQTT="../libaitmqtt"
162: AITMQTT_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
163:
164: CROSS_EMBEDTOOLS="../embedtools"
165: EMBEDTOOLS_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
166:
167: CROSS_ANSH="../ansh"
168: ANSH_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
169:
170: CROSS_MQTT="../mqtt"
171: MQTT_CFG="./configure --with-sqlite3dir=${WORLD}/usr/local --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
172:
173: CROSS_WIFINATOR="../wifinator"
174: WIFINATOR_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
175:
176: CROSS_TFTPD="../tftpd"
177: TFTPD_CFG="./configure --prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
178:
179: #####
180: [ -r ${CFGDIR}/rc.subr ] && . ${CFGDIR}/rc.subr
181: #####
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>