Permalink
Browse files

Put back spl/zfs for now. Some pathing problems with the ones in offi…

…cial tree. Still need to update EAPI on these
  • Loading branch information...
1 parent fd72d17 commit b525f1083c3d02cd668e444788d63cfce8d248a4 @pendor committed Feb 1, 2012
View
@@ -3,8 +3,6 @@ Gentoo ZFS Overlay
This project provides a Gentoo overlay to provide ebuilds for packages necessary to support ZFS on Gentoo from Brian Behlendorf's ZFSonLinux port. This fork tracks work done to better integrate ZFS with Gentoo's filesystem structure and to match work done to genkernel to get a working Root on ZFS.
-Note that at this time, this overlay doesn't actually provide ebuilds for the spl package. Both that and zfs are now available from the main Portage tree. An ebuild of zfs is provided to deal with some on-going patching related to udev & Dracut, though it is anticipated that ebuild will be removed once patches are migrated upstream.
-
This overlay's primary goal is to provide builds for modified versions of Grub, Genkernel, Dracut, and any other packages necessary to boot from a ZFS root device.
Using this overlay
View
@@ -1,3 +1,3 @@
AUX zfs-0.6.0-rc6-includedir.patch 511 RMD160 ccf8e4d8beb707ee5b7573db325e96b13ee75b07 SHA1 66724930413944dc01006b4b5cde62ca625ea457 SHA256 2c74fb746d8071e718e0e6ff22f0980a397531cd52f1169eeb8ec74f9b7578a9
-EBUILD zfs-9999.ebuild 3001 RMD160 84dfc73f3a90a8d81c79981f552aaa0832305336 SHA1 3816d50c79122713c0a5a20303ecf068cfb1bc20 SHA256 4684142fc6c4bbdf4209f4da2d8df852b3ff95c17c14708ccec136f90aef6ed2
+EBUILD zfs-9999.ebuild 3012 RMD160 3848e7205ff306e9f7a8386a63807d2d15fa1127 SHA1 6a0d911cd714308c05fa9c3dc5fc4228de1ec9c6 SHA256 5ffd33e636952d717948e13b7eef77ddf1a5078f7069e4cf7286ca1b983ded9a
MISC metadata.xml 160 RMD160 1233ca29861ca7c47f0b09d1d7a29def80f7df02 SHA1 1bfdc9d282a84c95e2bdcda19ace5b94e2e67349 SHA256 56717bdb03ad5d833acecfbc612a67f569256b328bf610fbc6cc33714186dae9
@@ -13,7 +13,7 @@ HOMEPAGE="http://zfsonlinux.org/"
LICENSE="CDDL GPL-2"
SLOT="0"
KEYWORDS=""
-IUSE=""
+IUSE="static-libs"
DEPEND="
>=sys-kernel/spl-${PV}
View
@@ -0,0 +1,3 @@
+AUX spl-0.6.0-rc6-includedir.patch 977 RMD160 d00103b03d501c08ee1b90fa109758d9ffff6898 SHA1 cc7fdad6f55c11176c6001f0728465f78be3cdd9 SHA256 de8abe0f3811c3d2bb740108e1baf9a80d52ac225ef6df19e39fa21a7d513b60
+EBUILD spl-9999.ebuild 1977 RMD160 abbd3b029cbea4f866be3bcd63927df14f8fa7cb SHA1 fcf56f7122ed01da47e97910f97f36a0b5759761 SHA256 cb7423eaffaeaa85757cec9bc9371a7598a38b396f8ffa85635e102e122b4bcb
+MISC metadata.xml 160 RMD160 1233ca29861ca7c47f0b09d1d7a29def80f7df02 SHA1 1bfdc9d282a84c95e2bdcda19ace5b94e2e67349 SHA256 56717bdb03ad5d833acecfbc612a67f569256b328bf610fbc6cc33714186dae9
@@ -0,0 +1,22 @@
+--- spl-9999/include/Makefile.am~ 2012-01-22 14:22:53.000000000 -0500
++++ spl-9999/include/Makefile.am 2012-01-22 14:25:40.325390010 -0500
+@@ -16,7 +16,7 @@
+
+ install-data-local:
+ release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+- instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
++ instdest=$(DESTDIR)/${includedir}/spl; \
+ instfiles=`find . -name '*.h'`; \
+ for instfile in $$instfiles; do \
+ $(INSTALL) -D $$instfile $$instdest/$$instfile; \
+--- spl-9999/Makefile.am~ 2012-01-22 14:02:20.000000000 -0500
++++ spl-9999/Makefile.am 2012-01-22 14:05:09.044774782 -0500
+@@ -31,7 +31,7 @@
+ if CONFIG_KERNEL
+ install-data-local:
+ release=$(SPL_META_VERSION)-$(SPL_META_RELEASE); \
+- instdest=$(DESTDIR)/usr/src/spl-$$release/$(LINUX_VERSION); \
++ instdest=$(DESTDIR)/${includedir}/spl; \
+ echo "$$release" >$$instdest/spl.release; \
+ for instfile in $(noinst_HEADERS) module/$(LINUX_SYMBOLS); do \
+ $(INSTALL) -D $$instfile $$instdest/$$instfile; \
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>cluster</herd>
+</pkgmetadata>
@@ -0,0 +1,78 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI="2"
+
+WANT_AUTOMAKE="1.11"
+AT_M4DIR=./config # for aclocal called by eautoreconf
+
+DESCRIPTION="Solaris Porting Layer - a Linux kernel module providing some Solaris kernel APIs"
+HOMEPAGE="http://zfsonlinux.org/"
+
+LICENSE="|| ( GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+DEPEND=""
+RDEPEND=""
+
+if [[ ${PV} == 9999* ]] ; then
+ SRC_URI=""
+ EGIT_REPO_URI="https://github.com/zfsonlinux/spl.git"
+ inherit git-2 linux-info eutils autotools linux-mod
+else
+ MY_P=${P/_rc/-rc}
+ inherit linux-info eutils autotools linux-mod
+ SRC_URI="mirror://gentoo/${MY_P}.tar.gz
+ https://github.com/downloads/zfsonlinux/spl/${MY_P}.tar.gz"
+ S=${WORKDIR}/${MY_P}
+fi
+
+src_unpack() {
+ if [[ ${PV} == 9999* ]] ; then
+ git-2_src_unpack
+ else
+ unpack ${MY_P}.tar.gz
+ fi
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.6.0-rc6-includedir.patch
+ eautoreconf
+}
+
+pkg_setup() {
+ linux-mod_pkg_setup
+ kernel_is ge 2 6 32 || die "Your kernel is too old. ${CATEGORY}/${PN} need 2.6.32 or newer."
+ linux_config_exists || die "Your kernel sources are unconfigured."
+ if linux_chkconfig_present PREEMPT; then
+ eerror "${CATEGORY}/${PN} doesn't currently work with PREEMPT kernel."
+ eerror "Please look at bug https://github.com/zfsonlinux/zfs/issues/83 ."
+ die "PREEMPT kernel"
+ fi
+}
+
+src_configure() {
+ set_arch_to_kernel
+ econf \
+ --with-config=all \
+ --with-linux="${KERNEL_DIR}" \
+ --with-linux-obj="${KERNEL_DIR}"
+}
+
+src_compile() {
+ # Not sure why, but jumping straight to make install seems to leave
+ # module/Module.symvers missing. make, then make install works.
+ set_arch_to_kernel
+ emake || die 'emake install failed'
+}
+
+src_install() {
+ set_arch_to_kernel
+ emake DESTDIR="${D}" install || die 'emake install failed'
+ find "${D}/usr/include/" -type f -exec chmod a-x "{}" \;
+ dosym /usr/include/spl/spl_config.h /usr/include/spl/module/spl_config.h \
+ || die
+}

0 comments on commit b525f10

Please sign in to comment.