diff options
author | Stefaan De Roeck <stefaan@gentoo.org> | 2008-02-22 14:47:21 +0000 |
---|---|---|
committer | Stefaan De Roeck <stefaan@gentoo.org> | 2008-02-22 14:47:21 +0000 |
commit | 421e651b7270ae05ec2773813d25b09a5f747f5f (patch) | |
tree | 6dfcf3a6dbe0b8bc974ef31870776aa454d3dfbf /net-fs/openafs | |
parent | Add version pulled from stable-cvs for linux-2.6.24 compatibility (bug #207882) (diff) | |
download | historical-421e651b7270ae05ec2773813d25b09a5f747f5f.tar.gz historical-421e651b7270ae05ec2773813d25b09a5f747f5f.tar.bz2 historical-421e651b7270ae05ec2773813d25b09a5f747f5f.zip |
Add version pulled from stable-cvs for linux-2.6.24 compatibility (bug #207882), keep more symbols in shared libraries (bug #202489)
Package-Manager: portage-2.1.3.19
Diffstat (limited to 'net-fs/openafs')
-rw-r--r-- | net-fs/openafs/ChangeLog | 9 | ||||
-rw-r--r-- | net-fs/openafs/files/openafs-1.4.5-shared-libs.patch | 27 | ||||
-rw-r--r-- | net-fs/openafs/openafs-1.4.6_p20080222.ebuild | 156 |
3 files changed, 191 insertions, 1 deletions
diff --git a/net-fs/openafs/ChangeLog b/net-fs/openafs/ChangeLog index 369990373c9b..a3d3751e425d 100644 --- a/net-fs/openafs/ChangeLog +++ b/net-fs/openafs/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-fs/openafs # Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/ChangeLog,v 1.137 2008/01/02 14:01:23 stefaan Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/ChangeLog,v 1.138 2008/02/22 14:47:20 stefaan Exp $ + +*openafs-1.4.6_p20080222 (22 Feb 2008) + + 22 Feb 2008; Stefaan De Roeck <stefaan@gentoo.org> + +files/openafs-1.4.5-shared-libs.patch, +openafs-1.4.6_p20080222.ebuild: + Add version pulled from stable-cvs for linux-2.6.24 compatibility (bug + #207882), keep more symbols in shared libraries (bug #202489) 02 Jan 2008; Stefaan De Roeck <stefaan@gentoo.org> openafs-1.4.6.ebuild: Stable on alpha, bug #203573 diff --git a/net-fs/openafs/files/openafs-1.4.5-shared-libs.patch b/net-fs/openafs/files/openafs-1.4.5-shared-libs.patch new file mode 100644 index 000000000000..fa109cf557d2 --- /dev/null +++ b/net-fs/openafs/files/openafs-1.4.5-shared-libs.patch @@ -0,0 +1,27 @@ +diff -Naur openafs-1.4.5/src/shlibafsauthent/Makefile.in openafs-1.4.5.new/src/shlibafsauthent/Makefile.in +--- openafs-1.4.5/src/shlibafsauthent/Makefile.in 2006-08-20 15:17:25.000000000 -0500 ++++ openafs-1.4.5.new/src/shlibafsauthent/Makefile.in 2007-12-16 08:29:31.000000000 -0500 +@@ -115,7 +115,7 @@ + sun*_5*) \ + ${SHLIB_LINKER} -h libafsauthent.${SHLIB_SUFFIX}.${LIBAFSAUTHENTMAJOR} -o ${LIBAFSAUTHENT} ${LIBOBJS} -L${TOP_LIBDIR} -lafsrpc ${MT_LIBS};; \ + *_linux*) \ +- ${SHLIB_LINKER} -Wl,-h,libafsauthent.${SHLIB_SUFFIX}.${LIBAFSAUTHENTMAJOR} -Wl,--version-script=${srcdir}/mapfile -o ${LIBAFSAUTHENT} ${LIBOBJS} -L${TOP_LIBDIR} -lafsrpc ${MT_LIBS};; \ ++ ${SHLIB_LINKER} -Wl,-h,libafsauthent.${SHLIB_SUFFIX}.${LIBAFSAUTHENTMAJOR} -o ${LIBAFSAUTHENT} ${LIBOBJS} -L${TOP_LIBDIR} -lafsrpc ${MT_LIBS};; \ + *) \ + ${SHLIB_LINKER} -o ${LIBAFSAUTHENT} ${LIBOBJS} -L${TOP_LIBDIR} -lafsrpc ${MT_LIBS};; \ + esac +diff -Naur openafs-1.4.5/src/shlibafsrpc/Makefile.in openafs-1.4.5.new/src/shlibafsrpc/Makefile.in +--- openafs-1.4.5/src/shlibafsrpc/Makefile.in 2006-08-20 17:24:10.000000000 -0500 ++++ openafs-1.4.5.new/src/shlibafsrpc/Makefile.in 2007-12-16 06:55:18.000000000 -0500 +@@ -150,9 +150,9 @@ + sun*_5*) \ + ${SHLIB_LINKER} -h libafsrpc.${SHLIB_SUFFIX}.${LIBAFSRPCMAJOR} -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ + amd64_linux*) \ +- ${SHLIB_LINKER} -Wl,-h,libafsrpc.${SHLIB_SUFFIX}.${LIBAFSRPCMAJOR} -Wl,--version-script=${srcdir}/mapfile.afs_xdr -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ ++ ${SHLIB_LINKER} -Wl,-h,libafsrpc.${SHLIB_SUFFIX}.${LIBAFSRPCMAJOR} -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ + *_linux*) \ +- ${SHLIB_LINKER} -Wl,-h,libafsrpc.${SHLIB_SUFFIX}.${LIBAFSRPCMAJOR} -Wl,--version-script=${srcdir}/mapfile -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ ++ ${SHLIB_LINKER} -Wl,-h,libafsrpc.${SHLIB_SUFFIX}.${LIBAFSRPCMAJOR} -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ + *) \ + ${SHLIB_LINKER} -o ${LIBAFSRPC} ${LIBOBJS} ${MT_LIBS};; \ + esac diff --git a/net-fs/openafs/openafs-1.4.6_p20080222.ebuild b/net-fs/openafs/openafs-1.4.6_p20080222.ebuild new file mode 100644 index 000000000000..6a9453c13ab4 --- /dev/null +++ b/net-fs/openafs/openafs-1.4.6_p20080222.ebuild @@ -0,0 +1,156 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-fs/openafs/openafs-1.4.6_p20080222.ebuild,v 1.1 2008/02/22 14:47:20 stefaan Exp $ + +inherit flag-o-matic eutils toolchain-funcs versionator pam + +PATCHVER=0.14 +MY_PV_DATE=${PV#*_p} +MY_PV=${PV%_p*} +MY_P=${PN}-${MY_PV} +S=${WORKDIR}/${MY_P} +DESCRIPTION="The OpenAFS distributed file system" +HOMEPAGE="http://www.openafs.org/" +SRC_URI="http://openafs.org/dl/${PN}/${MY_PV}/${MY_P}-src.tar.bz2 + doc? ( http://openafs.org/dl/${PN}/${MY_PV}/${MY_P}-doc.tar.bz2 ) + mirror://gentoo/${PN}-gentoo-${PATCHVER}.tar.bz2 + mirror://gentoo/${PN}-${MY_PV}-cvs${MY_PV_DATE}.patch.bz2" + +LICENSE="IBM openafs-krb5 openafs-krb5-a APSL-2 sun-rpc" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86" +IUSE="debug kerberos pam doc" + +RDEPEND="~net-fs/openafs-kernel-${PV} + pam? ( sys-libs/pam ) + kerberos? ( virtual/krb5 )" + +PATCHDIR=${WORKDIR}/gentoo/patches/$(get_version_component_range 1-2) +CONFDIR=${WORKDIR}/gentoo/configs +SCRIPTDIR=${WORKDIR}/gentoo/scripts + +src_unpack() { + unpack ${A}; cd "${S}" + + # Apply patches to apply chosen compiler settings, fix the hardcoded paths + # to be more FHS friendly, and the fix the incorrect typecasts for va_arg + EPATCH_SUFFIX="patch" epatch ${PATCHDIR} + + # patch up to the specified cvs version + epatch ${DISTDIR}/${MY_P}-cvs${MY_PV_DATE}.patch.bz2 + + # enable UCONTEXT on alpha + epatch "${FILESDIR}"/openafs-alpha-ucontext.patch + # don't use mapfiles to strip symbols (bug #202489) + epatch "${FILESDIR}"/openafs-1.4.5-shared-libs.patch + + # disable XCFLAGS override + sed -i 's/^[ \t]*XCFLAGS.*//' src/cf/osconf.m4 + # disable compiler choice override + sed -i 's/^[ \t]\+\(CC\|CCOBJ\|MT_CC\)="[^ ]*\(.*\)"/\1="${CC}\2"/' src/cf/osconf.m4 + + ./regen.sh || die "Failed: regenerating configure script" +} + +src_compile() { + # cannot use "use_with" macro, as --without-krb5-config crashes the econf + local myconf="" + if use kerberos; then + myconf="--with-krb5-conf=$(type -p krb5-config)" + fi + + # fix linux version at 2.6 + AFS_SYSKVERS=26 \ + XCFLAGS="${CFLAGS}" \ + econf \ + $(use_enable pam) \ + $(use_enable debug) \ + --enable-largefile-fileserver \ + --enable-supergroups \ + --disable-kernel-module \ + ${myconf} || die econf + + emake -j1 all_nolibafs || die "Build failed" +} + +src_install() { + make DESTDIR="${D}" install_nolibafs || die "Installing failed" + + # pam_afs and pam_afs.krb have been installed in irregular locations, fix + if use pam; then + dopammod "${D}"/usr/$(get_libdir)/pam_afs* + rm -f "${D}"/usr/$(get_libdir)/pam_afs* + fi + + # compile_et collides with com_err. Remove it from this package. + rm "${D}"/usr/bin/compile_et + + # avoid collision with mit_krb5's version of kpasswd + (cd "${D}"/usr/bin; mv kpasswd kpasswd_afs) + use doc && (cd "${D}"/usr/share/man/man1; mv kpasswd.1 kpasswd_afs.1) + + # minimal documentation + dodoc ${CONFDIR}/README ${CONFDIR}/CellServDB + + # documentation package + if use doc; then + use pam && doman src/pam/pam_afs.5 + + cp -pPR doc/* "${D}"/usr/share/doc/${PF} + fi + + # Gentoo related scripts + newconfd ${CONFDIR}/openafs-client openafs-client + newconfd ${CONFDIR}/openafs-server openafs-server + newinitd ${SCRIPTDIR}/openafs-client openafs-client + newinitd ${SCRIPTDIR}/openafs-server openafs-server + + # used directories: client + keepdir /etc/openafs + keepdir /var/cache/openafs + + # used directories: server + keepdir /etc/openafs/server + diropts -m0700 + keepdir /var/lib/openafs + keepdir /var/lib/openafs/db + diropts -m0755 + keepdir /var/lib/openafs/logs + + # link logfiles to /var/log + dosym ../lib/openafs/logs /var/log/openafs +} + +pkg_preinst() { + ## Somewhat intelligently install default configuration files + ## (when they are not present) + # CellServDB + if [ ! -e "${ROOT}"etc/openafs/CellServDB ] \ + || grep "GCO Public CellServDB" "${ROOT}"etc/openafs/CellServDB &> /dev/null + then + cp ${CONFDIR}/CellServDB "${D}"etc/openafs + fi + # cacheinfo: use a default location cache, 200 megabyte in size + # (should be safe for about any root partition, the user can increase + # the size as required) + if [ ! -e "${ROOT}"etc/openafs/cacheinfo ]; then + echo "/afs:/var/cache/openafs:200000" > "${D}"etc/openafs/cacheinfo + fi + # ThisCell: default to "openafs.org" + if [ ! -e "${ROOT}"etc/openafs/ThisCell ]; then + echo "openafs.org" > "${D}"etc/openafs/ThisCell + fi +} + +pkg_postinst() { + elog + elog "This installation should work out of the box (at least the" + elog "client part doing global afs-cell browsing, unless you had" + elog "a previous and different configuration). If you want to" + elog "set up your own cell or modify the standard config," + elog "please have a look at the Gentoo OpenAFS documentation" + elog "(warning: it is not yet up to date wrt the new file locations)" + elog + elog "The documentation can be found at:" + elog " http://www.gentoo.org/doc/en/openafs.xml" +} |