diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2012-05-01 18:09:27 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2012-05-01 18:09:27 +0000 |
commit | 756e35777df851939ae46faa4db82b9c8e330ad3 (patch) | |
tree | f806d8edff7ac0ad25ea47baf6657c8236ef067f | |
parent | Initial import from the x11 overlay, thanks to alexxy for pointing out instal... (diff) | |
download | gentoo-2-756e35777df851939ae46faa4db82b9c8e330ad3.tar.gz gentoo-2-756e35777df851939ae46faa4db82b9c8e330ad3.tar.bz2 gentoo-2-756e35777df851939ae46faa4db82b9c8e330ad3.zip |
Remove old; move patches to backports tarball (it's in git); add a patch to fix bug #423737 by Kevin Pyle (kernel sources are no longer required for build).
(Portage version: 2.2.0_alpha101/cvs/Linux x86_64)
-rw-r--r-- | app-emulation/lxc/ChangeLog | 11 | ||||
-rw-r--r-- | app-emulation/lxc/files/lxc-0.8.0_rc1-blockmount.patch | 165 | ||||
-rw-r--r-- | app-emulation/lxc/files/lxc-0.8.0_rc1-libtoolize.patch | 89 | ||||
-rw-r--r-- | app-emulation/lxc/files/lxc.initd | 139 | ||||
-rw-r--r-- | app-emulation/lxc/lxc-0.7.5-r3.ebuild | 111 | ||||
-rw-r--r-- | app-emulation/lxc/lxc-0.8.0_rc1-r4.ebuild (renamed from app-emulation/lxc/lxc-0.8.0_rc1-r3.ebuild) | 19 |
6 files changed, 19 insertions, 515 deletions
diff --git a/app-emulation/lxc/ChangeLog b/app-emulation/lxc/ChangeLog index 1df429cc01e7..8c9520f72e7d 100644 --- a/app-emulation/lxc/ChangeLog +++ b/app-emulation/lxc/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for app-emulation/lxc # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.35 2012/04/29 23:48:54 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/ChangeLog,v 1.36 2012/05/01 18:09:26 flameeyes Exp $ + +*lxc-0.8.0_rc1-r4 (01 May 2012) + + 01 May 2012; Diego E. Pettenò <flameeyes@gentoo.org> +lxc-0.8.0_rc1-r4.ebuild, + -files/lxc-0.8.0_rc1-blockmount.patch, -files/lxc-0.8.0_rc1-libtoolize.patch, + -files/lxc.initd, -lxc-0.7.5-r3.ebuild, -lxc-0.8.0_rc1-r3.ebuild: + Remove old; move patches to backports tarball (it's in git); add a patch to + fix bug #423737 by Kevin Pyle (kernel sources are no longer required for + build). 29 Apr 2012; Diego E. Pettenò <flameeyes@gentoo.org> files/lxc.initd.2: Make sure to need the network interface, not use it. diff --git a/app-emulation/lxc/files/lxc-0.8.0_rc1-blockmount.patch b/app-emulation/lxc/files/lxc-0.8.0_rc1-blockmount.patch deleted file mode 100644 index 34e20f508c64..000000000000 --- a/app-emulation/lxc/files/lxc-0.8.0_rc1-blockmount.patch +++ /dev/null @@ -1,165 +0,0 @@ -From dd411d7ae02f75aa2ffe8cd5e6271b36c113d03f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Diego=20Elio=20Petten=C3=B2?= <flameeyes@flameeyes.eu> -Date: Fri, 27 Apr 2012 17:01:33 -0700 -Subject: [PATCH] Workaround requirement to use the realname of the block - device. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Instead of checking always the source path, check the source path if -mounting a directory, and the mount path if mounting a block device or -file. - -Signed-off-by: Diego Elio Pettenò <flameeyes@flameeyes.eu> ---- - src/lxc/conf.c | 38 +++++++++++++++++++++----------------- - src/lxc/conf.h | 1 + - 2 files changed, 22 insertions(+), 17 deletions(-) - -diff --git a/src/lxc/conf.c b/src/lxc/conf.c -index e8088bb..3ba6db6 100644 ---- a/src/lxc/conf.c -+++ b/src/lxc/conf.c -@@ -350,9 +350,9 @@ static int mount_unknow_fs(const char *rootfs, const char *target, int mntopt) - return -1; - } - --static int mount_rootfs_dir(const char *rootfs, const char *target) -+static int mount_rootfs_dir(struct lxc_rootfs *rootfs) - { -- return mount(rootfs, target, "none", MS_BIND | MS_REC, NULL); -+ return mount(rootfs->path, rootfs->mount, "none", MS_BIND | MS_REC, NULL); - } - - static int setup_lodev(const char *rootfs, int fd, struct loop_info64 *loinfo) -@@ -387,7 +387,7 @@ out: - return ret; - } - --static int mount_rootfs_file(const char *rootfs, const char *target) -+static int mount_rootfs_file(struct lxc_rootfs *rootfs) - { - struct dirent dirent, *direntp; - struct loop_info64 loinfo; -@@ -433,9 +433,9 @@ static int mount_rootfs_file(const char *rootfs, const char *target) - - DEBUG("found '%s' free lodev", path); - -- ret = setup_lodev(rootfs, fd, &loinfo); -+ ret = setup_lodev(rootfs->path, fd, &loinfo); - if (!ret) -- ret = mount_unknow_fs(path, target, 0); -+ ret = mount_unknow_fs(path, rootfs->mount, 0); - close(fd); - - break; -@@ -444,21 +444,23 @@ static int mount_rootfs_file(const char *rootfs, const char *target) - if (closedir(dir)) - WARN("failed to close directory"); - -+ rootfs->isblock = 1; - return ret; - } - --static int mount_rootfs_block(const char *rootfs, const char *target) -+static int mount_rootfs_block(struct lxc_rootfs *rootfs) - { -- return mount_unknow_fs(rootfs, target, 0); -+ rootfs->isblock = 1; -+ return mount_unknow_fs(rootfs->path, rootfs->mount, 0); - } - --static int mount_rootfs(const char *rootfs, const char *target) -+static int mount_rootfs(struct lxc_rootfs *rootfs) - { - char absrootfs[MAXPATHLEN]; - struct stat s; - int i; - -- typedef int (*rootfs_cb)(const char *, const char *); -+ typedef int (*rootfs_cb)(struct lxc_rootfs *rootfs); - - struct rootfs_type { - int type; -@@ -469,8 +471,8 @@ static int mount_rootfs(const char *rootfs, const char *target) - { S_IFREG, mount_rootfs_file }, - }; - -- if (!realpath(rootfs, absrootfs)) { -- SYSERROR("failed to get real path for '%s'", rootfs); -+ if (!realpath(rootfs->path, absrootfs)) { -+ SYSERROR("failed to get real path for '%s'", rootfs->path); - return -1; - } - -@@ -489,7 +491,7 @@ static int mount_rootfs(const char *rootfs, const char *target) - if (!__S_ISTYPE(s.st_mode, rtfs_type[i].type)) - continue; - -- return rtfs_type[i].cb(absrootfs, target); -+ return rtfs_type[i].cb(rootfs); - } - - ERROR("unsupported rootfs type for '%s'", absrootfs); -@@ -756,7 +758,7 @@ static int setup_rootfs_pivot_root(const char *rootfs, const char *pivotdir) - return 0; - } - --static int setup_rootfs(const struct lxc_rootfs *rootfs) -+static int setup_rootfs(struct lxc_rootfs *rootfs) - { - if (!rootfs->path) - return 0; -@@ -767,7 +769,7 @@ static int setup_rootfs(const struct lxc_rootfs *rootfs) - return -1; - } - -- if (mount_rootfs(rootfs->path, rootfs->mount)) { -+ if (mount_rootfs(rootfs)) { - ERROR("failed to mount rootfs"); - return -1; - } -@@ -1099,7 +1101,7 @@ static inline int mount_entry_on_systemfs(struct mntent *mntent) - static int mount_entry_on_absolute_rootfs(struct mntent *mntent, - const struct lxc_rootfs *rootfs) - { -- char *aux; -+ char *aux, *rootfs_path; - char path[MAXPATHLEN]; - unsigned long mntflags; - char *mntdata; -@@ -1110,14 +1112,16 @@ static int mount_entry_on_absolute_rootfs(struct mntent *mntent, - return -1; - } - -- aux = strstr(mntent->mnt_dir, rootfs->path); -+ rootfs_path = rootfs->isblock ? rootfs->mount : rootfs->path; -+ -+ aux = strstr(mntent->mnt_dir, rootfs_path); - if (!aux) { - WARN("ignoring mount point '%s'", mntent->mnt_dir); - goto out; - } - - snprintf(path, MAXPATHLEN, "%s/%s", rootfs->mount, -- aux + strlen(rootfs->path)); -+ aux + strlen(rootfs_path)); - - ret = mount_entry(mntent->mnt_fsname, path, mntent->mnt_type, - mntflags, mntdata); -diff --git a/src/lxc/conf.h b/src/lxc/conf.h -index 09f55cb..b70e637 100644 ---- a/src/lxc/conf.h -+++ b/src/lxc/conf.h -@@ -181,6 +181,7 @@ struct lxc_rootfs { - char *path; - char *mount; - char *pivot; -+ int isblock; - }; - - /* --- -1.7.8.6 - diff --git a/app-emulation/lxc/files/lxc-0.8.0_rc1-libtoolize.patch b/app-emulation/lxc/files/lxc-0.8.0_rc1-libtoolize.patch deleted file mode 100644 index 933f9cabf8b0..000000000000 --- a/app-emulation/lxc/files/lxc-0.8.0_rc1-libtoolize.patch +++ /dev/null @@ -1,89 +0,0 @@ -diff --git a/configure.ac b/configure.ac -index e8f0cb5..8c0864a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -12,11 +12,7 @@ AM_PROG_CC_C_O - AC_GNU_SOURCE - AC_CHECK_PROG(SETCAP, setcap, yes, no, $PATH$PATH_SEPARATOR/sbin) - --AC_ARG_ENABLE([rpath], -- [AC_HELP_STRING([--disable-rpath], [do not set rpath in executables])], -- [], [enable_rpath=yes]) -- --AM_CONDITIONAL([ENABLE_RPATH], [test "x$enable_rpath" = "xyes"]) -+LT_INIT - - AC_ARG_ENABLE([doc], - [AC_HELP_STRING([--enable-doc], [make mans (require docbook2man installed) [default=auto]])], -diff --git a/src/lxc/Makefile.am b/src/lxc/Makefile.am -index 3a3816e..4c72dc9 100644 ---- a/src/lxc/Makefile.am -+++ b/src/lxc/Makefile.am -@@ -15,11 +15,9 @@ pkginclude_HEADERS = \ - state.h \ - attach.h - --sodir=$(libdir) --# use PROGRAMS to avoid complains from automake --so_PROGRAMS = liblxc.so -+lib_LTLIBRARIES = liblxc-@VERSION@.la - --liblxc_so_SOURCES = \ -+liblxc_@VERSION@_la_SOURCES = \ - arguments.c arguments.h \ - commands.c commands.h \ - start.c start.h \ -@@ -60,13 +58,10 @@ AM_CFLAGS=-I$(top_srcdir)/src \ - -DLXCPATH=\"$(LXCPATH)\" \ - -DLXCINITDIR=\"$(LXCINITDIR)\" - --liblxc_so_CFLAGS = -fPIC -DPIC $(AM_CFLAGS) -+liblxc_@VERSION@_la_LDFLAGS = \ -+ -avoid-version - --liblxc_so_LDFLAGS = \ -- -shared \ -- -Wl,-soname,liblxc.so.$(firstword $(subst ., ,$(VERSION))) -- --liblxc_so_LDADD = -lutil $(CAP_LIBS) -+liblxc_@VERSION@_la_LIBADD = -lutil $(CAP_LIBS) - - bin_SCRIPTS = \ - lxc-ps \ -@@ -100,11 +95,7 @@ bin_PROGRAMS = \ - pkglibexec_PROGRAMS = \ - lxc-init - --AM_LDFLAGS = -Wl,-E --if ENABLE_RPATH --AM_LDFLAGS += -Wl,-rpath -Wl,$(libdir) --endif --LDADD=liblxc.so @CAP_LIBS@ -+LDADD=liblxc-@VERSION@.la - - lxc_attach_SOURCES = lxc_attach.c - lxc_cgroup_SOURCES = lxc_cgroup.c -@@ -114,6 +105,7 @@ lxc_execute_SOURCES = lxc_execute.c - lxc_freeze_SOURCES = lxc_freeze.c - lxc_info_SOURCES = lxc_info.c - lxc_init_SOURCES = lxc_init.c -+lxc_init_LDFLAGS = -all-static - lxc_monitor_SOURCES = lxc_monitor.c - lxc_restart_SOURCES = lxc_restart.c - lxc_start_SOURCES = lxc_start.c -@@ -123,15 +115,6 @@ lxc_unshare_SOURCES = lxc_unshare.c - lxc_wait_SOURCES = lxc_wait.c - lxc_kill_SOURCES = lxc_kill.c - --install-exec-local: install-soPROGRAMS -- mv $(DESTDIR)$(libdir)/liblxc.so $(DESTDIR)$(libdir)/liblxc.so.$(VERSION) -- /sbin/ldconfig -l $(DESTDIR)$(libdir)/liblxc.so.$(VERSION) -- cd $(DESTDIR)$(libdir); \ -- ln -sf liblxc.so.$(firstword $(subst ., ,$(VERSION))) liblxc.so -- --uninstall-local: -- $(RM) $(DESTDIR)$(libdir)/liblxc.so* -- - namespace.c: setns.h - - setns.h: diff --git a/app-emulation/lxc/files/lxc.initd b/app-emulation/lxc/files/lxc.initd deleted file mode 100644 index fd70c72b3879..000000000000 --- a/app-emulation/lxc/files/lxc.initd +++ /dev/null @@ -1,139 +0,0 @@ -#!/sbin/runscript -# Copyright 1999-2011 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/files/lxc.initd,v 1.9 2011/10/19 17:51:48 flameeyes Exp $ - -CONTAINER=${SVCNAME#*.} - -lxc_get_configfile() { - if [ -f "/etc/lxc/${CONTAINER}.conf" ]; then - echo "/etc/lxc/${CONTAINER}.conf" - elif [ -f "/etc/lxc/${CONTAINER}/config" ]; then - echo "/etc/lxc/${CONTAINER}/config" - else - eerror "Unable to find a suitable configuration file." - eerror "If you set up the contianer in a non-standard" - eerror "location, please set the CONFIGFILE variable." - return 1 - fi -} - -[ $CONTAINER != $SVCNAME ] && CONFIGFILE=${CONFIGFILE:-$(lxc_get_configfile)} - -lxc_get_var() { - awk 'BEGIN { FS="[ \t]*=[ \t]*" } $1 == "'$1'" { print $2; exit }' ${CONFIGFILE} -} - -cgroup_get_mount() { - mount | awk '$5 == "cgroup" { print $3; exit }' -} - -checkconfig() { - if [ ${CONTAINER} = ${SVCNAME} ]; then - eerror "You have to create an init script for each container:" - eerror " ln -s lxc /etc/init.d/lxc.container" - return 1 - fi - - # no need to output anything, the function takes care of that. - [ -z "${CONFIGFILE}" ] && return 1 - - utsname=$(lxc_get_var lxc.utsname) - if [ ${CONTAINER} != ${utsname} ]; then - eerror "You should use the same name for the service and the" - eerror "container. Right now the container is called ${utsname}" - return 1 - fi -} - -depend() { - # be quiet, since we have to run depend() also for the - # non-muxed init script, unfortunately. - checkconfig 2>/dev/null || return 0 - - config ${CONFIGFILE} - need localmount - - # find out which network interface the container is linked to, - # and then require that to be enabled, so that the - # dependencies are correct. - netif=$(lxc_get_var lxc.network.link) - [ -n "${netif}" ] && use net.${netif} -} - -start() { - checkconfig || return 1 - - # make sure that cgroup is mounted if it isn't already, this - # ensures that we can actually proceed! - cgroupmount=$(cgroup_get_mount) - if [ -z ${cgroupmount} ]; then - mkdir -p /cgroup - - if ! mount -t cgroup cgroup /cgroup; then - eerror "Unable to mount cgroup pseudo-filesystem on /cgroup" - return 1 - fi - - cgroupmount=/cgroup - fi - - rm /var/log/lxc/${CONTAINER}.log - - rootpath=$(lxc_get_var lxc.rootfs) - - # Check the format of our init and the chroot's init, to see if we - # have to use linux32 or linux64... - case $(scanelf -BF '%M#f' /sbin/init ${rootpath}/sbin/init | tr '\n' ':') in - ELFCLASS64:ELFCLASS64:) setarch=;; - ELFCLASS32:ELFCLASS32:) setarch=;; - ELFCLASS32:ELFCLASS64:) setarch=linux64;; - ELFCLASS64:ELFCLASS32:) setarch=linux32;; - esac - - ebegin "Starting ${CONTAINER}" - env -i ${setarch} $(type -p lxc-start) -l WARN -n ${CONTAINER} -f ${CONFIGFILE} -d -o /var/log/lxc/${CONTAINER}.log - sleep 0.5 - - # lxc-start -d will _always_ report a correct startup, even if it - # failed, so rather than trust that, check that the cgroup exists. - [ -d ${cgroupmount}/${CONTAINER} ] - eend $? -} - -stop() { - checkconfig || return 1 - - cgroupmount=$(cgroup_get_mount) - - if ! [ -d ${cgroupmount}/${CONTAINER} ]; then - ewarn "${CONTAINER} doesn't seem to be started." - return 0 - fi - - init_pid=$(lxc-info -n ${CONTAINER} --pid | cut -d: -f 2) - - if [ "${init_pid}" = "-1" ]; then - ewarn "${CONTAINER} doesn't seem to be running." - return 0 - fi - - ebegin "Shutting down system in ${CONTAINER}" - kill -INT ${init_pid} - eend $? - - TIMEOUT=${TIMEOUT:-30} - i=0 - while [ -n "$(pgrep -P ${init_pid})" -a $i -lt ${TIMEOUT} ]; do - sleep 1 - i=$(expr $i + 1) - done - - if [ -n "${missingprocs}" ]; then - ewarn "Something failed to properly shut down in ${CONTAINER}" - fi - - ebegin "Stopping ${CONTAINER}" - lxc-stop -n ${CONTAINER} - eend $? -} diff --git a/app-emulation/lxc/lxc-0.7.5-r3.ebuild b/app-emulation/lxc/lxc-0.7.5-r3.ebuild deleted file mode 100644 index fd7d4d960c8f..000000000000 --- a/app-emulation/lxc/lxc-0.7.5-r3.ebuild +++ /dev/null @@ -1,111 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.7.5-r3.ebuild,v 1.2 2012/03/27 19:01:25 flameeyes Exp $ - -EAPI="4" - -MY_P="${P/_/-}" - -inherit eutils linux-info versionator flag-o-matic - -DESCRIPTION="LinuX Containers userspace utilities" -HOMEPAGE="http://lxc.sourceforge.net/" -SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz" -S="${WORKDIR}/${MY_P}" - -KEYWORDS="~amd64 ~ppc64 ~x86" - -LICENSE="LGPL-3" -SLOT="0" -IUSE="examples vanilla" - -RDEPEND="sys-libs/libcap" - -DEPEND="${RDEPEND} - app-text/docbook-sgml-utils - >=sys-kernel/linux-headers-2.6.29" - -# For init script, so protect with vanilla, they are not strictly -# needed. -RDEPEND="${RDEPEND} - !vanilla? ( - sys-apps/util-linux - app-misc/pax-utils - )" - -CONFIG_CHECK="~CGROUPS - ~CPUSETS ~CGROUP_CPUACCT - ~RESOURCE_COUNTERS ~CGROUP_MEM_RES_CTLR - ~CGROUP_SCHED - - ~NAMESPACES - ~IPC_NS ~USER_NS ~PID_NS - - ~DEVPTS_MULTIPLE_INSTANCES - ~CGROUP_FREEZER - ~UTS_NS ~NET_NS - ~VETH ~MACVLAN" - -ERROR_DEVPTS_MULTIPLE_INSTANCES="CONFIG_DEVPTS_MULTIPLE_INSTANCES: needed for pts inside container" - -ERROR_CGROUP_FREEZER="CONFIG_CGROUP_FREEZER: needed to freeze containers" - -ERROR_UTS_NS="CONFIG_UTS_NS: needed to unshare hostnames and uname info" -ERROR_NET_NS="CONFIG_NET_NS: needed for unshared network" - -ERROR_VETH="CONFIG_VETH: needed for internal (host-to-container) networking" -ERROR_MACVLAN="CONFIG_MACVLAN: needed for internal (inter-container) networking" - -DOCS=(AUTHORS CONTRIBUTING MAINTAINERS NEWS TODO README doc/FAQ.txt) - -src_configure() { - append-flags -fno-strict-aliasing - - econf \ - --localstatedir=/var \ - --bindir=/usr/sbin \ - --docdir=/usr/share/doc/${PF} \ - --with-config-path=/etc/lxc \ - --with-rootfs-path=/usr/lib/lxc/rootfs \ - --with-linuxdir="${KERNEL_DIR}" \ - --enable-doc \ - $(use_enable examples) -} - -src_install() { - default - - rm -r "${D}"/usr/sbin/lxc-{setcap,ls} \ - "${D}"/usr/share/man/man1/lxc-ls.1 \ - || die "unable to remove extraenous content" - - keepdir /etc/lxc /usr/lib/lxc/rootfs - - find "${D}" -name '*.la' -delete - - use vanilla && return 0 - - # Gentoo-specific additions! - newinitd "${FILESDIR}/${PN}.initd" ${PN} - keepdir /var/log/lxc -} - -pkg_postinst() { - if ! use vanilla; then - elog "There is an init script provided with the package now; no documentation" - elog "is currently available though, so please check out /etc/init.d/lxc ." - elog "You _should_ only need to symlink it to /etc/init.d/lxc.configname" - elog "to start the container defined into /etc/lxc/configname.conf ." - elog "For further information about LXC development see" - elog "http://blog.flameeyes.eu/tag/lxc" # remove once proper doc is available - elog "" - fi - ewarn "With version 0.7.4, the mountpoint syntax came back to the one used by 0.7.2" - ewarn "and previous versions. This means you'll have to use syntax like the following" - ewarn "" - ewarn " lxc.rootfs = /container" - ewarn " lxc.mount.entry = /usr/portage /container/usr/portage none bind 0 0" - ewarn "" - ewarn "To use the Fedora, Debian and (various) Ubuntu auto-configuration scripts, you" - ewarn "will need sys-apps/yum or dev-util/debootstrap." -} diff --git a/app-emulation/lxc/lxc-0.8.0_rc1-r3.ebuild b/app-emulation/lxc/lxc-0.8.0_rc1-r4.ebuild index 063563a3468a..de7c46091c29 100644 --- a/app-emulation/lxc/lxc-0.8.0_rc1-r3.ebuild +++ b/app-emulation/lxc/lxc-0.8.0_rc1-r4.ebuild @@ -1,16 +1,19 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.8.0_rc1-r3.ebuild,v 1.1 2012/04/29 23:32:31 flameeyes Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-emulation/lxc/lxc-0.8.0_rc1-r4.ebuild,v 1.1 2012/05/01 18:09:26 flameeyes Exp $ EAPI="4" MY_P="${P/_/-}" -inherit eutils linux-info versionator flag-o-matic autotools +BACKPORTS=1 + +inherit eutils linux-info versionator flag-o-matic ${BACKPORTS:+autotools} DESCRIPTION="LinuX Containers userspace utilities" HOMEPAGE="http://lxc.sourceforge.net/" -SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz" +SRC_URI="http://lxc.sourceforge.net/download/lxc/${MY_P}.tar.gz + ${BACKPORTS:+http://dev.gentoo.org/~flameeyes/${PN}/${MY_P}-backports-${BACKPORTS}.tar.xz}" S="${WORKDIR}/${MY_P}" KEYWORDS="~amd64 ~ppc64 ~x86" @@ -23,8 +26,7 @@ RDEPEND="sys-libs/libcap" DEPEND="${RDEPEND} app-text/docbook-sgml-utils - >=sys-kernel/linux-headers-2.6.29 - virtual/linux-sources" + >=sys-kernel/linux-headers-3.2" # For init script, so protect with vanilla, they are not strictly # needed. @@ -81,10 +83,8 @@ ERROR_GRKERNSEC_CHROOT_CAPS=":CONFIG_GRKERNSEC_CHROOT_CAPS some GRSEC features m DOCS=(AUTHORS CONTRIBUTING MAINTAINERS TODO README doc/FAQ.txt) src_prepare() { - if ! use vanilla; then - epatch "${FILESDIR}/${P}-libtoolize.patch" - epatch "${FILESDIR}/${P}-blockmount.patch" - + if [[ -n ${BACKPORTS} ]]; then + epatch "${S}"/patches/* eautoreconf fi } @@ -98,7 +98,6 @@ src_configure() { --docdir=/usr/share/doc/${PF} \ --with-config-path=/etc/lxc \ --with-rootfs-path=/usr/lib/lxc/rootfs \ - --with-linuxdir="${KERNEL_DIR}" \ --enable-doc \ $(use_enable examples) } |