summaryrefslogtreecommitdiffstats
path: root/abs/core/lvm2
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/lvm2')
-rw-r--r--abs/core/lvm2/ChangeLog103
-rw-r--r--abs/core/lvm2/PKGBUILD83
-rw-r--r--abs/core/lvm2/lvm2_hook17
-rw-r--r--abs/core/lvm2/lvm2_install15
4 files changed, 185 insertions, 33 deletions
diff --git a/abs/core/lvm2/ChangeLog b/abs/core/lvm2/ChangeLog
new file mode 100644
index 0000000..5809ab5
--- /dev/null
+++ b/abs/core/lvm2/ChangeLog
@@ -0,0 +1,103 @@
+2010-07-11 Thomas Bächler <thomas@archlinux.org>
+
+ * lvm2/device-mapper 2.02.70-1
+ * Upstream update
+ * Do not move the dmeventd manpage, has been fixed upstream
+ * Remove all the || return 1 in PKGBUILD
+
+2010-07-01 Eric Belanger <eric@archlinux.org>
+
+ * lvm2/device-mapper 2.02.69-1
+ * Upstream update
+ * Moved dmeventd man page from lvm2 to device-mapper package
+
+2010-06-25 Eric Belanger <eric@archlinux.org>
+
+ * lvm2/device-mapper 2.02.68-1
+ * Upstream update
+ * Fixed tr path in lvmdump
+
+2010-04-05 Eric Belanger <eric@archlinux.org>
+
+ * lvm2/device-mapper 2.02.62-1
+ * Upstream update
+ * Fixed license
+
+2010-02-27 Eric Belanger <eric@archlinux.org>
+
+ * lvm2/device-mapper 2.02.61-1
+ * Upstream update
+
+2010-01-24 Thomas Bächler <thomas@archlinux.org>
+ * lvm2/device-mapper 2.02.60-2
+ * Rebuilt without -Wl,--as-needed, it breaks dmeventd monitoring
+
+2010-01-24 Thomas Bächler <thomas@archlinux.org>
+ * lvm2/device-mapper update to 2.02.60-1
+ * Clean up PKGBUILD, fix internal paths to dmeventd and its helpers
+
+2009-11-27 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.56-1
+ * device-mapper 1.02.40-1
+ * Upstream update
+
+2009-10-31 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.54-1
+ * device-mapper 1.02.39-1
+ * Upstream update
+ * Enabled the device-mapper event daemon
+ * Moved the udev rule from /etc to /lib
+
+2009-09-27 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.53-1
+ * device-mapper 1.02.38-1
+ * Upstream update
+
+2009-09-18 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.52-1
+ * device-mapper 1.02.37-1
+ * Upstream update
+ * Implemented split packages
+ * PKGBUILD clean up
+ * Renamed pkgconfig file (close FS#15909)
+
+2009-07-09 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.48-1
+ * device-mapper 1.02.33-1
+ * Upstream update
+ * Removed unneeded readline depends (close FS#15205)
+
+2009-05-24 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.47-1
+ * device-mapper 1.02.32-1
+ * Upstream update
+ * Added dmsetup.static
+
+2009-03-07 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.45-1
+ * device-mapper 1.02.31-1
+ * Upstream update
+
+2009-01-31 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.44-1
+ * device-mapper 1.02.30-1
+ * Upstream update
+ * Added bash depends
+ * Added readline depends
+ * Added pkgconfig file
+
+2008-11-11 Eric Belanger <eric@archlinux.org>
+
+ * lvm2 2.02.43-1
+ * device-mapper 1.02.29-1
+ * Upstream update
+ * Disabled SMP build
+ * Added ChangeLog
diff --git a/abs/core/lvm2/PKGBUILD b/abs/core/lvm2/PKGBUILD
index 1819c76..b4be343 100644
--- a/abs/core/lvm2/PKGBUILD
+++ b/abs/core/lvm2/PKGBUILD
@@ -1,35 +1,64 @@
-# $Id: PKGBUILD 1726 2008-05-15 13:19:26Z thomas $
-# Maintainer: Thomas Baechler <thomas@archlinux.org>
-pkgname=lvm2
-pkgver=2.02.37
-pkgrel=10
-pkgdesc="Logical Volume Manager 2 utilities"
+# $Id: PKGBUILD 85275 2010-07-11 10:26:53Z thomas $
+# Maintainer: Eric Belanger <eric@archlinux.org>
+
+pkgbase=lvm2
+pkgname=('lvm2' 'device-mapper')
+pkgver=2.02.70
+_pkgverdm=1.02.52
+_pkgverlvm=${pkgver}
+pkgrel=1
arch=('i686' 'x86_64')
-license=('GPL')
url="http://sourceware.org/lvm2/"
+license=('GPL2' 'LGPL2.1')
groups=('base')
-depends=('device-mapper>=1.02.22')
-conflicts=('lvm')
-backup=('etc/lvm/lvm.conf')
-source=(ftp://sources.redhat.com/pub/lvm2/LVM2.$pkgver.tgz
+conflicts=('mkinitcpio<0.5.99')
+changelog=ChangeLog
+source=(ftp://sources.redhat.com/pub/lvm2/LVM2.${_pkgverlvm}.tgz
lvm2_install
lvm2_hook)
-md5sums=('19c19e1f31ec548dc31982478a8a5f63'
- '40dccdb1044f00fc1e29ca549933d4bd'
- '73c8c2eba0fe891712c859c18b5b8aa2')
+md5sums=('39c26d5a821754cc347d7a19e82d4a24'
+ 'f781c9f5dd4f9934952c687b73d26a18'
+ '95bed25bdbc2c2d8500e7a07aeff7f65')
+sha1sums=('6f88114e72204feee491befd5f0e203036b90f11'
+ '583424bb0a6f89ffe4e4ea446b912f0fedac7050'
+ '0dc0c0d620f634c4d078afdb78e3bae15ccf957b')
build() {
- cd $startdir/src/LVM2.$pkgver
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make || return 1
- make DESTDIR=$startdir/pkg sbindir=$startdir/pkg/sbin install || return 1
- mkdir -p $startdir/pkg/etc/lvm/{archive,backup}
- # a static binary is required for Arch's initrd
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --enable-static_link
- make || return 1
- install -D -m755 tools/lvm.static $startdir/pkg/sbin/lvm.static
- # add hook
- install -D -m644 $startdir/src/lvm2_hook $startdir/pkg/lib/initcpio/hooks/lvm2
- install -D -m644 $startdir/src/lvm2_install $startdir/pkg/lib/initcpio/install/lvm2
+ cd "${srcdir}/LVM2.${_pkgverlvm}"
+ sed -i 's|/usr/bin/tr|/bin/tr|' scripts/lvmdump.sh
+ unset LDFLAGS
+ ./configure --prefix= --sysconfdir=/etc --localstatedir=/var --datarootdir=/usr/share \
+ --includedir=/usr/include --with-usrlibdir=/usr/lib \
+ --enable-pkgconfig --enable-readline --enable-dmeventd --enable-cmdlib --enable-applib \
+ --with-udevdir=/lib/udev/rules.d/ --enable-udev_sync --enable-udev_rules
+ make
+}
+
+package_device-mapper() {
+ pkgdesc="Device mapper userspace library and tools"
+ url="http://sourceware.org/dm/"
+ depends=('glibc' 'udev')
+
+ cd "${srcdir}/LVM2.${_pkgverlvm}"
+ make DESTDIR="${pkgdir}" install_device-mapper
+}
+
+package_lvm2() {
+ pkgdesc="Logical Volume Manager 2 utilities"
+ depends=('bash' "device-mapper>=${pkgver}" 'udev' 'readline')
+ conflicts=('lvm' 'mkinitcpio<0.5.99')
+ backup=('etc/lvm/lvm.conf')
+ options=('!makeflags')
+
+ cd "${srcdir}/LVM2.${_pkgverlvm}"
+ make DESTDIR="${pkgdir}" install_lvm2
+ # install applib
+ cd liblvm
+ make DESTDIR="${pkgdir}" install
+ cd ..
+ # /etc directories
+ install -d "${pkgdir}"/etc/lvm/{archive,backup}
+ # mkinitcpio hook
+ install -D -m644 "${srcdir}/lvm2_hook" "${pkgdir}/lib/initcpio/hooks/lvm2"
+ install -D -m644 "${srcdir}/lvm2_install" "${pkgdir}/lib/initcpio/install/lvm2"
}
diff --git a/abs/core/lvm2/lvm2_hook b/abs/core/lvm2/lvm2_hook
index b98e87d..13183c6 100644
--- a/abs/core/lvm2/lvm2_hook
+++ b/abs/core/lvm2/lvm2_hook
@@ -3,14 +3,23 @@ run_hook ()
{
/sbin/modprobe -q dm-mod >/dev/null 2>&1
if [ -e "/sys/class/misc/device-mapper" ]; then
- read dev_t < /sys/class/misc/device-mapper/dev
- /bin/mknod "/dev/mapper/control" c $(/bin/replace "${dev_t}" ':')
+ if [ ! -e "/dev/mapper/control" ]; then
+ /bin/mknod "/dev/mapper/control" c $(cat /sys/class/misc/device-mapper/dev | sed 's|:| |')
+ fi
+
+ # If the lvmwait= parameter has been specified on the command line
+ # wait for the device(s) before trying to activate the volume group(s)
+ if [ -n "${lvmwait}" ]; then
+ for pvdev in $(echo ${lvmwait} | sed 's|,| |g'); do
+ poll_device ${pvdev} ${rootdelay}
+ done
+ fi
[ "${quiet}" = "y" ] && LVMQUIET=">/dev/null"
msg "Scanning logical volumes..."
- eval /bin/lvm vgscan --ignorelockingfailure $LVMQUIET
+ eval /sbin/lvm vgscan --ignorelockingfailure $LVMQUIET
msg "Activating logical volumes..."
- eval /bin/lvm vgchange --ignorelockingfailure -ay $LVMQUIET
+ eval /sbin/lvm vgchange --ignorelockingfailure --ignoremonitoring -ay $LVMQUIET
fi
}
diff --git a/abs/core/lvm2/lvm2_install b/abs/core/lvm2/lvm2_install
index c6cacc3..4ce9f18 100644
--- a/abs/core/lvm2/lvm2_install
+++ b/abs/core/lvm2/lvm2_install
@@ -2,18 +2,29 @@
install ()
{
- MODULES=" dm-mod "
+ MODULES=" dm-mod dm-snapshot dm-mirror"
BINARIES=""
FILES=""
SCRIPT="lvm2"
add_dir "/dev/mapper"
- add_file "/sbin/lvm.static" "/bin/lvm"
+ add_binary "/sbin/lvm"
+ add_binary "/sbin/dmsetup"
+ add_binary "/sbin/dmeventd"
+ add_file "/lib/udev/rules.d/10-dm.rules"
+ add_file "/lib/udev/rules.d/13-dm-disk.rules"
+ add_file "/lib/udev/rules.d/95-dm-notify.rules"
+ add_file "/lib/udev/rules.d/11-dm-lvm.rules"
}
help ()
{
cat<<HELPEOF
This hook loads the necessary modules for an LVM2 root device.
+
+ The optional lvmwait= parameter followed by a comma-separated
+ list of device names can be given on the command line.
+ It will cause the hook to wait until all given devices exist
+ before trying to scan and activate any volume groups.
HELPEOF
}