commit:     b6989bd50f3a7d466f68969049d2388720d6f183
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Fri Jun 10 13:22:15 2022 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Fri Jun 10 15:25:27 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b6989bd5

net-libs/xrootd: add 5.4.3, drop 5.3.1 and 5.4.0

Disables several cases of dependency automagic present upstream build
scripts, and limits FUSE support to slot 0 (it doesn't work with, or
indeed detect, fuse-3 yet).

Furthermore, dev-libs/openssl is now a mandatory dependency - although
it is nominally (and only nominally, see Bug #822684) still possible
to disable the building of XrdCrypto in CMake, calls to OpenSSL functions
are now present elsewhere in xrootd code as well.

Closes: https://bugs.gentoo.org/822684
Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 net-libs/xrootd/Manifest                           |   3 +-
 .../xrootd/files/xrootd-5.4.3-no_automagic.patch   |  24 +++++
 net-libs/xrootd/metadata.xml                       |   1 +
 net-libs/xrootd/xrootd-5.3.1.ebuild                | 117 ---------------------
 .../{xrootd-5.4.0.ebuild => xrootd-5.4.3.ebuild}   |  27 +++--
 5 files changed, 43 insertions(+), 129 deletions(-)

diff --git a/net-libs/xrootd/Manifest b/net-libs/xrootd/Manifest
index 882c4506b26e..bb0210d32398 100644
--- a/net-libs/xrootd/Manifest
+++ b/net-libs/xrootd/Manifest
@@ -1,3 +1,2 @@
 DIST xrootd-5.0.3.tar.gz 2766694 BLAKE2B 
1fe7743de4d09c95257c3d761c2056024ba3ba59b7cd86b5926f2d32cc2f85dcd0af69e6e5969967591a2bba293902b757395e0f9375cbbbb39577eed9e450eb
 SHA512 
e085af48e4196a44e9ebd63bf1234cf4401f158d23d03ffb38fcfe43284d025abe6c0b5e46b2808b28f300b933ff12523f64ac2d86d3f344aa2e0aea95e30cb0
-DIST xrootd-5.3.1.tar.gz 2957788 BLAKE2B 
6669ce4811e6c65ef17f06ae219e19e1f12027f4f9b620ad447df53ac437b30ce6425dc783a0ac7e4557d18ab562c266ac2497d93e93a2058fe5bd4aa7bc1d42
 SHA512 
a65436fe649233bb28123d9529d496c11b4ff40ba5490cbcbb32ff5379e555cfd684fad350c784c80e70056bb5d2e9701a80543c7f4a8ceb11e935aea01800b3
-DIST xrootd-5.4.0.tar.gz 3225065 BLAKE2B 
cda6b14fae4c4c8d34367fa3ff448c02bf3ecda9c6bb4029d3a6b53370a57445ac25de77d5324dd4dab8c92cda77490efdbb862e4db6b926e19ad3363278f046
 SHA512 
59f93db433f0e88439d5edfffb75d7813bae253e50c390fe8c43ef924bc36f5f4a56db9b00a44013c60c4b4bd5a0accaff2a8ca793fe37e59dc77dd8ab8f6837
+DIST xrootd-5.4.3.tar.gz 3182127 BLAKE2B 
ed3f6a943167eafb5f6d7f78ca34f44c9a18b5ed672a4e622acb1e6e6997bd21756a30bf24f0b799ab4f16e7e1fb3f61a042f4e5e00f965b898fc5a287bf995a
 SHA512 
189ec8e20901fd07093494187502e031a60d4ade22af33067313fad7a1bf6a6feb5c5d9d59d3a86d13a6a767e5a93cf4836da02e9cae11c81ccac07199898d72

diff --git a/net-libs/xrootd/files/xrootd-5.4.3-no_automagic.patch 
b/net-libs/xrootd/files/xrootd-5.4.3-no_automagic.patch
new file mode 100644
index 000000000000..d50ea40e1c49
--- /dev/null
+++ b/net-libs/xrootd/files/xrootd-5.4.3-no_automagic.patch
@@ -0,0 +1,24 @@
+--- a/cmake/XRootDFindLibs.cmake
++++ b/cmake/XRootDFindLibs.cmake
+@@ -25,15 +25,19 @@
+ 
+ find_package( TinyXml )
+ 
+-find_package( LibXml2 )
++if( ENABLE_LIBXML2 )
++find_package( LibXml2 REQUIRED )
+ if( LIBXML2_FOUND )
+   add_definitions( -DHAVE_XML2 )
+ endif()
++endif()
+ 
+-find_package( Systemd )
++if( ENABLE_SYSTEMD )
++find_package( Systemd REQUIRED )
+ if( SYSTEMD_FOUND )
+   add_definitions( -DHAVE_SYSTEMD )
+ endif()
++endif()
+ 
+ find_package( CURL )
+ 

diff --git a/net-libs/xrootd/metadata.xml b/net-libs/xrootd/metadata.xml
index a911c7c2e75c..a8b5e8a0921c 100644
--- a/net-libs/xrootd/metadata.xml
+++ b/net-libs/xrootd/metadata.xml
@@ -16,6 +16,7 @@
   <use>
     <flag name="fuse">Enable the <pkg>sys-fs/fuse</pkg> filesystem 
driver</flag>
     <flag name="http">Enable http protocol support</flag>
+    <flag name="libxml2">Use <pkg>dev-libs/libxml2</pkg> for XML parsing 
(preferred) instead of bundled tinyxml</flag>
     <flag name="server">Install xrootd server and related plug-ins</flag>
   </use>
 </pkgmetadata>

diff --git a/net-libs/xrootd/xrootd-5.3.1.ebuild 
b/net-libs/xrootd/xrootd-5.3.1.ebuild
deleted file mode 100644
index a33ccf3fde4d..000000000000
--- a/net-libs/xrootd/xrootd-5.3.1.ebuild
+++ /dev/null
@@ -1,117 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{8..10} )
-
-# Upstream does not support the building of Python bindings
-# via CMake for more than one implementation at a time.
-inherit cmake python-single-r1
-
-DESCRIPTION="Extended ROOT remote file server"
-HOMEPAGE="http://xrootd.org/";
-SRC_URI="http://xrootd.org/download/v${PV}/${P}.tar.gz";
-
-LICENSE="LGPL-3"
-SLOT="0"
-KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="doc examples fuse http kerberos python readline ssl test"
-RESTRICT="!test? ( test )"
-
-CDEPEND="acct-group/xrootd
-       acct-user/xrootd
-       sys-libs/zlib
-       virtual/libcrypt:=
-       fuse? ( sys-fs/fuse:= )
-       kerberos? ( virtual/krb5 )
-       python? ( ${PYTHON_DEPS} )
-       readline? ( sys-libs/readline:0= )
-       ssl? ( <dev-libs/openssl-3.0.0:0= )
-"
-DEPEND="${CDEPEND}"
-BDEPEND="
-       doc? (
-               app-doc/doxygen[dot]
-               python? ( dev-python/sphinx )
-       )
-       test? ( dev-util/cppunit )
-"
-RDEPEND="${CDEPEND}
-       dev-lang/perl
-"
-REQUIRED_USE="
-       http? ( kerberos ssl )
-       python? ( ${PYTHON_REQUIRED_USE} )
-"
-
-PATCHES=( "${FILESDIR}"/xrootd-4.8.3-crc32.patch )
-
-# xrootd plugins are not intended to be linked with,
-# they are to be loaded at runtime by xrootd,
-# see https://github.com/xrootd/xrootd/issues/447
-QA_SONAME="/usr/lib.*/libXrd.*-$(ver_cut 1)\.so
-       /usr/lib.*/libXrdClTests\.so"
-
-pkg_setup() {
-       use python && python_setup
-}
-
-src_configure() {
-       local mycmakeargs=(
-               -DENABLE_CRYPTO=$(usex ssl)
-               -DENABLE_FUSE=$(usex fuse)
-               -DENABLE_HTTP=$(usex http)
-               -DENABLE_KRB5=$(usex kerberos)
-               -DENABLE_PYTHON=$(usex python)
-               -DENABLE_READLINE=$(usex readline)
-               -DENABLE_TESTS=$(usex test)
-       )
-       cmake_src_configure
-}
-
-src_compile() {
-       cmake_src_compile
-       if use doc; then
-               doxygen Doxyfile || die
-               if use python; then
-                       emake -C bindings/python/docs html
-               fi
-       fi
-}
-
-src_install() {
-       use doc && HTML_DOCS=( doxydoc/html/. )
-       dodoc docs/ReleaseNotes.txt
-       cmake_src_install
-       find "${D}" \( -iname '*.md5' -o -iname '*.map' \) -delete || die
-
-       # base configs
-       insinto /etc/xrootd
-       doins packaging/common/*.cfg
-
-       fowners root:xrootd /etc/xrootd
-       keepdir /var/log/xrootd
-       fowners xrootd:xrootd /var/log/xrootd
-
-       local i
-       for i in cmsd frm_purged frm_xfrd xrootd; do
-               newinitd "${FILESDIR}"/${i}.initd ${i}
-       done
-       # all daemons MUST use single master config file
-       newconfd "${FILESDIR}"/xrootd.confd xrootd
-
-       if use python; then
-               python_optimize "${D}/$(python_get_sitedir)"
-
-               if use doc; then
-                       docinto python
-                       docompress -x "/usr/share/doc/${PF}/python/html"
-                       dodoc -r bindings/python/docs/build/html
-               fi
-               if use examples; then
-                       docinto python
-                       dodoc -r bindings/python/examples
-               fi
-       fi
-}

diff --git a/net-libs/xrootd/xrootd-5.4.0.ebuild 
b/net-libs/xrootd/xrootd-5.4.3.ebuild
similarity index 83%
rename from net-libs/xrootd/xrootd-5.4.0.ebuild
rename to net-libs/xrootd/xrootd-5.4.3.ebuild
index b13ed2e2e71d..a8edf6912fda 100644
--- a/net-libs/xrootd/xrootd-5.4.0.ebuild
+++ b/net-libs/xrootd/xrootd-5.4.3.ebuild
@@ -1,12 +1,12 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=8
 
-PYTHON_COMPAT=( python3_{8..10} )
-
 # Upstream does not support the building of Python bindings
 # via CMake for more than one implementation at a time.
+PYTHON_COMPAT=( python3_{8..11} )
+
 inherit cmake python-single-r1
 
 DESCRIPTION="Extended ROOT remote file server"
@@ -16,18 +16,20 @@ 
SRC_URI="https://xrootd.slac.stanford.edu/download/v${PV}/${P}.tar.gz";
 LICENSE="LGPL-3"
 SLOT="0"
 KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
-IUSE="doc examples fuse http kerberos python readline +server ssl systemd test"
+IUSE="doc examples fuse http kerberos +libxml2 python readline +server systemd 
test"
 RESTRICT="!test? ( test )"
 
 CDEPEND="acct-group/xrootd
        acct-user/xrootd
+       dev-libs/openssl:0=
        sys-libs/zlib
        virtual/libcrypt:=
-       fuse? ( sys-fs/fuse:= )
+       fuse? ( sys-fs/fuse:0= )
+       http? ( net-misc/curl:= )
        kerberos? ( virtual/krb5 )
+       libxml2? ( dev-libs/libxml2:2= )
        python? ( ${PYTHON_DEPS} )
        readline? ( sys-libs/readline:0= )
-       ssl? ( <dev-libs/openssl-3.0.0:0= )
        systemd? ( sys-apps/systemd:= )
 "
 DEPEND="${CDEPEND}"
@@ -37,18 +39,22 @@ BDEPEND="
                virtual/latex-base
                python? ( dev-python/sphinx )
        )
+       python? ( $(python_gen_cond_dep 'dev-python/pip[${PYTHON_USEDEP}]') )
        test? ( dev-util/cppunit )
 "
 RDEPEND="${CDEPEND}
        dev-lang/perl
 "
 REQUIRED_USE="
-       http? ( kerberos ssl )
+       http? ( kerberos )
        python? ( ${PYTHON_REQUIRED_USE} )
        test? ( server )
 "
 
-PATCHES=( "${FILESDIR}"/xrootd-4.8.3-crc32.patch )
+PATCHES=(
+       "${FILESDIR}"/${PN}-4.8.3-crc32.patch
+       "${FILESDIR}"/${PN}-5.4.3-no_automagic.patch
+)
 
 # xrootd plugins are not intended to be linked with,
 # they are to be loaded at runtime by xrootd,
@@ -60,17 +66,18 @@ pkg_setup() {
        use python && python_setup
 }
 
-# FIXME: no systemd automagic!
 # FIXME: support xrdec - currently only builds against bundled isa-l
 src_configure() {
        local mycmakeargs=(
-               -DENABLE_CRYPTO=$(usex ssl)
                -DENABLE_FUSE=$(usex fuse)
                -DENABLE_HTTP=$(usex http)
                -DENABLE_KRB5=$(usex kerberos)
+               -DENABLE_LIBXML2=$(usex libxml2)
                -DENABLE_PYTHON=$(usex python)
                -DENABLE_READLINE=$(usex readline)
                -DENABLE_TESTS=$(usex test)
+               -DENABLE_VOMS=no
+               -DFORCE_ENABLED=yes
                -DXRDCL_ONLY=$(usex server "no" "yes")
        )
        cmake_src_configure

Reply via email to