diff options
Diffstat (limited to 'sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild')
-rw-r--r-- | sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild b/sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild new file mode 100644 index 000000000000..1414707f2c58 --- /dev/null +++ b/sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-pf/freebsd-pf-9.1_rc3.ebuild,v 1.1 2012/11/06 12:56:12 aballier Exp $ + +inherit bsdmk freebsd user + +DESCRIPTION="FreeBSD's base system libraries" +SLOT="0" +KEYWORDS="~amd64-fbsd ~x86-fbsd" + +IUSE="" + +# Crypto is needed to have an internal OpenSSL header +SRC_URI="mirror://gentoo/${USBIN}.tar.bz2 + mirror://gentoo/${SBIN}.tar.bz2 + mirror://gentoo/${CONTRIB}.tar.bz2 + mirror://gentoo/${ETC}.tar.bz2" + +RDEPEND="net-libs/libpcap" +DEPEND="${RDEPEND} + dev-libs/libevent + sys-freebsd/freebsd-mk-defs + =sys-freebsd/freebsd-sources-${RV}*" + +S="${WORKDIR}" + +SUBDIRS="usr.sbin/authpf sbin/pfctl sbin/pflogd usr.sbin/ftp-proxy/ftp-proxy" + +pkg_setup() { + enewgroup authpf 63 + mymakeopts="${mymakeopts} NO_MANCOMPRESS= NO_INFOCOMPRESS= " +} + +src_unpack() { + freebsd_src_unpack + # pcap-int.h redefines snprintf as pcap_snprintf + epatch "${FILESDIR}/${PN}-9.0-pcap_pollution.patch" + # Use system's libevent + epatch "${FILESDIR}/${PN}-9.0-libevent.patch" + epatch "${FILESDIR}/${PN}-9.0-pflogd.patch" + epatch "${FILESDIR}/${PN}-9.0-bpf.patch" + epatch "${FILESDIR}/${PN}-9.0-getline.patch" + # Link in kernel sources + ln -s "/usr/src/sys-${RV}" "${WORKDIR}/sys" +} + +src_compile() { + for dir in ${SUBDIRS}; do + einfo "Starting make in ${dir}" + cd "${S}/${dir}" + mkmake || die "Make ${dir} failed" + done +} + +src_install() { + for dir in ${SUBDIRS}; do + einfo "Starting install in ${dir}" + cd "${S}/${dir}" + mkinstall || die "Install ${dir} failed" + done + + cd "${WORKDIR}"/etc + insinto /etc + doins pf.os + newdoc pf.conf pf.conf.example + # pf.initd provided by openrc, but no pf.confd + newconfd "${FILESDIR}/pf.confd" pf +} |