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.2.2.10 2019/09/26 13:02:34 misho Exp $
7: #
8: ELWIX_IS_CONFIGURED="YES"
9:
10: VERSION="2.6_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/misho/work/fbsd12/src"
32: ADDSRC="/home/misho/work/embedaddon"
33:
34: REL="${TOPDIR}/release"
35: DEST="${TOPDIR}/destdir"
36: OBJS="${TOPDIR}/obj"
37: ADIR="${TOPDIR}/arch"
38:
39: WORLD="${ADIR}/${TARGET_ARCH}/world"
40: KERN="${ADIR}/${TARGET_ARCH}/kernel"
41: KERN_ROOTFS="${ADIR}/${TARGET_ARCH}/kernel.rootfs"
42: KERN_NFS="${ADIR}/${TARGET_ARCH}/kernel.nfs"
43: PKG="${ADIR}/${TARGET_ARCH}/pkg"
44: AIT="${ADIR}/${TARGET_ARCH}"
45: BSDOBJ="${OBJS}/${TARGET_ARCH}"
46: BSDTOOLS="${BSDSRC}/tools/tools"
47: PKGDIR="${WORLD}/elwix/pkg"
48: CROSSTOOLDIR="${BSDOBJ}/${BSDSRC}/${TARGET}.${TARGET_ARCH}/tmp"
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="12000k"
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_128mb_${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: IMG_SIZE256=251496
116: IMG_SIZE512=500472
117:
118: CFG_NAND_SIZE=524288
119:
120: IMGNAME="${REL}/ELWIX-${VERSION}_${TARGET_ARCH}"
121:
122: ### Cross
123: CBUILD="${DEST}/cross_build.sh"
124: CGBUILD="${DEST}/cross_gbuild.sh"
125: CEXEC="${DEST}/cross_exec.sh"
126: CENV="${DEST}/cross_env.sh"
127:
128: CROSS_FT_ATH="${BSDTOOLS}/ath"
129: CROSS_FT_IPW="${BSDTOOLS}/ipw"
130: CROSS_FT_IWI="${BSDTOOLS}/iwi"
131: CROSS_FT_MWL="${BSDTOOLS}/mwl"
132: CROSS_FT_NET80211="${BSDTOOLS}/net80211"
133: CROSS_FT_VIMAGE="${BSDTOOLS}/vimage"
134: CROSS_FT_WTAP="${BSDTOOLS}/wtap"
135: CROSS_FT_CXGB="${BSDTOOLS}/cxgbtool"
136: CROSS_FT_IFINFO="${BSDTOOLS}/ifinfo"
137: CROSS_FT_MCTEST="${BSDTOOLS}/mctest"
138: CROSS_FT_NETMAP="${BSDTOOLS}/netmap"
139: CROSS_FT_NETBLAST="${BSDTOOLS}/netrate/netblast"
140: CROSS_FT_NETRCV="${BSDTOOLS}/netrate/netreceive"
141: CROSS_FT_NETSND="${BSDTOOLS}/netrate/netsend"
142:
143: CROSS_PATH="../"
144: CROSS_TOOLS="libelwix libaitsched libaitcfg libaitio libaitrpc libaitwww libaitpelco libaitsync libaitcli libaitmqtt embedtools ansh mqtt wifinator tftpd"
145: CROSS_PFX="--prefix=${WORLD}/usr/local --host=${TARGET_BUILD}"
146:
147: # additional options to software // <cross_tools_item>_OPTS
148: libaitio_OPTS="--enable-aio"
149: libaitsched_OPTS="--enable-aio"
150: mqtt_OPTS="--with-sqlite3dir=${WORLD}/usr/local"
151:
152: # 3th party softwares
153: CROSS_3THPATH="../embedaddon/"
154: CROSS_3THPARTY="mini_sendmail rsync
155: ttcp iperf
156: libnet arping
157: hping2 mtr
158: confuse bmon
159: mpd dnsmasq pimd pimdd freevrrpd ipguard choparp
160: readline bird bird6 quagga"
161:
162: mini_sendmail_MAKE="${CBUILD}"
163: rsync_MAKE="${CBUILD}"
164: ttcp_MAKE="${CBUILD}"
165: iperf_MAKE="${CBUILD}"
166: libnet_MAKE="${CBUILD}"
167: arping_MAKE="${CBUILD}"
168: hping2_MAKE="${CBUILD}"
169: mtr_MAKE="${CBUILD}"
170: confuse_MAKE="${CGBUILD}"
171: bmon_MAKE="${CGBUILD}"
172: mpd_MAKE="${CBUILD}"
173: dnsmasq_MAKE="${CBUILD}"
174: pimd_MAKE="${CBUILD}"
175: pimdd_MAKE="${CBUILD}"
176: freevrrpd_MAKE="${CBUILD}"
177: ipguard_MAKE="${CBUILD}"
178: choparp_MAKE="${CBUILD}"
179: readline_MAKE="${CGBUILD}"
180: bird_MAKE="${CGBUILD}"
181: bird6_MAKE="${CGBUILD}"
182: quagga_MAKE="${CBUILD}"
183:
184: #####
185: [ -r ${CFGDIR}/rc.subr ] && . ${CFGDIR}/rc.subr
186: #####
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>