File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / build.sh
Revision 1.5.2.5: download - view: text, annotated - select for diffs - revision graph
Tue Jan 31 12:41:54 2012 UTC (12 years, 3 months ago) by misho
Branches: elwix1_5
Diff to: branchpoint 1.5: preferred, colored
add iSCSI soft

#!/bin/sh
#
# (C)`10 PKG-Builder for ELWIX by Michael Pounov <misho@elwix.org>
#
# ./build.sh [package] [os_specific_build_set] [prefix_dir] [other_make_opts ...]
#
# $Id: build.sh,v 1.5.2.5 2012/01/31 12:41:54 misho Exp $
#

CMD=$1
MK=${2:-make}
P=${3:-/tmp}
B=$4
PFX="--prefix ${P}"
shift; shift; shift; shift;
echo ">>> Working script ${MK} into ${PFX}"

if [ -n "${B}" ]; then
	PFX="${PFX} --build ${B}"
fi

TOP=$(pwd)
echo ">>> TOPDIR=${TOP}"

case $CMD in
	sudo)
		cd sudo
#		[ ! -r config.log ] && \
		./configure --sysconfdir=/etc --libexecdir=/usr/libexec --with-ignore-dot \
					--with-tty-tickets --with-env-editor --with-logincap \
					--with-long-otp-prompt --with-pam --with-logfac=local2 \
					${PFX}
		${MK} clean
		${MK}
		install src/sudo ${P}/bin
		ln ${P}/bin/sudo ${P}/bin/sudoedit
		install plugins/sudoers/sudoreplay ${P}/bin
		install plugins/sudoers/visudo ${P}/sbin
		install plugins/sudoers/.libs/sudoers.so ${P}/libexec
		install src/.libs/libsudo_noexec.so ${P}/libexec
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ntpd)
		cd ntpd
		${MK} clean
		${MK}
		install ntpd ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	expat)
		cd expat
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	mpd)
		cd libpdel
		${MK} clean
		${MK}
		find . -name \*.so\* -type f -exec install {} ${P}/lib \;
		cd ..
		cd mpd/src
		${MK} clean
		${MK}
		install mpd5 ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	libevent)
		cd libevent
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	mini_sendmail)
		cd mini_sendmail
		${MK} clean
		${MK}
		install mini_sendmail ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	choparp)
		cd choparp
		rm -f choparp
		${MK} choparp
		install choparp ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ttcp)
		cd ttcp
		rm -f ttcp
		${MK} ttcp
		install ttcp ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ifstated)
		cd ifstated
		${MK} clean
		${MK}
		install ifstated ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	trafshow)
		cd trafshow
#		[ ! -r config.log ] && \
		./configure --sysconfdir=/etc ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ipsec-tools)
		cd ipsec-tools
		./configure --enable-shared --sysconfdir=/etc/racoon --localstatedir=/var/db \
				 --enable-debug --enable-ipv6 --enable-adminport --enable-stats \
				 --enable-dpd --enable-natt=yes --enable-frag --enable-hybrid \
				 --without-libpam --with-libradius ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	dhcp)
		cd dhcp
#		[ ! -r config.log ] && \
		./configure --localstatedir=/var --enable-paranoia --enable-early-chroot \
				--enable-dhcpv6 ${PFX}
		${MK} clean
		${MK}
		install server/dhcpd ${P}/sbin
		install relay/dhcrelay ${P}/sbin
		install dhcpctl/omshell ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	dhcping)
		cd dhcping
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	dhcdrop)
		cd dhcdrop
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	mrouted)
		cd mrouted
		${MK} clean
		${MK}
		install map-mbone ${P}/sbin
		install mrinfo ${P}/sbin
		install mrouted ${P}/sbin
		install mtrace ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	igmpproxy)
		cd igmpproxy
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
#		[ ! -r config.log ] && \
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	bmon)
		cd bmon
#		[ ! -r config.log ] && \
		./configure --disable-rrd --disable-asound --disable-dbi ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	iftop)
		cd iftop
#		[ ! -r config.log ] && \
		./configure --with-resolver=netdb_1thread ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	arping)
		echo ">>> Building libnet ..."
		cd libnet
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Building arping ..."
		cd ../arping
#		[ ! -r config.log ] && \
		env LDFLAGS=-L${TOP}/libnet/src CFLAGS=-I${TOP}/libnet/include ./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	hping)
		cd hping
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		install hping2 ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	mtr)
		cd mtr
#		[ ! -r config.log ] && \
		./configure --enable-ipv6 --without-gtk ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ipguard)
		cd ipguard
		${MK} clean
		${MK}
		install ipguard ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ishell)
		cd ishell
		${MK} bsd clean
		${MK} bsd
		install ish ${P}/bin
		install ishd ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	miniupnpd)
		cd miniupnpd
		${MK} clean
		${MK}
		install miniupnpd ${P}/sbin
		install miniupnpdctl ${P}/sbin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	miniupnpc)
		cd miniupnpc
		${MK} clean
		${MK}
		install libminiupnpc.so ${P}/lib
		install external-ip.sh ${P}/bin
		install upnpc-shared ${P}/bin/upnpc
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	strobe)
		cd strobe
		${MK} clean
		${MK}
		install strobe ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	iperf)
		cd iperf
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	smartmontools)
		cd smartmontools
#		[ ! -r config.log ] && \
		./configure --enable-sample --disable-dependency-tracking --enable-drivedb ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	conserver)
		cd conserver
#		[ ! -r config.log ] && \
		./configure --sysconfdir=/etc --with-master=localhost --with-port=782 \
					 --with-pam --with-libwrap --with-openssl ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	coova-chilli)
		cd coova-chilli
#		[ ! -r config.log ] && \
		./configure --localstatedir=/var --sysconfdir=/etc ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	lzo)
		cd lzo
#		[ ! -r config.log ] && \
		./configure --enable-shared ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	libgcrypt)
		cd libgpg-error
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		cd ..
		cd libgcrypt
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	openvpn)
		cd openvpn
#		[ ! -r config.log ] && \
		./configure --enable-password-save --sysconfdir=/etc \
			--with-lzo-headers=../lzo/include --with-lzo-lib=../lzo/src/.libs ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	libiconv)
		cd libiconv
#		[ ! -r config.log ] && \
		./configure --enable-static --without-libintl-prefix ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	quagga)
		cd quagga
#		[ ! -r config.log ] && \
		./configure --enable-user=quagga --enable-group=quagga \
				--sysconfdir=/etc/quagga --localstatedir=/var/run/quagga \
				--enable-vtysh --enable-opaque-lsa --enable-rtadv ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	sqlite3)
		cd sqlite3
#		[ ! -r config.log ] && \
		./configure --disable-tcl --enable-threadsafe --enable-load-extension --without-tcl ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	mysql)
		cd mysql
#		[ ! -r config.log ] && \
		./configure --localstatedir=/var/db/mysql --without-debug --without-readline \
			--without-libedit --with-libwrap --with-low-memory \
			--enable-thread-safe-client --with-plugins=max-no-ndb --enable-assembler \
			--with-named-thread-libs=-pthread --with-embedded-server \
			--with-unix-socket-path=/tmp/mysql.sock ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	pwgen)
		cd pwgen
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	curl)
		cd curl
#		[ ! -r config.log ] && \
		./configure --enable-pop3 --enable-smtp --enable-imap --enable-rtsp \
			--disable-threaded-resolver --disable-werror --with-ssl=/usr \
			--disable-ares --without-gnutls --enable-ipv6 --without-krb4 \
			--disable-ldap --disable-ldaps --without-libidn --without-libssh2 \
			--without-librtmp --disable-curldebug --disable-ntlm --enable-proxy ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	pcre)
		cd pcre
#		[ ! -r config.log ] && \
		./configure --enable-utf8 --enable-unicode-properties ${PFX}
		${MK} clean
		${MK}
		${MK} install
#		install .libs/libpcre.so.* ${P}/lib
#		install .libs/libpcreposix.so.* ${P}/lib
#		install .libs/libpcrecpp.so.* ${P}/lib
#		rm -f ${P}/lib/libpcrecpp.so*T ${P}/lib/libpcreposix.so*T
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	spawn-fcgi)
		cd spawn-fcgi
#		[ ! -r config.log ] && \
		./configure ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	lighttpd)
		cd lighttpd
#		[ ! -r config.log ] && \
		./configure --enable-static --with-openssl ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	php)
		cd libxml2
#		[ ! -r config.log ] && \
		./configure --without-python ${PFX}
		${MK} clean
		${MK}
		${MK} install
#		install xml2-config ${P}/bin
#		install .libs/libxml2.so.* ${P}/lib
		cd ..
		cd php
#		[ ! -r config.log ] && \
		./configure --localstatedir=/var --with-config-file-scan-dir=/etc/php --disable-all \
			--enable-xml --enable-libxml --with-libxml-dir=${P} --with-openssl \
			--enable-zip --enable-sqlite-utf8 ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	scan_ffs)
		cd scan_ffs
		${MK} clean
		${MK}
		install scan_ffs ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	rsync)
		cd rsync
		./configure.sh --disable-debug --enable-ipv6 --with-rsyncd-conf=/etc/rsyncd.conf \
			--disable-iconv --with-included-popt ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	pciutils)
		cd pciutils
		${MK} clean
		${MK}
		install lspci ${P}/bin
		install setpci ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	pure-ftpd)
		cd pure-ftpd
		./configure --with-everything --with-paranoidmsg --sysconfdir=/etc --localstatedir=/var \
			--with-privsep --with-peruserlimits --with-throttling --with-tls --with-pam \
			--with-uploadscript --with-rfc2640 --with-sendfile --enable-largefile \
			--with-virtualchroot ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	ladvd)
		cd ladvd
		./configure --with-chroot-dir=/var/empty ${PFX}
		${MK} clean
		${MK}
		${MK} install
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	istgt)
		cd istgt
		./configure ${PFX}
		${MK} clean
		${MK}
		install istgt ${P}/bin
		install istgtcontrol ${P}/bin
		echo ">>> Now rebuild elwix firmware image ..."
		;;
	*)
		echo "Package not supported at this moment ..."
		exit 1
esac

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>