diff options
author | Samuli Suominen <ssuominen@gentoo.org> | 2013-08-14 16:17:19 +0000 |
---|---|---|
committer | Samuli Suominen <ssuominen@gentoo.org> | 2013-08-14 16:17:19 +0000 |
commit | 1e31cebc4c3298216cd82b45e4e436aa23e34d17 (patch) | |
tree | 14d00897cbc8cb1d4496b0a0400f93fe84014f2a /sys-fs/lvm2 | |
parent | Upstream patch for "Fix metadata area offset/size overflow if it's >= 4g and ... (diff) | |
download | gentoo-2-1e31cebc4c3298216cd82b45e4e436aa23e34d17.tar.gz gentoo-2-1e31cebc4c3298216cd82b45e4e436aa23e34d17.tar.bz2 gentoo-2-1e31cebc4c3298216cd82b45e4e436aa23e34d17.zip |
old
(Portage version: 2.2.0/cvs/Linux x86_64, signed Manifest commit with key 4868F14D)
Diffstat (limited to 'sys-fs/lvm2')
-rw-r--r-- | sys-fs/lvm2/ChangeLog | 7 | ||||
-rw-r--r-- | sys-fs/lvm2/files/lvm2-2.02.95-udev185.patch | 208 | ||||
-rw-r--r-- | sys-fs/lvm2/lvm2-2.02.98.ebuild | 285 | ||||
-rw-r--r-- | sys-fs/lvm2/lvm2-2.02.99-r1.ebuild | 251 | ||||
-rw-r--r-- | sys-fs/lvm2/lvm2-2.02.99.ebuild | 242 |
5 files changed, 6 insertions, 987 deletions
diff --git a/sys-fs/lvm2/ChangeLog b/sys-fs/lvm2/ChangeLog index d99c3f6e19aa..aacdb72cf44d 100644 --- a/sys-fs/lvm2/ChangeLog +++ b/sys-fs/lvm2/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-fs/lvm2 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/ChangeLog,v 1.314 2013/08/14 16:14:29 ssuominen Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/ChangeLog,v 1.315 2013/08/14 16:17:19 ssuominen Exp $ + + 14 Aug 2013; Samuli Suominen <ssuominen@gentoo.org> + -files/lvm2-2.02.95-udev185.patch, -lvm2-2.02.98.ebuild, + -lvm2-2.02.99-r1.ebuild, -lvm2-2.02.99.ebuild: + old *lvm2-2.02.99-r2 (14 Aug 2013) diff --git a/sys-fs/lvm2/files/lvm2-2.02.95-udev185.patch b/sys-fs/lvm2/files/lvm2-2.02.95-udev185.patch deleted file mode 100644 index ba7e40deea64..000000000000 --- a/sys-fs/lvm2/files/lvm2-2.02.95-udev185.patch +++ /dev/null @@ -1,208 +0,0 @@ -From 06738cac051b671ed26bd137676713eab457b37f Mon Sep 17 00:00:00 2001 -From: Peter Rajnoha <prajnoha@redhat.com> -Date: Tue, 29 May 2012 08:09:10 +0000 -Subject: [PATCH] Remove unsupported udev_get_dev_path libudev call used for checking udev dir. - -With latest changes in the udev, some deprecated functions were removed -from libudev amongst which there was the "udev_get_dev_path" function -we used to compare a device directory used in udev and directore set in -libdevmapper. The "/dev" is hardcoded in udev now (udev version >= 183). - -Amongst other changes and from packager's point of view, it's also -important to note that the libudev development library ("libudev-devel") -could now be a part of the systemd development library ("systemd-devel") -because of the udev + systemd merge. ---- - WHATS_NEW_DM | 1 + - lib/commands/toolcontext.c | 28 ++++++++++++++++------------ - lib/misc/lvm-wrappers.c | 14 -------------- - lib/misc/lvm-wrappers.h | 1 - - libdm/libdevmapper.h | 3 +++ - tools/dmsetup.c | 30 ++++++++++++------------------ - 6 files changed, 32 insertions(+), 45 deletions(-) - -diff --git a/lib/commands/toolcontext.c b/lib/commands/toolcontext.c -index 78f0801..cc23163 100644 ---- a/lib/commands/toolcontext.c -+++ b/lib/commands/toolcontext.c -@@ -650,9 +650,9 @@ static int _init_dev_cache(struct cmd_context *cmd) - { - const struct dm_config_node *cn; - const struct dm_config_value *cv; -- size_t uninitialized_var(udev_dir_len), len; -+ size_t len, udev_dir_len = strlen(DM_UDEV_DEV_DIR); -+ int len_diff; - int device_list_from_udev; -- const char *uninitialized_var(udev_dir); - - init_dev_disable_after_error_count( - find_config_tree_int(cmd, "devices/disable_after_error_count", -@@ -661,13 +661,9 @@ static int _init_dev_cache(struct cmd_context *cmd) - if (!dev_cache_init(cmd)) - return_0; - -- if ((device_list_from_udev = udev_is_running() ? -+ device_list_from_udev = udev_is_running() ? - find_config_tree_bool(cmd, "devices/obtain_device_list_from_udev", -- DEFAULT_OBTAIN_DEVICE_LIST_FROM_UDEV) : 0)) { -- if (!(udev_dir = udev_get_dev_dir())) -- stack; -- udev_dir_len = (udev_dir) ? strlen(udev_dir) : 0; -- } -+ DEFAULT_OBTAIN_DEVICE_LIST_FROM_UDEV) : 0; - init_obtain_device_list_from_udev(device_list_from_udev); - - if (!(cn = find_config_tree_node(cmd, "devices/scan"))) { -@@ -688,11 +684,19 @@ static int _init_dev_cache(struct cmd_context *cmd) - return 0; - } - -- if (device_list_from_udev && udev_dir) { -+ if (device_list_from_udev) { - len = strlen(cv->v.str); -- len = udev_dir_len > len ? len : udev_dir_len; -- if (strncmp(udev_dir, cv->v.str, len) || -- udev_dir[len] != cv->v.str[len]) { -+ -+ /* -+ * DM_UDEV_DEV_DIR always has '/' at its end. -+ * If the item in the conf does not have it, be sure -+ * to make the right comparison without the '/' char! -+ */ -+ len_diff = len && cv->v.str[len - 1] != '/' ? -+ udev_dir_len - 1 != len : -+ udev_dir_len != len; -+ -+ if (len_diff || strncmp(DM_UDEV_DEV_DIR, cv->v.str, len)) { - device_list_from_udev = 0; - init_obtain_device_list_from_udev(0); - } -diff --git a/lib/misc/lvm-wrappers.c b/lib/misc/lvm-wrappers.c -index 84f61a6..6cffae3 100644 ---- a/lib/misc/lvm-wrappers.c -+++ b/lib/misc/lvm-wrappers.c -@@ -65,16 +65,6 @@ bad: - return 0; - } - --const char *udev_get_dev_dir(void) --{ -- if (!_udev) { -- log_debug(_no_context_msg); -- return NULL; -- } -- -- return udev_get_dev_path(_udev); --} -- - struct udev* udev_get_library_context(void) - { - return _udev; -@@ -96,10 +86,6 @@ int udev_is_running(void) - return 0; - } - --const char *udev_get_dev_dir(void) --{ -- return NULL; --} - #endif - - int lvm_getpagesize(void) -diff --git a/lib/misc/lvm-wrappers.h b/lib/misc/lvm-wrappers.h -index f5b381c..e43f831 100644 ---- a/lib/misc/lvm-wrappers.h -+++ b/lib/misc/lvm-wrappers.h -@@ -24,7 +24,6 @@ struct udev *udev_get_library_context(void); - int udev_init_library_context(void); - void udev_fin_library_context(void); - int udev_is_running(void); --const char *udev_get_dev_dir(void); - - int lvm_getpagesize(void); - -diff --git a/libdm/libdevmapper.h b/libdm/libdevmapper.h -index 7df4db8..1f780a3 100644 ---- a/libdm/libdevmapper.h -+++ b/libdm/libdevmapper.h -@@ -1500,6 +1500,9 @@ struct dm_config_node *dm_config_clone_node(struct dm_config_tree *cft, const st - - struct dm_pool *dm_config_memory(struct dm_config_tree *cft); - -+/* Udev device directory. */ -+#define DM_UDEV_DEV_DIR "/dev/" -+ - /* Cookie prefixes. - * - * The cookie value consists of a prefix (16 bits) and a base (16 bits). -diff --git a/tools/dmsetup.c b/tools/dmsetup.c -index 6934de8..2787b76 100644 ---- a/tools/dmsetup.c -+++ b/tools/dmsetup.c -@@ -1008,11 +1008,9 @@ static int _udevcookies(CMD_ARGS) - #else /* UDEV_SYNC_SUPPORT */ - static int _set_up_udev_support(const char *dev_dir) - { -- struct udev *udev; -- const char *udev_dev_dir; -- size_t udev_dev_dir_len; - int dirs_diff; - const char *env; -+ size_t len = strlen(dev_dir), udev_dir_len = strlen(DM_UDEV_DEV_DIR); - - if (_switches[NOUDEVSYNC_ARG]) - dm_udev_set_sync_support(0); -@@ -1030,14 +1028,6 @@ static int _set_up_udev_support(const char *dev_dir) - " defined by --udevcookie option.", - _udev_cookie); - -- if (!(udev = udev_new()) || -- !(udev_dev_dir = udev_get_dev_path(udev)) || -- !*udev_dev_dir) { -- log_error("Could not get udev dev path."); -- return 0; -- } -- udev_dev_dir_len = strlen(udev_dev_dir); -- - /* - * Normally, there's always a fallback action by libdevmapper if udev - * has not done its job correctly, e.g. the nodes were not created. -@@ -1049,12 +1039,17 @@ static int _set_up_udev_support(const char *dev_dir) - * is the same as "dev path" used by libdevmapper. - */ - -- /* There's always a slash at the end of dev_dir. But check udev_dev_dir! */ -- if (udev_dev_dir[udev_dev_dir_len - 1] != '/') -- dirs_diff = strncmp(dev_dir, udev_dev_dir, udev_dev_dir_len); -- else -- dirs_diff = strcmp(dev_dir, udev_dev_dir); - -+ /* -+ * DM_UDEV_DEV_DIR always has '/' at its end. -+ * If the dev_dir does not have it, be sure -+ * to make the right comparison without the '/' char! -+ */ -+ if (dev_dir[len - 1] != '/') -+ udev_dir_len--; -+ -+ dirs_diff = udev_dir_len != len || -+ strncmp(DM_UDEV_DEV_DIR, dev_dir, len); - _udev_only = !dirs_diff && (_udev_cookie || !_switches[VERIFYUDEV_ARG]); - - if (dirs_diff) { -@@ -1064,11 +1059,10 @@ static int _set_up_udev_support(const char *dev_dir) - "about udev not working correctly while processing " - "particular nodes will be suppressed. These nodes " - "and symlinks will be managed in each directory " -- "separately.", dev_dir, udev_dev_dir); -+ "separately.", dev_dir, DM_UDEV_DEV_DIR); - dm_udev_set_checking(0); - } - -- udev_unref(udev); - return 1; - } - --- -1.7.2.1 - diff --git a/sys-fs/lvm2/lvm2-2.02.98.ebuild b/sys-fs/lvm2/lvm2-2.02.98.ebuild deleted file mode 100644 index 54546476daa5..000000000000 --- a/sys-fs/lvm2/lvm2-2.02.98.ebuild +++ /dev/null @@ -1,285 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.98.ebuild,v 1.7 2013/08/06 18:08:30 axs Exp $ - -EAPI=5 -inherit eutils multilib toolchain-funcs autotools linux-info udev - -DESCRIPTION="User-land utilities for LVM2 (device-mapper) software." -HOMEPAGE="http://sources.redhat.com/lvm2/" -SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz - ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux" - -IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin" - -DEPEND_COMMON="!!sys-fs/device-mapper - readline? ( sys-libs/readline ) - clvm? ( =sys-cluster/libdlm-3* - cman? ( =sys-cluster/cman-3* ) ) - udev? ( virtual/udev[static-libs?] )" - -# /run is now required for locking during early boot. /var cannot be assumed to -# be available. -RDEPEND="${DEPEND_COMMON} - !<sys-apps/openrc-0.10.1 - >=sys-apps/baselayout-2.1-r1 - !!sys-fs/lvm-user - !!sys-fs/clvm - >=sys-apps/util-linux-2.16 - thin? ( sys-block/thin-provisioning-tools )" - -# Upgrading to this LVM will break older cryptsetup -RDEPEND="${RDEPEND} - !<sys-fs/cryptsetup-1.1.2" - -DEPEND="${DEPEND_COMMON} - virtual/pkgconfig - >=sys-devel/binutils-2.20.1-r1 - static? ( - udev? ( virtual/udev[static-libs] ) - selinux? ( sys-libs/libselinux[static-libs] ) - )" - -S="${WORKDIR}/${PN/lvm/LVM}.${PV}" - -pkg_setup() { - local CONFIG_CHECK="~SYSVIPC" - use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" - check_extra_config - # 1. Genkernel no longer copies /sbin/lvm blindly. - if use static; then - elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" - elog "their static versions. If you need the static binaries," - elog "you must append .static to the filename!" - fi -} - -src_prepare() { - epatch "${FILESDIR}"/lvm.conf-2.02.67.patch - - # Should not be needed due to upstream re-arrangement of build - #epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch - # Should not be need with new upstream udev rules - #epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch - - # Merged upstream: - #epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch - # Merged upstream: - #epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch - # Merged upstream: - #epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch - # Fixed differently upstream: - #epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch - - epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch - epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch - # bug 318513 - merged upstream - #epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch - # bug 301331 - epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch - # bug 330373 - epatch "${FILESDIR}"/${PN}-2.02.92-locale-muck.patch - # --as-needed - epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch - # bug 332905 - epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch - # bug 361429 - merged upstream in .85 - #epatch "${FILESDIR}"/${PN}-2.02.84-udev-pkgconfig.patch - - # Merged upstream - #epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch - - epatch "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch - - # Upstream bug of LVM path - # Merged upstream - #epatch "${FILESDIR}"/${PN}-2.02.95-lvmpath.patch - - # Upstream patch for http://bugs.gentoo.org/424810 - # Merged upstream - #epatch "${FILESDIR}"/${PN}-2.02.95-udev185.patch - - # Upstream patch for https://bugs.gentoo.org/444328 - # Merged upstream - #epatch "${FILESDIR}"/${PN}-2.02.97-strict-aliasing.patch - - # for https://bugs.gentoo.org/370217 - epatch "${FILESDIR}"/${PN}-2.02.97-udev-static.patch - epatch "${FILESDIR}"/${PN}-2.02.97-selinux-static.patch - - # Fix calling AR directly with USE static, bug #444082 - if use static ; then - sed -i -e "s:\$(AR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:$(tc-getAR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:" \ - tools/Makefile.in || die "sed failed" - fi - - eautoreconf -} - -src_configure() { - local myconf - local buildmode - - myconf="${myconf} --enable-dmeventd" - myconf="${myconf} --enable-cmdlib" - myconf="${myconf} --enable-applib" - myconf="${myconf} --enable-fsadm" - myconf="${myconf} --enable-lvmetad" - - # Most of this package does weird stuff. - # The build options are tristate, and --without is NOT supported - # options: 'none', 'internal', 'shared' - if use static ; then - einfo "Building static LVM, for usage inside genkernel" - buildmode="internal" - # This only causes the .static versions to become available - # We explicitly provide the .static versions so that they can be included in - # initramfs environments. - myconf="${myconf} --enable-static_link" - else - ewarn "Building shared LVM, it will not work inside genkernel!" - buildmode="shared" - fi - - # dmeventd requires mirrors to be internal, and snapshot available - # so we cannot disable them - myconf="${myconf} --with-mirrors=internal" - myconf="${myconf} --with-snapshots=internal" - use thin \ - && myconf="${myconf} --with-thin=internal" \ - || myconf="${myconf} --with-thin=none" - - if use lvm1 ; then - myconf="${myconf} --with-lvm1=${buildmode}" - else - myconf="${myconf} --with-lvm1=none" - fi - - # disable O_DIRECT support on hppa, breaks pv detection (#99532) - use hppa && myconf="${myconf} --disable-o_direct" - - if use clvm; then - myconf="${myconf} --with-cluster=${buildmode}" - # 4-state! Make sure we get it right, per bug 210879 - # Valid options are: none, cman, gulm, all - # - # 2009/02: - # gulm is removed now, now dual-state: - # cman, none - # all still exists, but is not needed - # - # 2009/07: - # TODO: add corosync and re-enable ALL - local clvmd="" - use cman && clvmd="cman" - #clvmd="${clvmd/cmangulm/all}" - [ -z "${clvmd}" ] && clvmd="none" - myconf="${myconf} --with-clvmd=${clvmd}" - myconf="${myconf} --with-pool=${buildmode}" - else - myconf="${myconf} --with-clvmd=none --with-cluster=none" - fi - - local udevdir="${EPREFIX}/lib/udev/rules.d" - use udev && udevdir="${EPREFIX}/$(udev_get_udevdir)/rules.d" - - econf \ - $(use_enable readline) \ - $(use_enable selinux) \ - --enable-pkgconfig \ - --with-confdir="${EPREFIX}/etc" \ - --sbindir="${EPREFIX}/sbin" \ - --with-staticdir="${EPREFIX}/sbin" \ - --libdir="${EPREFIX}/$(get_libdir)" \ - --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \ - --with-default-run-dir=/run/lvm \ - --with-default-locking-dir=/run/lock/lvm \ - --with-dmeventd-path=/sbin/dmeventd \ - $(use_enable udev udev_rules) \ - $(use_enable udev udev_sync) \ - $(use_with udev udevdir "${udevdir}") \ - ${myconf} \ - CLDFLAGS="${LDFLAGS}" -} - -src_compile() { - einfo "Doing symlinks" - pushd include - emake || die "Failed to prepare symlinks" - popd - - einfo "Starting main build" - emake AR="$(tc-getAR)" || die "compile fail" -} - -src_install() { - emake DESTDIR="${D}" install - - dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{conf,c,txt} - newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm - newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring - newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm - if use clvm; then - newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd - newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd - fi - - # move shared libs to /lib(64) - if use static-libs; then - dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a" - #gen_usr_ldscript libdevmapper.so - fi - - dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd - doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8 - newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd - - insinto /etc - doins "${FILESDIR}"/dmtab - - # Device mapper stuff - newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper - newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper - - newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd - if use static-libs; then - dolib.a daemons/dmeventd/libdevmapper-event.a \ - || die "dolib.a libdevmapper-event.a" - #gen_usr_ldscript libdevmapper-event.so - fi - - use static-libs || \ - rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a - - #insinto /etc/udev/rules.d/ - #newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules - - # do not rely on /lib -> /libXX link - sed -i \ - -e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \ - "${ED}"/etc/init.d/* || die - - elog "USE flag nocman is deprecated and replaced" - elog "with the cman USE flag." - elog "" - elog "USE flags clvm and cman are masked" - elog "by default and need to be unmasked to be used" - elog "" - elog "If you are using genkernel and root-on-LVM, rebuild the initramfs." -} - -pkg_postinst() { - elog "lvm volumes are no longer automatically created for" - elog "baselayout-2 users. If you are using baselayout-2, be sure to" - elog "run: # rc-update add lvm boot" - elog "Do NOT add it if you are still using baselayout-1." -} - -src_test() { - einfo "Testcases disabled because of device-node mucking" - einfo "If you want them, compile the package and see ${S}/tests" -} diff --git a/sys-fs/lvm2/lvm2-2.02.99-r1.ebuild b/sys-fs/lvm2/lvm2-2.02.99-r1.ebuild deleted file mode 100644 index 4dd6cd59b446..000000000000 --- a/sys-fs/lvm2/lvm2-2.02.99-r1.ebuild +++ /dev/null @@ -1,251 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.99-r1.ebuild,v 1.3 2013/08/07 11:31:59 ssuominen Exp $ - -EAPI=5 -inherit eutils multilib toolchain-funcs autotools linux-info udev systemd - -DESCRIPTION="User-land utilities for LVM2 (device-mapper) software." -HOMEPAGE="http://sources.redhat.com/lvm2/" -SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz - ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux" - -IUSE="readline static static-libs clvm cman +lvm1 lvm2create_initrd selinux +udev +thin" - -DEPEND_COMMON="clvm? ( cman? ( =sys-cluster/cman-3* ) =sys-cluster/libdlm-3* ) - readline? ( sys-libs/readline ) - udev? ( >=virtual/udev-200[static-libs?] )" -# /run is now required for locking during early boot. /var cannot be assumed to -# be available. -RDEPEND="${DEPEND_COMMON} - !<sys-apps/openrc-0.10.1 - >=sys-apps/baselayout-2.1-r1 - !!sys-fs/lvm-user - !!sys-fs/clvm - >=sys-apps/util-linux-2.16 - lvm2create_initrd? ( sys-apps/makedev ) - thin? ( sys-block/thin-provisioning-tools )" -# Upgrading to this LVM will break older cryptsetup -RDEPEND="${RDEPEND} - !<sys-fs/cryptsetup-1.1.2" -DEPEND="${DEPEND_COMMON} - virtual/pkgconfig - >=sys-devel/binutils-2.20.1-r1 - static? ( - udev? ( virtual/udev[static-libs] ) - selinux? ( sys-libs/libselinux[static-libs] ) - )" - -S=${WORKDIR}/${PN/lvm/LVM}.${PV} - -pkg_setup() { - local CONFIG_CHECK="~SYSVIPC" - - if use udev; then - local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" - if linux_config_exists; then - local uevent_helper_path=$(linux_chkconfig_string UEVENT_HELPER_PATH) - if [ -n "${uevent_helper_path}" ] && [ "${uevent_helper_path}" != '""' ]; then - ewarn "It's recommended to set an empty value to the following kernel config option:" - ewarn "CONFIG_UEVENT_HELPER_PATH=${uevent_helper_path}" - fi - fi - fi - - check_extra_config - - # 1. Genkernel no longer copies /sbin/lvm blindly. - if use static; then - elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" - elog "their static versions. If you need the static binaries," - elog "you must append .static to the filename!" - fi -} - -src_prepare() { - # Gentoo specific modification(s) - epatch "${FILESDIR}"/${PN}-2.02.99-example.conf.in.patch - - # Not merged upstream, should be reviewed and forwarded: - epatch \ - "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch \ - "${FILESDIR}"/${PN}-2.02.56-lvm2create_initrd.patch \ - "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch - epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch #301331 - epatch "${FILESDIR}"/${PN}-2.02.99-locale-muck.patch #330373 - epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch # -Wl,--as-needed - epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch #332905 - epatch "${FILESDIR}"/${PN}-2.02.97-udev-static.patch #370217 - epatch "${FILESDIR}"/${PN}-2.02.99-selinux-static.patch #439414 - - sed -i -e 's:/usr/sbin/lvm:/sbin/lvm:' scripts/lvm2_activation_generator_systemd_red_hat.c || die #479626 - - # Fix calling AR directly with USE static, bug #444082, convert to patch and forward to upstream - if use static ; then - sed -i -e "s:\$(AR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:$(tc-getAR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:" \ - tools/Makefile.in || die - fi - - eautoreconf -} - -src_configure() { - local myconf - local buildmode - - myconf="${myconf} --enable-dmeventd" - myconf="${myconf} --enable-cmdlib" - myconf="${myconf} --enable-applib" - myconf="${myconf} --enable-fsadm" - myconf="${myconf} --enable-lvmetad" - - # Most of this package does weird stuff. - # The build options are tristate, and --without is NOT supported - # options: 'none', 'internal', 'shared' - if use static ; then - buildmode="internal" - # This only causes the .static versions to become available - myconf="${myconf} --enable-static_link" - else - buildmode="shared" - fi - - # dmeventd requires mirrors to be internal, and snapshot available - # so we cannot disable them - myconf="${myconf} --with-mirrors=internal" - myconf="${myconf} --with-snapshots=internal" - use thin \ - && myconf="${myconf} --with-thin=internal" \ - || myconf="${myconf} --with-thin=none" - - if use lvm1 ; then - myconf="${myconf} --with-lvm1=${buildmode}" - else - myconf="${myconf} --with-lvm1=none" - fi - - # disable O_DIRECT support on hppa, breaks pv detection (#99532) - use hppa && myconf="${myconf} --disable-o_direct" - - if use clvm; then - myconf="${myconf} --with-cluster=${buildmode}" - # 4-state! Make sure we get it right, per bug 210879 - # Valid options are: none, cman, gulm, all - # - # 2009/02: - # gulm is removed now, now dual-state: - # cman, none - # all still exists, but is not needed - # - # 2009/07: - # TODO: add corosync and re-enable ALL - local clvmd="" - use cman && clvmd="cman" - #clvmd="${clvmd/cmangulm/all}" - [ -z "${clvmd}" ] && clvmd="none" - myconf="${myconf} --with-clvmd=${clvmd}" - myconf="${myconf} --with-pool=${buildmode}" - else - myconf="${myconf} --with-clvmd=none --with-cluster=none" - fi - - local udevdir="${EPREFIX}/lib/udev/rules.d" - use udev && udevdir="${EPREFIX}/$(get_udevdir)/rules.d" - - econf \ - $(use_enable readline) \ - $(use_enable selinux) \ - --enable-pkgconfig \ - --with-confdir="${EPREFIX}/etc" \ - --sbindir="${EPREFIX}/sbin" \ - --with-staticdir="${EPREFIX}/sbin" \ - --libdir="${EPREFIX}/$(get_libdir)" \ - --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \ - --with-default-dm-run-dir=/run \ - --with-default-run-dir=/run/lvm \ - --with-default-locking-dir=/run/lock/lvm \ - --with-dmeventd-path=/sbin/dmeventd \ - --with-default-pid-dir=/run \ - $(use_enable udev udev_rules) \ - $(use_enable udev udev_sync) \ - $(use_with udev udevdir "${udevdir}") \ - "$(systemd_with_unitdir)" \ - ${myconf} \ - CLDFLAGS="${LDFLAGS}" -} - -src_compile() { - pushd include >/dev/null - emake - popd >/dev/null - - emake AR="$(tc-getAR)" - emake CC="$(tc-getCC)" -C scripts lvm2_activation_generator_systemd_red_hat -} - -src_install() { - local inst - for inst in install install_systemd_units install_systemd_generators install_tmpfiles_configuration; do - emake DESTDIR="${D}" ${inst} - done - - dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{c,txt} conf/*.conf - newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm - newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring - newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm - if use clvm; then - newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd - newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd - fi - - # move shared libs to /lib(64) - if use static-libs; then - dolib.a libdm/ioctl/libdevmapper.a - dolib.a libdaemon/client/libdaemonclient.a #462908 - #gen_usr_ldscript libdevmapper.so - fi - - if use lvm2create_initrd; then - dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd - doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8 - newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd - fi - - insinto /etc - doins "${FILESDIR}"/dmtab - - # Device mapper stuff - newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper - newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper - - newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd - if use static-libs; then - dolib.a daemons/dmeventd/libdevmapper-event.a - #gen_usr_ldscript libdevmapper-event.so - fi - - use static-libs || \ - rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a - - # do not rely on /lib -> /libXX link - sed -i \ - -e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \ - "${ED}"/etc/init.d/* || die -} - -pkg_postinst() { - ewarn "Make sure the \"lvm\" init script is in the runlevels:" - ewarn "# rc-update add lvm boot" - ewarn - ewarn "Make sure to enable lvmetad in /etc/lvm/lvm.conf if you want" - ewarn "to enable lvm autoactivation and metadata caching." -} - -src_test() { - einfo "Tests are disabled because of device-node mucking, if you want to" - einfo "run tests, compile the package and see ${S}/tests" -} diff --git a/sys-fs/lvm2/lvm2-2.02.99.ebuild b/sys-fs/lvm2/lvm2-2.02.99.ebuild deleted file mode 100644 index 618271710844..000000000000 --- a/sys-fs/lvm2/lvm2-2.02.99.ebuild +++ /dev/null @@ -1,242 +0,0 @@ -# Copyright 1999-2013 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.99.ebuild,v 1.6 2013/08/06 18:08:30 axs Exp $ - -EAPI=5 -inherit eutils multilib toolchain-funcs autotools linux-info udev systemd - -DESCRIPTION="User-land utilities for LVM2 (device-mapper) software." -HOMEPAGE="http://sources.redhat.com/lvm2/" -SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz - ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux" - -IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin" - -DEPEND_COMMON="clvm? ( cman? ( =sys-cluster/cman-3* ) =sys-cluster/libdlm-3* ) - readline? ( sys-libs/readline ) - udev? ( >=virtual/udev-200[static-libs?] )" -# /run is now required for locking during early boot. /var cannot be assumed to -# be available. -RDEPEND="${DEPEND_COMMON} - !<sys-apps/openrc-0.10.1 - >=sys-apps/baselayout-2.1-r1 - !!sys-fs/lvm-user - !!sys-fs/clvm - >=sys-apps/util-linux-2.16 - thin? ( sys-block/thin-provisioning-tools )" -# Upgrading to this LVM will break older cryptsetup -RDEPEND="${RDEPEND} - !<sys-fs/cryptsetup-1.1.2" -DEPEND="${DEPEND_COMMON} - virtual/pkgconfig - >=sys-devel/binutils-2.20.1-r1 - static? ( - udev? ( virtual/udev[static-libs] ) - selinux? ( sys-libs/libselinux[static-libs] ) - )" - -S=${WORKDIR}/${PN/lvm/LVM}.${PV} - -#QA_MULTILIB_PATHS="usr/lib/systemd/system-generators/.*" #479520 - -pkg_setup() { - local CONFIG_CHECK="~SYSVIPC" - use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n" - check_extra_config - # 1. Genkernel no longer copies /sbin/lvm blindly. - if use static; then - elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with" - elog "their static versions. If you need the static binaries," - elog "you must append .static to the filename!" - fi -} - -src_prepare() { - # Gentoo specific modification(s) - epatch "${FILESDIR}"/${PN}-2.02.99-example.conf.in.patch - - # Not merged upstream, should be reviewed and forwarded: - epatch \ - "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch \ - "${FILESDIR}"/${PN}-2.02.56-lvm2create_initrd.patch \ - "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch - epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch #301331 - epatch "${FILESDIR}"/${PN}-2.02.99-locale-muck.patch #330373 - epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch # -Wl,--as-needed - epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch #332905 - epatch "${FILESDIR}"/${PN}-2.02.97-udev-static.patch #370217 - epatch "${FILESDIR}"/${PN}-2.02.99-selinux-static.patch #439414 - - # Fix calling AR directly with USE static, bug #444082, convert to patch and forward to upstream - if use static ; then - sed -i -e "s:\$(AR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:$(tc-getAR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:" \ - tools/Makefile.in || die - fi - - eautoreconf -} - -src_configure() { - local myconf - local buildmode - - myconf="${myconf} --enable-dmeventd" - myconf="${myconf} --enable-cmdlib" - myconf="${myconf} --enable-applib" - myconf="${myconf} --enable-fsadm" - myconf="${myconf} --enable-lvmetad" - - # Most of this package does weird stuff. - # The build options are tristate, and --without is NOT supported - # options: 'none', 'internal', 'shared' - if use static ; then - einfo "Building static LVM, for usage inside genkernel" - buildmode="internal" - # This only causes the .static versions to become available - # We explicitly provide the .static versions so that they can be included in - # initramfs environments. - myconf="${myconf} --enable-static_link" - else - ewarn "Building shared LVM, it will not work inside genkernel!" - buildmode="shared" - fi - - # dmeventd requires mirrors to be internal, and snapshot available - # so we cannot disable them - myconf="${myconf} --with-mirrors=internal" - myconf="${myconf} --with-snapshots=internal" - use thin \ - && myconf="${myconf} --with-thin=internal" \ - || myconf="${myconf} --with-thin=none" - - if use lvm1 ; then - myconf="${myconf} --with-lvm1=${buildmode}" - else - myconf="${myconf} --with-lvm1=none" - fi - - # disable O_DIRECT support on hppa, breaks pv detection (#99532) - use hppa && myconf="${myconf} --disable-o_direct" - - if use clvm; then - myconf="${myconf} --with-cluster=${buildmode}" - # 4-state! Make sure we get it right, per bug 210879 - # Valid options are: none, cman, gulm, all - # - # 2009/02: - # gulm is removed now, now dual-state: - # cman, none - # all still exists, but is not needed - # - # 2009/07: - # TODO: add corosync and re-enable ALL - local clvmd="" - use cman && clvmd="cman" - #clvmd="${clvmd/cmangulm/all}" - [ -z "${clvmd}" ] && clvmd="none" - myconf="${myconf} --with-clvmd=${clvmd}" - myconf="${myconf} --with-pool=${buildmode}" - else - myconf="${myconf} --with-clvmd=none --with-cluster=none" - fi - - local udevdir="${EPREFIX}/lib/udev/rules.d" - use udev && udevdir="${EPREFIX}/$(get_udevdir)/rules.d" - - econf \ - $(use_enable readline) \ - $(use_enable selinux) \ - --enable-pkgconfig \ - --with-confdir="${EPREFIX}/etc" \ - --sbindir="${EPREFIX}/sbin" \ - --with-staticdir="${EPREFIX}/sbin" \ - --libdir="${EPREFIX}/$(get_libdir)" \ - --with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \ - --with-default-run-dir=/run/lvm \ - --with-default-locking-dir=/run/lock/lvm \ - --with-dmeventd-path=/sbin/dmeventd \ - --with-default-pid-dir=/run \ - $(use_enable udev udev_rules) \ - $(use_enable udev udev_sync) \ - $(use_with udev udevdir "${udevdir}") \ - "$(systemd_with_unitdir)" \ - ${myconf} \ - CLDFLAGS="${LDFLAGS}" -} - -src_compile() { - pushd include >/dev/null - emake - popd >/dev/null - - emake AR="$(tc-getAR)" - emake CC="$(tc-getCC)" -C scripts lvm2_activation_generator_systemd_red_hat -} - -src_install() { - local inst - for inst in install install_systemd_units install_systemd_generators install_tmpfiles_configuration; do - emake DESTDIR="${D}" ${inst} - done - - dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{c,txt} conf/*.conf - newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm - newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring - newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm - if use clvm; then - newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd - newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd - fi - - # move shared libs to /lib(64) - if use static-libs; then - dolib.a libdm/ioctl/libdevmapper.a - dolib.a libdaemon/client/libdaemonclient.a #462908 - #gen_usr_ldscript libdevmapper.so - fi - - dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd - doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8 - newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd - - insinto /etc - doins "${FILESDIR}"/dmtab - - # Device mapper stuff - newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper - newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper - - newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd - if use static-libs; then - dolib.a daemons/dmeventd/libdevmapper-event.a - #gen_usr_ldscript libdevmapper-event.so - fi - - use static-libs || \ - rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a - - #insinto /etc/udev/rules.d/ - #newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules - - # do not rely on /lib -> /libXX link - sed -i \ - -e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \ - "${ED}"/etc/init.d/* || die -} - -pkg_postinst() { - ewarn "Make sure the \"lvm\" init script is in the runlevels:" - ewarn "# rc-update add lvm boot" - ewarn - ewarn "Make sure to enable lvmetad in /etc/lvm/lvm.conf if you want" - ewarn "to enable lvm autoactivation and metadata caching." -} - -src_test() { - einfo "Tests are disabled because of device-node mucking, if you want to" - einfo "run tests, compile the package and see ${S}/tests" -} |