summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexis Ballier <aballier@gentoo.org>2010-03-19 11:51:07 +0000
committerAlexis Ballier <aballier@gentoo.org>2010-03-19 11:51:07 +0000
commitfb0722fdbd33b7df48fc2fb78f5d70bdcadc70df (patch)
tree935925804aa4dc77b8eb60b82b7c86ec716c2a2f /sys-freebsd/freebsd-ubin
parentFix bug 293374 and sync with fedora to solve other issues (diff)
downloadhistorical-fb0722fdbd33b7df48fc2fb78f5d70bdcadc70df.tar.gz
historical-fb0722fdbd33b7df48fc2fb78f5d70bdcadc70df.tar.bz2
historical-fb0722fdbd33b7df48fc2fb78f5d70bdcadc70df.zip
bump to 8.0 from the bsd overlay
Package-Manager: portage-2.2_rc67/cvs/Linux x86_64
Diffstat (limited to 'sys-freebsd/freebsd-ubin')
-rw-r--r--sys-freebsd/freebsd-ubin/ChangeLog9
-rw-r--r--sys-freebsd/freebsd-ubin/files/freebsd-ubin-8.0-bsdar.patch21
-rw-r--r--sys-freebsd/freebsd-ubin/freebsd-ubin-8.0.ebuild145
-rw-r--r--sys-freebsd/freebsd-ubin/metadata.xml7
4 files changed, 181 insertions, 1 deletions
diff --git a/sys-freebsd/freebsd-ubin/ChangeLog b/sys-freebsd/freebsd-ubin/ChangeLog
index a87704743782..963910e3bed2 100644
--- a/sys-freebsd/freebsd-ubin/ChangeLog
+++ b/sys-freebsd/freebsd-ubin/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-freebsd/freebsd-ubin
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-ubin/ChangeLog,v 1.64 2010/03/11 10:55:15 aballier Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-ubin/ChangeLog,v 1.65 2010/03/19 11:50:51 aballier Exp $
+
+*freebsd-ubin-8.0 (19 Mar 2010)
+
+ 19 Mar 2010; Alexis Ballier <aballier@gentoo.org>
+ +freebsd-ubin-8.0.ebuild, +files/freebsd-ubin-8.0-bsdar.patch,
+ metadata.xml:
+ bump to 8.0 from the bsd overlay
11 Mar 2010; Alexis Ballier <aballier@gentoo.org>
-files/freebsd-ubin-6.1-gcc41.patch, -freebsd-ubin-6.2-r2.ebuild,
diff --git a/sys-freebsd/freebsd-ubin/files/freebsd-ubin-8.0-bsdar.patch b/sys-freebsd/freebsd-ubin/files/freebsd-ubin-8.0-bsdar.patch
new file mode 100644
index 000000000000..c966b9b88ad7
--- /dev/null
+++ b/sys-freebsd/freebsd-ubin/files/freebsd-ubin-8.0-bsdar.patch
@@ -0,0 +1,21 @@
+--- usr.bin/ar/Makefile.old 2010-03-12 14:50:30 +0100
++++ usr.bin/ar/Makefile 2010-03-12 14:50:53 +0100
+@@ -1,6 +1,6 @@
+ # $FreeBSD: src/usr.bin/ar/Makefile,v 1.22.2.1.2.1 2009/10/25 01:10:29 kensmith Exp $
+
+-PROG= ar
++PROG= freebsd-ar
+ SRCS= ar.c acplex.l acpyacc.y read.c util.c write.c y.tab.h
+
+ WARNS?= 5
+@@ -10,8 +10,7 @@
+
+ CFLAGS+=-I. -I${.CURDIR}
+
+-NO_SHARED?= yes
+-LINKS= ${BINDIR}/ar ${BINDIR}/ranlib
+-MLINKS= ar.1 ranlib.1
++LINKS= ${BINDIR}/freebsd-ar ${BINDIR}/freebsd-ranlib
++MLINKS= freebsd-ar.1 freebsd-ranlib.1
+
+ .include <bsd.prog.mk>
diff --git a/sys-freebsd/freebsd-ubin/freebsd-ubin-8.0.ebuild b/sys-freebsd/freebsd-ubin/freebsd-ubin-8.0.ebuild
new file mode 100644
index 000000000000..2bd37dbe3d37
--- /dev/null
+++ b/sys-freebsd/freebsd-ubin/freebsd-ubin-8.0.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-freebsd/freebsd-ubin/freebsd-ubin-8.0.ebuild,v 1.1 2010/03/19 11:50:51 aballier Exp $
+
+EAPI=2
+
+inherit bsdmk freebsd flag-o-matic pam
+
+DESCRIPTION="FreeBSD's base system source for /usr/bin"
+SLOT="0"
+KEYWORDS="~sparc-fbsd ~x86-fbsd"
+IUSE="ar atm audit bluetooth ipv6 kerberos netware nis ssl usb build zfs"
+LICENSE="BSD zfs? ( CDDL )"
+
+SRC_URI="mirror://gentoo/${UBIN}.tar.bz2
+ mirror://gentoo/${CONTRIB}.tar.bz2
+ mirror://gentoo/${LIB}.tar.bz2
+ mirror://gentoo/${ETC}.tar.bz2
+ mirror://gentoo/${BIN}.tar.bz2
+ mirror://gentoo/${INCLUDE}.tar.bz2
+ zfs? ( mirror://gentoo/${CDDL}.tar.bz2 )
+ build? ( mirror://gentoo/${SYS}.tar.bz2 )"
+
+RDEPEND="=sys-freebsd/freebsd-lib-${RV}*[usb?,bluetooth?]
+ ssl? ( dev-libs/openssl )
+ kerberos? ( virtual/krb5 )
+ ar? ( app-arch/libarchive )
+ virtual/pam
+ sys-libs/zlib
+ !dev-util/csup"
+
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ !build? ( =sys-freebsd/freebsd-sources-${RV}* )
+ =sys-freebsd/freebsd-mk-defs-${RV}*"
+
+RDEPEND="${RDEPEND}
+ >=sys-auth/pambase-20080219.1
+ sys-process/cronbase"
+
+S="${WORKDIR}/usr.bin"
+
+PATCHES=( "${FILESDIR}/${PN}-6.0-bsdcmp.patch"
+ "${FILESDIR}/${PN}-6.0-fixmakefiles.patch"
+ "${FILESDIR}/${PN}-setXid.patch"
+ "${FILESDIR}/${PN}-lint-stdarg.patch"
+ "${FILESDIR}/${PN}-6.0-kdump-ioctl.patch"
+ "${FILESDIR}/${PN}-8.0-bsdar.patch" )
+
+# Here we remove some sources we don't need because they are already
+# provided by portage's packages or similar. In order:
+# - Archiving tools, provided by their own ebuilds
+# - ncurses stuff
+# - less stuff
+# - bind utils
+# - rsh stuff
+# - binutils gprof
+# and the rest are misc utils we already provide somewhere else.
+REMOVE_SUBDIRS="bzip2 bzip2recover tar cpio
+ gzip gprof
+ tput tset
+ less lessecho lesskey
+ dig hesinfo nslookup nsupdate host
+ rsh rlogin rusers rwho ruptime
+ compile_et lex vi smbutil file vacation nc ftp telnet
+ c99 c89
+ whois tftp"
+
+pkg_setup() {
+ use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
+ use audit || mymakeopts="${mymakeopts} WITHOUT_AUDIT= "
+ use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= "
+ use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT= "
+ use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= "
+ use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= "
+ use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
+ use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= "
+ use usb || mymakeopts="${mymakeopts} WITHOUT_USB= "
+ use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
+}
+
+pkg_preinst() {
+ # bison installs a /usr/bin/yacc symlink ...
+ # we need to remove it to avoid triggering
+ # collision-protect errors
+ if [[ -L ${ROOT}/usr/bin/yacc ]] ; then
+ rm -f "${ROOT}"/usr/bin/yacc
+ fi
+}
+
+src_prepare() {
+ use build || ln -s "/usr/src/sys-${RV}" "${WORKDIR}/sys"
+
+ # Rename manpage for renamed cmp
+ mv "${S}"/cmp/cmp.1 "${S}"/cmp/bsdcmp.1 || die
+ # Rename manpage for renamed ar
+ mv "${S}"/ar/ar.1 "${S}"/ar/freebsd-ar.1 || die
+ # Fix whereis(1) manpath search.
+ sed -i -e 's:"manpath -q":"manpath":' "${S}/whereis/pathnames.h"
+
+ # Build a dynamic make
+ sed -i -e '/^NO_SHARED/ s/^/#/' "${S}"/make/Makefile || die
+
+ # Disable it here otherwise our patch wont apply
+ use ar || dummy_mk ar
+}
+
+src_install() {
+ freebsd_src_install
+
+ # baselayout requires these in /bin
+ dodir /bin
+ for bin in sed; do
+ mv "${D}/usr/bin/${bin}" "${D}/bin/" || die "mv ${bin} failed"
+ dosym /bin/${bin} /usr/bin/${bin} || die "dosym ${bin} failed"
+ done
+
+ for pamdfile in login passwd su; do
+ newpamd "${FILESDIR}/${pamdfile}.1.pamd" ${pamdfile} || die
+ done
+
+ cd "${WORKDIR}/etc"
+ insinto /etc
+ doins remote phones opieaccess fbtab || die
+
+ exeinto /etc/cron.daily
+ newexe "${FILESDIR}/locate-updatedb-cron" locate.updatedb || die
+}
+
+pkg_postinst() {
+ # We need to ensure that login.conf.db is up-to-date.
+ if [[ -e "${ROOT}"etc/login.conf ]] ; then
+ einfo "Updating ${ROOT}etc/login.conf.db"
+ "${ROOT}"usr/bin/cap_mkdb -f "${ROOT}"etc/login.conf "${ROOT}"etc/login.conf
+ elog "Remember to run cap_mkdb /etc/login.conf after making changes to it"
+ fi
+}
+
+pkg_postrm() {
+ # and if we uninstall yacc but keep bison,
+ # lets restore the /usr/bin/yacc symlink
+ if [[ ! -e ${ROOT}/usr/bin/yacc ]] && [[ -e ${ROOT}/usr/bin/yacc.bison ]] ; then
+ ln -s yacc.bison "${ROOT}"/usr/bin/yacc
+ fi
+}
diff --git a/sys-freebsd/freebsd-ubin/metadata.xml b/sys-freebsd/freebsd-ubin/metadata.xml
index 4ddd22c414fb..825b3e07ae29 100644
--- a/sys-freebsd/freebsd-ubin/metadata.xml
+++ b/sys-freebsd/freebsd-ubin/metadata.xml
@@ -10,5 +10,12 @@
Build libraries and tools to work with NetWare protocols (IPX
and NCP).
</flag>
+ <flag name='ar'>
+ Build FreeBSD's ar and ranlib replacements based on libarchive. The
+ toolchain will still use binutils' version but you can play with it.
+ They have been renamed to freebsd-ar and freebsd-ranlib not to collide
+ with binutils.
+ </flag>
+ <flag name='zfs'>Enable ZFS support (for fstat actually).</flag>
</use>
</pkgmetadata>