1: #!/bin/sh
2: #
3: # (C)`10 PKG-Builder for elwix by Michael Pounov <misho@elwix.org>
4: #
5: # ./build.sh [package] [make_tool] [prefix_dir] [build_arch_str]
6: #
7: # $Id: build.sh,v 1.8.2.3 2013/07/22 11:48:52 misho Exp $
8: #
9:
10: CMD=$1
11: MK=${2:-make}
12: P=${3:-/tmp/elwix}
13: B=$4
14: PFX="--prefix ${P}"
15: shift; shift; shift; shift;
16: echo ">>> Working script ${MK} into ${PFX}"
17:
18: if [ -n "${B}" ]; then
19: PFX="${PFX} --build ${B}"
20: fi
21:
22: TOP=$(pwd)
23: echo ">>> TOPDIR=${TOP}"
24:
25: if [ $P = "/tmp/elwix" ]; then
26: rm -rf /tmp/elwix
27: install -d /tmp/elwix
28: install -d /tmp/elwix/bin
29: install -d /tmp/elwix/include
30: install -d /tmp/elwix/lib
31: install -d /tmp/elwix/libexec
32: install -d /tmp/elwix/man
33: install -d /tmp/elwix/man/man1
34: install -d /tmp/elwix/man/man2
35: install -d /tmp/elwix/man/man3
36: install -d /tmp/elwix/man/man4
37: install -d /tmp/elwix/man/man5
38: install -d /tmp/elwix/man/man6
39: install -d /tmp/elwix/man/man7
40: install -d /tmp/elwix/man/man8
41: install -d /tmp/elwix/man/man9
42: install -d /tmp/elwix/sbin
43: install -d /tmp/elwix/share
44: fi
45:
46: find . -name .deps -type d -exec rm -rf {} \;
47:
48: case $CMD in
49: sudo)
50: cd sudo
51: ./configure --sysconfdir=/etc --libexecdir=/usr/local/libexec --with-ignore-dot \
52: --with-tty-tickets --with-env-editor --with-logincap \
53: --with-long-otp-prompt --with-pam --with-logfac=local2 \
54: --with-bsm-audit ${PFX} || exit 1
55: ${MK} clean || exit 1
56: ${MK} || exit 1
57: install src/sudo ${P}/bin || exit 1
58: ln ${P}/bin/sudo ${P}/bin/sudoedit || exit 1
59: install plugins/sudoers/sudoreplay ${P}/bin || exit 1
60: install plugins/sudoers/visudo ${P}/sbin || exit 1
61: install plugins/sudoers/.libs/sudoers.so ${P}/libexec || exit 1
62: install src/.libs/libsudo_noexec.so ${P}/libexec || exit 1
63: echo ">>> Now rebuild elwix $CMD program ..."
64: ;;
65: expat)
66: cd expat
67: ./configure ${PFX} || exit 1
68: ${MK} clean || exit 1
69: ${MK} || exit 1
70: ${MK} install || exit 1
71: echo ">>> Now rebuild elwix $CMD program ..."
72: ;;
73: mpd)
74: cd libpdel
75: ${MK} clean || exit 1
76: ${MK} || exit 1
77: find . -name \*.so\* -type f -exec install {} ${P}/lib \;
78: cd ..
79: cd mpd/src
80: ${MK} clean || exit 1
81: ${MK} || exit 1
82: install mpd5 ${P}/sbin || exit 1
83: echo ">>> Now rebuild elwix $CMD program ..."
84: ;;
85: libevent)
86: cd libevent
87: ./configure ${PFX} --mandir=${P}/man --infodir=${P}/info || exit 1
88: ${MK} clean || exit 1
89: ${MK} || exit 1
90: ${MK} install || exit 1
91: echo ">>> Now rebuild elwix $CMD program ..."
92: ;;
93: mini_sendmail)
94: cd mini_sendmail
95: ${MK} clean || exit 1
96: ${MK} || exit 1
97: install mini_sendmail ${P}/sbin || exit 1
98: echo ">>> Now rebuild elwix $CMD program ..."
99: ;;
100: choparp)
101: cd choparp
102: rm -f choparp
103: ${MK} choparp || exit 1
104: install choparp ${P}/sbin || exit 1
105: echo ">>> Now rebuild elwix $CMD program ..."
106: ;;
107: ttcp)
108: cd ttcp
109: rm -f ttcp
110: ${MK} ttcp || exit 1
111: install ttcp ${P}/bin || exit 1
112: echo ">>> Now rebuild elwix $CMD program ..."
113: ;;
114: trafshow)
115: cd trafshow
116: ./configure --sysconfdir=/etc ${PFX} || exit 1
117: ${MK} clean || exit 1
118: ${MK} || exit 1
119: ${MK} install || exit 1
120: echo ">>> Now rebuild elwix $CMD program ..."
121: ;;
122: ipsec-tools)
123: cd ipsec-tools
124: ./configure --enable-shared --sysconfdir=/etc/racoon --localstatedir=/var/run \
125: --enable-debug --enable-ipv6 --enable-adminport --enable-stats \
126: --enable-dpd --enable-natt=yes --enable-frag --enable-hybrid \
127: --without-libpam --disable-gssapi --with-libradius --without-libldap \
128: --disable-samode-unspec --disable-rc5 --disable-idea ${PFX} || exit 1
129: ${MK} clean || exit 1
130: ${MK} || exit 1
131: ${MK} install || exit 1
132: echo ">>> Now rebuild elwix $CMD program ..."
133: ;;
134: dhcp)
135: cd dhcp
136: ./configure --localstatedir=/var --enable-paranoia --enable-early-chroot \
137: --enable-dhcpv6 ${PFX} || exit 1
138: ${MK} clean || exit 1
139: ${MK} || exit 1
140: install server/dhcpd ${P}/sbin || exit 1
141: install relay/dhcrelay ${P}/sbin || exit 1
142: install dhcpctl/omshell ${P}/bin || exit 1
143: echo ">>> Now rebuild elwix $CMD program ..."
144: ;;
145: dhcping)
146: cd dhcping
147: ./configure ${PFX} || exit 1
148: ${MK} clean || exit 1
149: ${MK} || exit 1
150: ${MK} install || exit 1
151: echo ">>> Now rebuild elwix $CMD program ..."
152: ;;
153: dhcdrop)
154: cd dhcdrop
155: ./configure ${PFX} || exit 1
156: ${MK} clean || exit 1
157: ${MK} || exit 1
158: ${MK} install || exit 1
159: echo ">>> Now rebuild elwix $CMD program ..."
160: ;;
161: mrouted)
162: cd mrouted
163: ${MK} clean || exit 1
164: ${MK} || exit 1
165: install map-mbone ${P}/sbin || exit 1
166: install mrinfo ${P}/sbin || exit 1
167: install mrouted ${P}/sbin || exit 1
168: install mtrace ${P}/sbin || exit 1
169: echo ">>> Now rebuild elwix $CMD program ..."
170: ;;
171: igmpproxy)
172: cd igmpproxy
173: ./configure ${PFX} || exit 1
174: ${MK} clean || exit 1
175: ${MK} || exit 1
176: ${MK} install || exit 1
177: echo ">>> Now rebuild elwix $CMD program ..."
178: ;;
179: bmon)
180: cd bmon
181: ./configure --disable-rrd --disable-asound --disable-dbi ${PFX} || exit 1
182: ${MK} clean || exit 1
183: ${MK} || exit 1
184: ${MK} install || exit 1
185: echo ">>> Now rebuild elwix $CMD program ..."
186: ;;
187: iftop)
188: cd iftop
189: ./configure --with-resolver=netdb_1thread ${PFX} || exit 1
190: ${MK} clean || exit 1
191: ${MK} || exit 1
192: ${MK} install || exit 1
193: echo ">>> Now rebuild elwix $CMD program ..."
194: ;;
195: arping)
196: echo ">>> Building libnet ..."
197: cd libnet
198: ./configure ${PFX} || exit 1
199: ${MK} clean || exit 1
200: ${MK} || exit 1
201: ${MK} install || exit 1
202: echo ">>> Building arping ..."
203: cd ../arping
204: env LDFLAGS=-L${TOP}/libnet/src CFLAGS=-I${TOP}/libnet/include ./configure ${PFX} || exit 1
205: ${MK} clean || exit 1
206: ${MK} || exit 1
207: ${MK} install || exit 1
208: echo ">>> Now rebuild elwix $CMD program ..."
209: ;;
210: hping2)
211: cd hping2
212: ./configure ${PFX} || exit 1
213: ${MK} clean || exit 1
214: ${MK} || exit 1
215: install hping2 ${P}/sbin || exit 1
216: echo ">>> Now rebuild elwix $CMD program ..."
217: ;;
218: mtr)
219: cd mtr
220: ./configure --enable-ipv6 --without-gtk --without-glib ${PFX} || exit 1
221: ${MK} clean || exit 1
222: ${MK} || exit 1
223: ${MK} install || exit 1
224: echo ">>> Now rebuild elwix $CMD program ..."
225: ;;
226: ipguard)
227: cd ipguard
228: ${MK} clean || exit 1
229: ${MK} || exit 1
230: install ipguard ${P}/sbin || exit 1
231: echo ">>> Now rebuild elwix $CMD program ..."
232: ;;
233: miniupnpd)
234: cd miniupnpd
235: ${MK} clean || exit 1
236: ${MK} || exit 1
237: install miniupnpd ${P}/sbin || exit 1
238: install miniupnpdctl ${P}/sbin || exit 1
239: echo ">>> Now rebuild elwix $CMD program ..."
240: ;;
241: miniupnpc)
242: cd miniupnpc
243: ${MK} clean || exit 1
244: ${MK} || exit 1
245: install libminiupnpc.so ${P}/lib || exit 1
246: install external-ip.sh ${P}/bin || exit 1
247: install upnpc-shared ${P}/bin/upnpc || exit 1
248: echo ">>> Now rebuild elwix $CMD program ..."
249: ;;
250: smartmontools)
251: cd smartmontools
252: ./configure --enable-sample --disable-dependency-tracking --enable-drivedb ${PFX} || exit 1
253: ${MK} clean || exit 1
254: ${MK} || exit 1
255: ${MK} install || exit 1
256: echo ">>> Now rebuild elwix $CMD program ..."
257: ;;
258: libiconv)
259: cd libiconv
260: ./configure --enable-static --without-libintl-prefix ${PFX} || exit 1
261: ${MK} clean || exit 1
262: ${MK} || exit 1
263: ${MK} install || exit 1
264: echo ">>> Now rebuild elwix $CMD program ..."
265: ;;
266: quagga)
267: cd quagga
268: ./configure --enable-user=quagga --enable-group=quagga \
269: --sysconfdir=/etc/quagga --localstatedir=/var/run/quagga \
270: --enable-vtysh --enable-opaque-lsa --enable-rtadv ${PFX} || exit 1
271: ${MK} clean || exit 1
272: ${MK} || exit 1
273: ${MK} install || exit 1
274: echo ">>> Now rebuild elwix $CMD program ..."
275: ;;
276: pcre)
277: cd pcre
278: ./configure --enable-utf --enable-unicode-properties --enable-pcre8 \
279: --enable-pcre16 --enable-pcre32 ${PFX} || exit 1
280: ${MK} clean || exit 1
281: ${MK} || exit 1
282: ${MK} install || exit 1
283: echo ">>> Now rebuild elwix $CMD program ..."
284: ;;
285: libxml2)
286: cd libxml2
287: ./configure --without-python ${PFX} || exit 1
288: ${MK} clean || exit 1
289: ${MK} || exit 1
290: ${MK} install || exit 1
291: echo ">>> Now rebuild elwix $CMD program ..."
292: ;;
293: php)
294: cd php
295: ./configure --with-layout=GNU --localstatedir=/var --with-config-file-scan-dir=/etc/php \
296: --disable-all --enable-libxml --enable-xml --with-libxml-dir=${P} --with-openssl \
297: --enable-zip --enable-sqlite-utf8 ${PFX} || exit 1
298: ${MK} clean || exit 1
299: ${MK} || exit 1
300: ${MK} install || exit 1
301: rm -f ${P}/bin/php
302: strip -s ${P}/bin/php-cgi
303: echo ">>> Now rebuild elwix $CMD program ..."
304: ;;
305: scan_ffs)
306: cd scan_ffs
307: ${MK} clean || exit 1
308: ${MK} || exit 1
309: install scan_ffs ${P}/bin || exit 1
310: echo ">>> Now rebuild elwix $CMD program ..."
311: ;;
312: rsync)
313: cd rsync
314: ./configure.sh --disable-debug --enable-ipv6 --with-rsyncd-conf=/etc/rsyncd.conf \
315: --disable-iconv --with-included-popt ${PFX} || exit 1
316: ${MK} clean || exit 1
317: ${MK} || exit 1
318: ${MK} install || exit 1
319: echo ">>> Now rebuild elwix $CMD program ..."
320: ;;
321: istgt)
322: cd istgt
323: ./configure --enable-symlink-device ${PFX} || exit 1
324: ${MK} clean || exit 1
325: ${MK} || exit 1
326: install src/istgt ${P}/bin || exit 1
327: install src/istgtcontrol ${P}/bin || exit 1
328: echo ">>> Now rebuild elwix $CMD program ..."
329: ;;
330: ntp)
331: cd ntp
332: ./configure --without-ntpsnmpd --with-crypto --enable-ipv6 --enable-BANCOMM \
333: --enable-GPSVME --enable-ACTS --enable-ARBITER --enable-ARCRON_MSF \
334: --enable-AS2201 --enable-ATOM --enable-CHRONOLOG --enable-CHU \
335: --enable-AUDIO_CHU --enable-DATUM --enable-DUMBCLOCK --enable-FG \
336: --enable-HEATH --enable-HOPFSERIAL --enable-HOPFPCI --enable-HPGPS \
337: --enable-IRIG --enable-JJY --enable-JUPITER --enable-LEITCH \
338: --enable-LOCAL_CLOCK --enable-MX4200 --enable-NEOCLOCK4X --enable-NMEA \
339: --enable-ONCORE --enable-PALISADE --enable-PCF --enable-PST \
340: --enable-RIPENCC --enable-SHM --enable-SPECTRACOM --enable-TRUETIME \
341: --enable-ULINK --enable-WWV --enable-ZYFER --enable-COMPUTIME \
342: --enable-DCF7000 --enable-HOPF6021 --enable-MEINBERG --enable-RAWDCF \
343: --enable-RCC8000 --enable-SCHMID --enable-TRIMTAIP --enable-TRIMTSIP \
344: --enable-WHARTON --enable-VARITEXT ${PFX} || exit 1
345: ${MK} clean || exit 1
346: ${MK} || exit 1
347: ${MK} install || exit 1
348: echo ">>> Now rebuild elwix $CMD program ..."
349: ;;
350: *)
351: echo "Package not supported at this moment ..."
352: exit 1
353: esac
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>