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.9 2013/07/22 14:53:16 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: mrouted)
154: cd mrouted
155: ${MK} clean || exit 1
156: ${MK} || exit 1
157: install map-mbone ${P}/sbin || exit 1
158: install mrinfo ${P}/sbin || exit 1
159: install mrouted ${P}/sbin || exit 1
160: install mtrace ${P}/sbin || exit 1
161: echo ">>> Now rebuild elwix $CMD program ..."
162: ;;
163: igmpproxy)
164: cd igmpproxy
165: ./configure ${PFX} || exit 1
166: ${MK} clean || exit 1
167: ${MK} || exit 1
168: ${MK} install || exit 1
169: echo ">>> Now rebuild elwix $CMD program ..."
170: ;;
171: bmon)
172: cd bmon
173: ./configure --disable-rrd --disable-asound --disable-dbi ${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: iftop)
180: cd iftop
181: ./configure --with-resolver=netdb_1thread ${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: arping)
188: echo ">>> Building libnet ..."
189: cd libnet
190: ./configure ${PFX} || exit 1
191: ${MK} clean || exit 1
192: ${MK} || exit 1
193: ${MK} install || exit 1
194: echo ">>> Building arping ..."
195: cd ../arping
196: env LDFLAGS=-L${TOP}/libnet/src CFLAGS=-I${TOP}/libnet/include ./configure ${PFX} || exit 1
197: ${MK} clean || exit 1
198: ${MK} || exit 1
199: ${MK} install || exit 1
200: echo ">>> Now rebuild elwix $CMD program ..."
201: ;;
202: hping2)
203: cd hping2
204: ./configure ${PFX} || exit 1
205: ${MK} clean || exit 1
206: ${MK} || exit 1
207: install hping2 ${P}/sbin || exit 1
208: echo ">>> Now rebuild elwix $CMD program ..."
209: ;;
210: mtr)
211: cd mtr
212: ./configure --enable-ipv6 --without-gtk --without-glib ${PFX} || exit 1
213: ${MK} clean || exit 1
214: ${MK} || exit 1
215: ${MK} install || exit 1
216: echo ">>> Now rebuild elwix $CMD program ..."
217: ;;
218: ipguard)
219: cd ipguard
220: ${MK} clean || exit 1
221: ${MK} || exit 1
222: install ipguard ${P}/sbin || exit 1
223: echo ">>> Now rebuild elwix $CMD program ..."
224: ;;
225: miniupnpd)
226: cd miniupnpd
227: ${MK} clean || exit 1
228: ${MK} || exit 1
229: install miniupnpd ${P}/sbin || exit 1
230: install miniupnpdctl ${P}/sbin || exit 1
231: echo ">>> Now rebuild elwix $CMD program ..."
232: ;;
233: miniupnpc)
234: cd miniupnpc
235: ${MK} clean || exit 1
236: ${MK} || exit 1
237: install libminiupnpc.so ${P}/lib || exit 1
238: install external-ip.sh ${P}/bin || exit 1
239: install upnpc-shared ${P}/bin/upnpc || exit 1
240: echo ">>> Now rebuild elwix $CMD program ..."
241: ;;
242: smartmontools)
243: cd smartmontools
244: ./configure --enable-sample --disable-dependency-tracking --enable-drivedb ${PFX} || exit 1
245: ${MK} clean || exit 1
246: ${MK} || exit 1
247: ${MK} install || exit 1
248: echo ">>> Now rebuild elwix $CMD program ..."
249: ;;
250: libiconv)
251: cd libiconv
252: ./configure --enable-static --without-libintl-prefix ${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: quagga)
259: cd quagga
260: ./configure --enable-user=quagga --enable-group=quagga \
261: --sysconfdir=/etc/quagga --localstatedir=/var/run/quagga \
262: --enable-vtysh --enable-opaque-lsa --enable-rtadv ${PFX} || exit 1
263: ${MK} clean || exit 1
264: ${MK} || exit 1
265: ${MK} install || exit 1
266: echo ">>> Now rebuild elwix $CMD program ..."
267: ;;
268: pcre)
269: cd pcre
270: ./configure --enable-utf --enable-unicode-properties --enable-pcre8 \
271: --enable-pcre16 --enable-pcre32 ${PFX} || exit 1
272: ${MK} clean || exit 1
273: ${MK} || exit 1
274: ${MK} install || exit 1
275: echo ">>> Now rebuild elwix $CMD program ..."
276: ;;
277: libxml2)
278: cd libxml2
279: ./configure --without-python ${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: php)
286: cd php
287: ./configure --with-layout=GNU --localstatedir=/var --with-config-file-scan-dir=/etc/php \
288: --disable-all --enable-libxml --enable-xml --with-libxml-dir=${P} --with-openssl \
289: --enable-zip --enable-sqlite-utf8 ${PFX} || exit 1
290: ${MK} clean || exit 1
291: ${MK} || exit 1
292: ${MK} install || exit 1
293: rm -f ${P}/bin/php
294: strip -s ${P}/bin/php-cgi
295: echo ">>> Now rebuild elwix $CMD program ..."
296: ;;
297: scan_ffs)
298: cd scan_ffs
299: ${MK} clean || exit 1
300: ${MK} || exit 1
301: install scan_ffs ${P}/bin || exit 1
302: echo ">>> Now rebuild elwix $CMD program ..."
303: ;;
304: rsync)
305: cd rsync
306: ./configure.sh --disable-debug --enable-ipv6 --with-rsyncd-conf=/etc/rsyncd.conf \
307: --disable-iconv --with-included-popt ${PFX} || exit 1
308: ${MK} clean || exit 1
309: ${MK} || exit 1
310: ${MK} install || exit 1
311: echo ">>> Now rebuild elwix $CMD program ..."
312: ;;
313: istgt)
314: cd istgt
315: ./configure --enable-symlink-device ${PFX} || exit 1
316: ${MK} clean || exit 1
317: ${MK} || exit 1
318: install src/istgt ${P}/bin || exit 1
319: install src/istgtcontrol ${P}/bin || exit 1
320: echo ">>> Now rebuild elwix $CMD program ..."
321: ;;
322: ntp)
323: cd ntp
324: ./configure --without-ntpsnmpd --with-crypto --enable-ipv6 --enable-BANCOMM \
325: --enable-GPSVME --enable-ACTS --enable-ARBITER --enable-ARCRON_MSF \
326: --enable-AS2201 --enable-ATOM --enable-CHRONOLOG --enable-CHU \
327: --enable-AUDIO_CHU --enable-DATUM --enable-DUMBCLOCK --enable-FG \
328: --enable-HEATH --enable-HOPFSERIAL --enable-HOPFPCI --enable-HPGPS \
329: --enable-IRIG --enable-JJY --enable-JUPITER --enable-LEITCH \
330: --enable-LOCAL_CLOCK --enable-MX4200 --enable-NEOCLOCK4X --enable-NMEA \
331: --enable-ONCORE --enable-PALISADE --enable-PCF --enable-PST \
332: --enable-RIPENCC --enable-SHM --enable-SPECTRACOM --enable-TRUETIME \
333: --enable-ULINK --enable-WWV --enable-ZYFER --enable-COMPUTIME \
334: --enable-DCF7000 --enable-HOPF6021 --enable-MEINBERG --enable-RAWDCF \
335: --enable-RCC8000 --enable-SCHMID --enable-TRIMTAIP --enable-TRIMTSIP \
336: --enable-WHARTON --enable-VARITEXT ${PFX} || exit 1
337: ${MK} clean || exit 1
338: ${MK} || exit 1
339: ${MK} install || exit 1
340: echo ">>> Now rebuild elwix $CMD program ..."
341: ;;
342: *)
343: echo "Package not supported at this moment ..."
344: exit 1
345: esac
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>