sys-cluster/rdma-core: Version bump (v25.0)
authorMikle Kolyada <zlogene@gentoo.org>
Fri, 13 Sep 2019 15:08:34 +0000 (18:08 +0300)
committerMikle Kolyada <zlogene@gentoo.org>
Fri, 13 Sep 2019 15:11:42 +0000 (18:11 +0300)
- make pandoc optional (otherwise 25.0 fails to build)
- point correct SHAREDSTATEDIR

Closes: https://bugs.gentoo.org/694158
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Mikle Kolyada <zlogene@gentoo.org>
sys-cluster/rdma-core/Manifest
sys-cluster/rdma-core/files/optional_pandoc.patch [new file with mode: 0644]
sys-cluster/rdma-core/rdma-core-24.0.ebuild
sys-cluster/rdma-core/rdma-core-25.0.ebuild [new file with mode: 0644]
sys-cluster/rdma-core/rdma-core-9999.ebuild

index 195599ddb951ed43286866e5e9a3c7b006a12b66..923dc16355268250ceb66f1207b56f2bf29f81d8 100644 (file)
@@ -1 +1,2 @@
 DIST rdma-core-24.0.tar.gz 1219485 BLAKE2B 400076305ca634a14d8f46df3477f9e3e753b95840237a217cfffe1a78e93ee90994e628f2a0693bde588ce15965df0014acb55bc92c36e3c45011cc69e9898a SHA512 0ef2b2b4250a1738adec964911a286f60e2310472c943dac1be45c70974a8bd1f32ee96013bff9e492132403af810aee1350d404a87ae7671731f7a5bd80c655
+DIST rdma-core-25.0.tar.gz 1494005 BLAKE2B 406926ae57ae4914a77c82025906270bbc45632ed1e0ecb44b1662d797066bf27275c8b4c4bee40795880bdb4ed06f8f9d3714cfffc64132c00395328ee0527f SHA512 b2c6eaf16f89fb913e35b0eb602f60e8bf45979673597c34006ed78c2e671cf1e50b1cc0752740dc474a58fc94eb0c3f66175183e6b903605ff1512469ceef38
diff --git a/sys-cluster/rdma-core/files/optional_pandoc.patch b/sys-cluster/rdma-core/files/optional_pandoc.patch
new file mode 100644 (file)
index 0000000..4ed0e3a
--- /dev/null
@@ -0,0 +1,54 @@
+The master "CMakeLists.txt" listed "pandoc" as an optional dependency,
+but subsequent "make install" fails if "pandoc" is missing.
+This patch makes "pandoc" really optional.
+diff -ru rdma-core-25.0.orig/CMakeLists.txt rdma-core-25.0/CMakeLists.txt
+--- a/CMakeLists.txt   2019-07-26 02:17:21.000000000 +0800
++++ b/CMakeLists.txt   2019-07-31 00:08:41.485085990 +0800
+@@ -602,11 +602,17 @@
+ add_subdirectory(kernel-headers)
+ # Libraries
+ add_subdirectory(libibumad)
++if (PANDOC_FOUND)
+ add_subdirectory(libibumad/man)
++endif()
+ add_subdirectory(libibverbs)
++if (PANDOC_FOUND)
+ add_subdirectory(libibverbs/man)
++endif()
+ add_subdirectory(librdmacm)
++if (PANDOC_FOUND)
+ add_subdirectory(librdmacm/man)
++endif()
+ # Providers
+ if (HAVE_COHERENT_DMA)
+@@ -614,13 +620,19 @@
+ add_subdirectory(providers/cxgb3) # NO SPARSE
+ add_subdirectory(providers/cxgb4) # NO SPARSE
+ add_subdirectory(providers/efa)
++if (PANDOC_FOUND)
+ add_subdirectory(providers/efa/man)
++endif()
+ add_subdirectory(providers/hns)
+ add_subdirectory(providers/i40iw) # NO SPARSE
+ add_subdirectory(providers/mlx4)
++if (PANDOC_FOUND)
+ add_subdirectory(providers/mlx4/man)
++endif()
+ add_subdirectory(providers/mlx5)
++if (PANDOC_FOUND)
+ add_subdirectory(providers/mlx5/man)
++endif()
+ add_subdirectory(providers/mthca)
+ add_subdirectory(providers/nes) # NO SPARSE
+ add_subdirectory(providers/ocrdma)
+@@ -639,7 +651,9 @@
+ add_subdirectory(libibnetdisc/man)
+ add_subdirectory(infiniband-diags)
+ add_subdirectory(infiniband-diags/scripts)
++if (PANDOC_FOUND)
+ add_subdirectory(infiniband-diags/man)
++endif()
+ if (CYTHON_EXECUTABLE)
+   add_subdirectory(pyverbs)
index fb16737ff026c348d420f7abee16c4653dbf72e3..f50ad59a5b0b58a28b218942dbabff68ee663456 100644 (file)
@@ -61,6 +61,7 @@ src_configure() {
        local mycmakeargs=(
                -DCMAKE_INSTALL_SYSCONFDIR=/etc
                -DCMAKE_INSTALL_FULL_RUNDIR=/run
+               -DCMAKE_INSTALL_SHAREDSTATEDIR=/var/lib
                -DCMAKE_INSTALL_UDEV_RULESDIR="$(get_udevdir)"/rules.d
                -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)"
                -DCMAKE_DISABLE_FIND_PACKAGE_pandoc=yes
diff --git a/sys-cluster/rdma-core/rdma-core-25.0.ebuild b/sys-cluster/rdma-core/rdma-core-25.0.ebuild
new file mode 100644 (file)
index 0000000..c2d1027
--- /dev/null
@@ -0,0 +1,95 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{5,6,7} )
+
+inherit cmake-utils python-single-r1 udev systemd
+
+DESCRIPTION="Userspace components for the Linux Kernel's drivers/infiniband subsystem"
+HOMEPAGE="https://github.com/linux-rdma/rdma-core"
+
+if [[ ${PV} == "9999" ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/linux-rdma/rdma-core"
+else
+       SRC_URI="https://github.com/linux-rdma/rdma-core/releases/download/v${PV}/${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="|| ( GPL-2 ( CC0-1.0 MIT BSD BSD-with-attribution ) )"
+SLOT="0"
+IUSE="neigh python static-libs systemd valgrind"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+COMMON_DEPEND="
+       virtual/libudev:=
+       neigh? ( dev-libs/libnl:3 )
+       systemd? ( sys-apps/systemd:= )
+       valgrind? ( dev-util/valgrind )
+       python? ( ${PYTHON_DEPS} )"
+
+DEPEND="${COMMON_DEPEND}
+       python? ( dev-python/cython[${PYTHON_USEDEP}] )"
+
+RDEPEND="${COMMON_DEPEND}
+       !sys-fabric/infiniband-diags
+       !sys-fabric/libibverbs
+       !sys-fabric/librdmacm
+       !sys-fabric/libibumad
+       !sys-fabric/ibacm
+       !sys-fabric/libibmad
+       !sys-fabric/srptools
+       !sys-fabric/infinipath-psm
+       !sys-fabric/libcxgb3
+       !sys-fabric/libcxgb4
+       !sys-fabric/libmthca
+       !sys-fabric/libmlx4
+       !sys-fabric/libmlx5
+       !sys-fabric/libocrdma
+       !sys-fabric/libnes"
+
+BDEPEND="virtual/pkgconfig"
+
+PATCHES=( "${FILESDIR}"/optional_pandoc.patch )
+
+pkg_setup() {
+       python-single-r1_pkg_setup
+
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DCMAKE_INSTALL_SYSCONFDIR=/etc
+               -DCMAKE_INSTALL_FULL_RUNDIR=/run
+               -DCMAKE_INSTALL_SHAREDSTATEDIR=/var/lib
+               -DCMAKE_INSTALL_UDEV_RULESDIR="$(get_udevdir)"/rules.d
+               -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)"
+               -DCMAKE_DISABLE_FIND_PACKAGE_pandoc=yes
+               $(ver_test -ge 25 && echo -DCMAKE_DISABLE_FIND_PACKAGE_rst2man=yes)
+               -DCMAKE_DISABLE_FIND_PACKAGE_Systemd="$(usex systemd no yes)"
+               -DENABLE_VALGRIND="$(usex valgrind)"
+               -DENABLE_RESOLVE_NEIGH="$(usex neigh)"
+               -DENABLE_STATIC="$(usex static-libs)"
+       )
+
+       if use python; then
+               mycmakeargs+=( -DNO_PYVERBS=OFF )
+       else
+               mycmakeargs+=( -DNO_PYVERBS=ON )
+       fi
+
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       udev_dorules "${D}"/etc/udev/rules.d/70-persistent-ipoib.rules
+       rm -r "${D}"/etc/{udev,init.d} || die
+
+       newinitd "${FILESDIR}"/ibacm.init ibacm
+       newinitd "${FILESDIR}"/iwpmd.init iwpmd
+       newinitd "${FILESDIR}"/srpd.init srpd
+}
index e96e6d7990866f9a304b8a633fb0b7d399fe91ab..69def0d58b5718fc5436624d5c896006db978239 100644 (file)
@@ -61,6 +61,7 @@ src_configure() {
        local mycmakeargs=(
                -DCMAKE_INSTALL_SYSCONFDIR=/etc
                -DCMAKE_INSTALL_FULL_RUNDIR=/run
+               -DCMAKE_INSTALL_SHAREDSTATEDIR=/var/lib
                -DCMAKE_INSTALL_UDEV_RULESDIR="$(get_udevdir)"/rules.d
                -DCMAKE_INSTALL_SYSTEMD_SERVICEDIR="$(systemd_get_systemunitdir)"
                -DCMAKE_DISABLE_FIND_PACKAGE_pandoc=yes