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 2013/01/28 01:49:49 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: ${PFX}
55: ${MK} clean
56: ${MK}
57: install src/sudo ${P}/bin
58: ln ${P}/bin/sudo ${P}/bin/sudoedit
59: install plugins/sudoers/sudoreplay ${P}/bin
60: install plugins/sudoers/visudo ${P}/sbin
61: install plugins/sudoers/.libs/sudoers.so ${P}/libexec
62: install src/.libs/libsudo_noexec.so ${P}/libexec
63: echo ">>> Now rebuild elwix $CMD program ..."
64: ;;
65: expat)
66: cd expat
67: ./configure ${PFX}
68: ${MK} clean
69: ${MK}
70: ${MK} install
71: echo ">>> Now rebuild elwix $CMD program ..."
72: ;;
73: mpd)
74: cd libpdel
75: ${MK} clean
76: ${MK}
77: find . -name \*.so\* -type f -exec install {} ${P}/lib \;
78: cd ..
79: cd mpd/src
80: ${MK} clean
81: ${MK}
82: install mpd5 ${P}/sbin
83: echo ">>> Now rebuild elwix $CMD program ..."
84: ;;
85: libevent)
86: cd libevent
87: ./configure ${PFX}
88: ${MK} clean
89: ${MK}
90: ${MK} install
91: echo ">>> Now rebuild elwix $CMD program ..."
92: ;;
93: mini_sendmail)
94: cd mini_sendmail
95: ${MK} clean
96: ${MK}
97: install mini_sendmail ${P}/sbin
98: echo ">>> Now rebuild elwix $CMD program ..."
99: ;;
100: choparp)
101: cd choparp
102: rm -f choparp
103: ${MK} choparp
104: install choparp ${P}/sbin
105: echo ">>> Now rebuild elwix $CMD program ..."
106: ;;
107: ttcp)
108: cd ttcp
109: rm -f ttcp
110: ${MK} ttcp
111: install ttcp ${P}/bin
112: echo ">>> Now rebuild elwix $CMD program ..."
113: ;;
114: trafshow)
115: cd trafshow
116: ./configure --sysconfdir=/etc ${PFX}
117: ${MK} clean
118: ${MK}
119: ${MK} install
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}
129: ${MK} clean
130: ${MK}
131: ${MK} install
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}
138: ${MK} clean
139: ${MK}
140: install server/dhcpd ${P}/sbin
141: install relay/dhcrelay ${P}/sbin
142: install dhcpctl/omshell ${P}/bin
143: echo ">>> Now rebuild elwix $CMD program ..."
144: ;;
145: dhcping)
146: cd dhcping
147: ./configure ${PFX}
148: ${MK} clean
149: ${MK}
150: ${MK} install
151: echo ">>> Now rebuild elwix $CMD program ..."
152: ;;
153: dhcdrop)
154: cd dhcdrop
155: ./configure ${PFX}
156: ${MK} clean
157: ${MK}
158: ${MK} install
159: echo ">>> Now rebuild elwix $CMD program ..."
160: ;;
161: mrouted)
162: cd mrouted
163: ${MK} clean
164: ${MK}
165: install map-mbone ${P}/sbin
166: install mrinfo ${P}/sbin
167: install mrouted ${P}/sbin
168: install mtrace ${P}/sbin
169: echo ">>> Now rebuild elwix $CMD program ..."
170: ;;
171: igmpproxy)
172: cd igmpproxy
173: ./configure ${PFX}
174: ${MK} clean
175: ${MK}
176: ${MK} install
177: echo ">>> Now rebuild elwix $CMD program ..."
178: ;;
179: bmon)
180: cd bmon
181: ./configure --disable-rrd --disable-asound --disable-dbi ${PFX}
182: ${MK} clean
183: ${MK}
184: ${MK} install
185: echo ">>> Now rebuild elwix $CMD program ..."
186: ;;
187: iftop)
188: cd iftop
189: ./configure --with-resolver=netdb_1thread ${PFX}
190: ${MK} clean
191: ${MK}
192: ${MK} install
193: echo ">>> Now rebuild elwix $CMD program ..."
194: ;;
195: arping)
196: echo ">>> Building libnet ..."
197: cd libnet
198: ./configure ${PFX}
199: ${MK} clean
200: ${MK}
201: ${MK} install
202: echo ">>> Building arping ..."
203: cd ../arping
204: env LDFLAGS=-L${TOP}/libnet/src CFLAGS=-I${TOP}/libnet/include ./configure ${PFX}
205: ${MK} clean
206: ${MK}
207: ${MK} install
208: echo ">>> Now rebuild elwix $CMD program ..."
209: ;;
210: hping2)
211: cd hping2
212: ./configure ${PFX}
213: ${MK} clean
214: ${MK}
215: install hping2 ${P}/sbin
216: echo ">>> Now rebuild elwix $CMD program ..."
217: ;;
218: mtr)
219: cd mtr
220: ./configure --enable-ipv6 --without-gtk ${PFX}
221: ${MK} clean
222: ${MK}
223: ${MK} install
224: echo ">>> Now rebuild elwix $CMD program ..."
225: ;;
226: ipguard)
227: cd ipguard
228: ${MK} clean
229: ${MK}
230: install ipguard ${P}/sbin
231: echo ">>> Now rebuild elwix $CMD program ..."
232: ;;
233: miniupnpd)
234: cd miniupnpd
235: ${MK} clean
236: ${MK}
237: install miniupnpd ${P}/sbin
238: install miniupnpdctl ${P}/sbin
239: echo ">>> Now rebuild elwix $CMD program ..."
240: ;;
241: miniupnpc)
242: cd miniupnpc
243: ${MK} clean
244: ${MK}
245: install libminiupnpc.so ${P}/lib
246: install external-ip.sh ${P}/bin
247: install upnpc-shared ${P}/bin/upnpc
248: echo ">>> Now rebuild elwix $CMD program ..."
249: ;;
250: smartmontools)
251: cd smartmontools
252: ./configure --enable-sample --disable-dependency-tracking --enable-drivedb ${PFX}
253: ${MK} clean
254: ${MK}
255: ${MK} install
256: echo ">>> Now rebuild elwix $CMD program ..."
257: ;;
258: coova-chilli)
259: cd coova-chilli
260: ./configure --localstatedir=/var --sysconfdir=/etc ${PFX}
261: ${MK} clean
262: ${MK}
263: ${MK} install
264: echo ">>> Now rebuild elwix $CMD program ..."
265: ;;
266: libiconv)
267: cd libiconv
268: ./configure --enable-static --without-libintl-prefix ${PFX}
269: ${MK} clean
270: ${MK}
271: ${MK} install
272: echo ">>> Now rebuild elwix $CMD program ..."
273: ;;
274: quagga)
275: cd quagga
276: ./configure --enable-user=quagga --enable-group=quagga \
277: --sysconfdir=/etc/quagga --localstatedir=/var/run/quagga \
278: --enable-vtysh --enable-opaque-lsa --enable-rtadv ${PFX}
279: ${MK} clean
280: ${MK}
281: ${MK} install
282: echo ">>> Now rebuild elwix $CMD program ..."
283: ;;
284: pcre)
285: cd pcre
286: ./configure --enable-utf8 --enable-unicode-properties ${PFX}
287: ${MK} clean
288: ${MK}
289: ${MK} install
290: # install .libs/libpcre.so.* ${P}/lib
291: # install .libs/libpcreposix.so.* ${P}/lib
292: # install .libs/libpcrecpp.so.* ${P}/lib
293: # rm -f ${P}/lib/libpcrecpp.so*T ${P}/lib/libpcreposix.so*T
294: echo ">>> Now rebuild elwix $CMD program ..."
295: ;;
296: libxml2)
297: cd libxml2
298: ./configure --without-python ${PFX}
299: ${MK} clean
300: ${MK}
301: ${MK} install
302: echo ">>> Now rebuild elwix $CMD program ..."
303: ;;
304: php)
305: cd php
306: ./configure --with-layout=GNU --localstatedir=/var --with-config-file-scan-dir=/etc/php \
307: --disable-all --enable-libxml --enable-xml --with-libxml-dir=${P} --with-openssl \
308: --enable-zip --enable-sqlite-utf8 ${PFX}
309: ${MK} clean
310: ${MK}
311: ${MK} install
312: # strip -s ${P}/bin/php
313: rm -f ${P}/bin/php
314: strip -s ${P}/bin/php-cgi
315: echo ">>> Now rebuild elwix $CMD program ..."
316: ;;
317: scan_ffs)
318: cd scan_ffs
319: ${MK} clean
320: ${MK}
321: install scan_ffs ${P}/bin
322: echo ">>> Now rebuild elwix $CMD program ..."
323: ;;
324: rsync)
325: cd rsync
326: ./configure.sh --disable-debug --enable-ipv6 --with-rsyncd-conf=/etc/rsyncd.conf \
327: --disable-iconv --with-included-popt ${PFX}
328: ${MK} clean
329: ${MK}
330: ${MK} install
331: echo ">>> Now rebuild elwix $CMD program ..."
332: ;;
333: pciutils)
334: cd pciutils
335: ${MK} clean
336: ${MK}
337: install lspci ${P}/bin
338: install setpci ${P}/bin
339: echo ">>> Now rebuild elwix $CMD program ..."
340: ;;
341: istgt)
342: cd istgt
343: ./configure --enable-symlink-device ${PFX}
344: ${MK} clean
345: ${MK}
346: install src/istgt ${P}/bin
347: install src/istgtcontrol ${P}/bin
348: echo ">>> Now rebuild elwix $CMD program ..."
349: ;;
350: ntp)
351: cd ntp
352: ./configure --without-ntpsnmpd --with-crypto --enable-ipv6 --enable-BANCOMM \
353: --enable-GPSVME --enable-ACTS --enable-ARBITER --enable-ARCRON_MSF \
354: --enable-AS2201 --enable-ATOM --enable-CHRONOLOG --enable-CHU \
355: --enable-AUDIO_CHU --enable-DATUM --enable-DUMBCLOCK --enable-FG \
356: --enable-HEATH --enable-HOPFSERIAL --enable-HOPFPCI --enable-HPGPS \
357: --enable-IRIG --enable-JJY --enable-JUPITER --enable-LEITCH \
358: --enable-LOCAL_CLOCK --enable-MX4200 --enable-NEOCLOCK4X --enable-NMEA \
359: --enable-ONCORE --enable-PALISADE --enable-PCF --enable-PST \
360: --enable-RIPENCC --enable-SHM --enable-SPECTRACOM --enable-TRUETIME \
361: --enable-ULINK --enable-WWV --enable-ZYFER --enable-COMPUTIME \
362: --enable-DCF7000 --enable-HOPF6021 --enable-MEINBERG --enable-RAWDCF \
363: --enable-RCC8000 --enable-SCHMID --enable-TRIMTAIP --enable-TRIMTSIP \
364: --enable-WHARTON --enable-VARITEXT ${PFX}
365: ${MK} clean
366: ${MK}
367: ${MK} install
368: echo ">>> Now rebuild elwix $CMD program ..."
369: ;;
370: *)
371: echo "Package not supported at this moment ..."
372: exit 1
373: esac
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>