diff options
-rw-r--r-- | pcr/multipath-tools-git/PKGBUILD | 44 | ||||
-rw-r--r-- | pcr/multipath-tools/PKGBUILD | 56 | ||||
-rw-r--r-- | pcr/multipath-tools/blacklist-cciss-devices.patch | 30 | ||||
-rw-r--r-- | pcr/multipath-tools/buffer-overflows.patch | 13 | ||||
-rw-r--r-- | pcr/multipath-tools/multipath-tools.install | 9 |
5 files changed, 108 insertions, 44 deletions
diff --git a/pcr/multipath-tools-git/PKGBUILD b/pcr/multipath-tools-git/PKGBUILD deleted file mode 100644 index d1bb4ac9b..000000000 --- a/pcr/multipath-tools-git/PKGBUILD +++ /dev/null @@ -1,44 +0,0 @@ -# Maintainer: Miguel Revilla <yo@miguelrevilla.com> -# Contributor: Alexander Rødseth <rodseth@gmail.com> -# Contributor: Timothée Ravier <tim@siosm.fr> - -pkgname=multipath-tools-git -pkgver=1295.81895af -pkgrel=1 -pkgdesc="Tools to drive the Device Mapper multipathing driver (contains kpartx)" -url="http://christophe.varoqui.free.fr/" -arch=('x86_64' 'i686') -license=('GPL2') -depends=('libaio' 'device-mapper') -makedepends=('git' 'setconf') -options=(!emptydirs) -source=("${pkgname}::git+http://git.opensvc.com/multipath-tools/.git") -md5sums=('SKIP') - -pkgver() { - cd ${pkgname} - echo $(git rev-list --count HEAD).$(git rev-parse --short HEAD) -} - -prepare() { - cd ${pkgname} - sed -i 's|/sbin|/usr/bin|g' Makefile.inc - sed -i 's|LIB=lib|LIB=usr/lib|g' Makefile.inc - sed -i 's|${prefix}/lib/udev|${prefix}/usr/lib/udev|g' Makefile.inc - sed -i 's|$(prefix)/lib/systemd/system|$(prefix)/usr/lib/systemd/system|g' Makefile.inc -} - -build() { - cd ${pkgname} - setconf Makefile.inc GZIP '/usr/bin/gzip -9 -c' - make -} - -package() { - cd ${pkgname} - make LIB="/usr/lib" DESTDIR="${pkgdir}" install - install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/${pkgname}/COPYING - cd "${pkgdir}"/usr/lib - rm libmpathpersist.so - ln -s libmpathpersist.so.0 libmpathpersist.so -} diff --git a/pcr/multipath-tools/PKGBUILD b/pcr/multipath-tools/PKGBUILD new file mode 100644 index 000000000..b497d0f60 --- /dev/null +++ b/pcr/multipath-tools/PKGBUILD @@ -0,0 +1,56 @@ +# Maintainer: Justin Dray <justin@dray.be> +# Contributor: Patrick McCarty <pnorcks at gmail dot com> +# Contributor: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> +# Contributor: Thomas S Hatch <thatch45 ar gmail dot com> +# Contributor: Michael P <ptchinster@archlinux.us> +# Contributor: Matt Heagney <matt@heagney.com> + +pkgname=multipath-tools +pkgver=0.5.0 +pkgrel=1 +pkgdesc='Multipath tools for Linux (including kpartx)' +arch=('i686' 'x86_64') +url="http://christophe.varoqui.free.fr/" +license=('GPL2') +depends=('libaio' 'device-mapper') +conflicts=('multipath-tools-git') +backup=('etc/multipath.conf') +install=multipath-tools.install +options=(!emptydirs) +source=(http://christophe.varoqui.free.fr/multipath-tools/$pkgname-$pkgver.tar.bz2 + buffer-overflows.patch + blacklist-cciss-devices.patch) +md5sums=('faf261d4cc717bf4c979557dc7bf5f52' + '869942bdd31decc696f9cf4af24df65b' + 'c81422ccf5fd5ca6208dfbdd66ff323c') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/buffer-overflows.patch" + patch -Np1 -i "${srcdir}/blacklist-cciss-devices.patch" + + sed -i 's|/etc/udev/rules.d|/usr/lib/udev|g' Makefile.inc kpartx/Makefile kpartx/kpartx.rules + sed -i 's|${prefix}/lib/udev|${prefix}/usr/lib/udev|g' Makefile.inc + sed -i 's|/sbin|/usr/bin|g' Makefile.inc multipathd/multipathd.service + sed -i '/Before/d' multipathd/multipathd.service +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make LIB="/usr/lib" \ + DESTDIR="${pkgdir}" \ + install + + install -d "${pkgdir}/usr/share/multipath/examples" + install -Dm644 "multipath.conf.annotated" "${pkgdir}/usr/share/multipath/examples/multipath.conf.annotated" + install -Dm644 "multipath.conf.defaults" "${pkgdir}/usr/share/multipath/examples/multipath.conf.defaults" + install -Dm644 "multipath.conf.synthetic" "${pkgdir}/usr/share/multipath/examples/multipath.conf.synthetic" + install -Dm644 "multipath.conf.defaults" "${pkgdir}/etc/multipath.conf" + rm "${pkgdir}/usr/lib/libmpathpersist.so" + ln -s "${pkgdir}/usr/lib/libmpathpersist.so.0" "libmpathpersist.so" +} diff --git a/pcr/multipath-tools/blacklist-cciss-devices.patch b/pcr/multipath-tools/blacklist-cciss-devices.patch new file mode 100644 index 000000000..30a4400a7 --- /dev/null +++ b/pcr/multipath-tools/blacklist-cciss-devices.patch @@ -0,0 +1,30 @@ +From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> +Date: Fri, 3 Oct 2008 12:39:48 +0200 +Subject: [PATCH] blacklist cciss devices + +cciss support isn't complete in 0.4.8 and the half functioning causes +problems in d-i among other things. +Closes: #500991 +--- + libmultipath/blacklist.c | 6 ++++++ + 1 files changed, 6 insertions(+), 0 deletions(-) + + +diff --git a/libmultipath/blacklist.c b/libmultipath/blacklist.c +index 79ddcde..6d0a0ad 100644 +--- a/libmultipath/blacklist.c ++++ b/libmultipath/blacklist.c +@@ -182,6 +182,13 @@ setup_default_blist (struct config * conf) + if (store_ble(conf->elist_property, str, ORIGIN_DEFAULT)) + return 1; + ++ str = STRDUP("^cciss!c[0-9]d[0-9]*"); ++ if (!str) ++ return 1; ++ if (store_ble(conf->blist_devnode, str, ORIGIN_DEFAULT)) ++ return 1; ++ ++ + vector_foreach_slot (conf->hwtable, hwe, i) { + if (hwe->bl_product) { + if (_blacklist_device(conf->blist_device, hwe->vendor,
\ No newline at end of file diff --git a/pcr/multipath-tools/buffer-overflows.patch b/pcr/multipath-tools/buffer-overflows.patch new file mode 100644 index 000000000..7d84ea91c --- /dev/null +++ b/pcr/multipath-tools/buffer-overflows.patch @@ -0,0 +1,13 @@ +diff --git a/libmultipath/prioritizers/hds.c b/libmultipath/prioritizers/hds.c +index f748707..1cec8a7 100644 +--- a/libmultipath/prioritizers/hds.c ++++ b/libmultipath/prioritizers/hds.c +@@ -125,7 +125,7 @@ int hds_modular_prio (const char *dev, int fd) + return -1; + } + +- snprintf (vendor, 9, "%.8s", inqBuffp + 8); ++ snprintf (vendor, 8, "%.8s", inqBuffp + 8); + snprintf (product, 17, "%.16s", inqBuffp + 16); + snprintf (serial, 5, "%.4s", inqBuffp + 40); + snprintf (ldev, 5, "%.4s", inqBuffp + 44);
\ No newline at end of file diff --git a/pcr/multipath-tools/multipath-tools.install b/pcr/multipath-tools/multipath-tools.install new file mode 100644 index 000000000..8ef2efaca --- /dev/null +++ b/pcr/multipath-tools/multipath-tools.install @@ -0,0 +1,9 @@ +post_install() { + + cat <<-EOF + * For full functonality ensure that the dm_multipath kernel module is loaded" + * Make sure to create /etc/multipath.conf based off of the defaults found in + /usr/share/multipath/examples + EOF + +} |