public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Marek Szuba" <marecki@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: net-libs/xrootd/
Date: Sat,  8 Apr 2023 20:56:42 +0000 (UTC)	[thread overview]
Message-ID: <1680987380.222a063bb53094f1da370667f3b48bdc2d59ef2a.marecki@gentoo> (raw)

commit:     222a063bb53094f1da370667f3b48bdc2d59ef2a
Author:     Marek Szuba <marecki <AT> gentoo <DOT> org>
AuthorDate: Sat Apr  8 20:07:49 2023 +0000
Commit:     Marek Szuba <marecki <AT> gentoo <DOT> org>
CommitDate: Sat Apr  8 20:56:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=222a063b

net-libs/xrootd: fix regressions introduced between 5.4.3-r2 and 5.5.0

Signed-off-by: Marek Szuba <marecki <AT> gentoo.org>

 net-libs/xrootd/xrootd-5.5.4-r1.ebuild | 190 +++++++++++++++++++++++++++++++++
 1 file changed, 190 insertions(+)

diff --git a/net-libs/xrootd/xrootd-5.5.4-r1.ebuild b/net-libs/xrootd/xrootd-5.5.4-r1.ebuild
new file mode 100644
index 000000000000..ea3bc8cea605
--- /dev/null
+++ b/net-libs/xrootd/xrootd-5.5.4-r1.ebuild
@@ -0,0 +1,190 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+DISTUTILS_OPTIONAL=1
+DISTUTILS_USE_PEP517="setuptools"
+DOCS_BUILDER="doxygen"
+DOCS_DEPEND="
+	media-gfx/graphviz
+	virtual/latex-base
+	python? ( dev-python/sphinx )
+"
+
+inherit cmake docs distutils-r1
+
+DESCRIPTION="Extended ROOT remote file server"
+HOMEPAGE="https://xrootd.slac.stanford.edu/"
+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="examples fuse http kerberos +libxml2 python readline +server systemd test"
+
+RESTRICT="!test? ( test )"
+
+CDEPEND="acct-group/xrootd
+	acct-user/xrootd
+	dev-libs/openssl:0=
+	net-libs/davix
+	sys-libs/zlib
+	virtual/libcrypt:=
+	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= )
+	systemd? ( sys-apps/systemd:= )
+"
+DEPEND="${CDEPEND}"
+BDEPEND="
+	python? (
+		${PYTHON_DEPS}
+		${DISTUTILS_DEPS}
+		test? ( >=dev-python/pytest-7.1.2[${PYTHON_USEDEP}] )
+	)
+	test? ( dev-util/cppunit )
+"
+RDEPEND="${CDEPEND}
+	dev-lang/perl
+"
+REQUIRED_USE="
+	http? ( kerberos )
+	python? ( ${PYTHON_REQUIRED_USE} )
+	test? ( server )
+"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-4.8.3-crc32.patch
+	"${FILESDIR}"/${PN}-5.4.3-cmake_no_python.patch
+	"${FILESDIR}"/${PN}-5.4.3-python_tests_py3.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_prepare() {
+	cmake_src_prepare
+
+	if use python; then
+		pushd "${S}"/bindings/python > /dev/null || die
+		distutils-r1_src_prepare
+		popd > /dev/null || die
+	fi
+}
+
+# FIXME: support xrdec - currently only builds against bundled isa-l
+src_configure() {
+	local mycmakeargs=(
+		-DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=$(usex libxml2 "no" "yes")
+		-DCMAKE_DISABLE_FIND_PACKAGE_systemd=$(usex systemd "no" "yes")
+		-DENABLE_FUSE=$(usex fuse)
+		-DENABLE_HTTP=$(usex http)
+		-DENABLE_KRB5=$(usex kerberos)
+		-DENABLE_MACAROONS=no
+		-DENABLE_PYTHON=$(usex python)
+		-DENABLE_READLINE=$(usex readline)
+		-DENABLE_SCITOKENS=no
+		-DENABLE_TESTS=$(usex test)
+		-DENABLE_VOMS=no
+		-DFORCE_ENABLED=yes
+		-DXRDCL_ONLY=$(usex server "no" "yes")
+	)
+	cmake_src_configure
+
+	if use python; then
+		pushd "${BUILD_DIR}"/bindings/python > /dev/null || die
+		distutils-r1_src_configure
+		popd > /dev/null || die
+	fi
+}
+
+src_compile() {
+	cmake_src_compile
+	if use python; then
+		pushd "${BUILD_DIR}"/bindings/python > /dev/null || die
+		distutils-r1_src_compile
+		popd > /dev/null || die
+	fi
+
+	docs_compile
+	# secondary documentation for python bindings
+	if use python && use doc; then
+		emake -C bindings/python/docs html
+	fi
+}
+
+python_test() {
+	epytest
+}
+
+src_test() {
+	pushd "${BUILD_DIR}/tests" > /dev/null || die
+	# There are more tests but since these are ones currently run by upstream in their CI,
+	# let's follow their example.
+	./common/test-runner ./XrdClTests/libXrdClTests.so "All Tests/UtilsTest/" || die
+	./common/test-runner ./XrdClTests/libXrdClTests.so "All Tests/SocketTest/" || die
+	./common/test-runner ./XrdClTests/libXrdClTests.so "All Tests/PollerTest/" || die
+	popd > /dev/null || die
+
+	# Python tests currently require manual configuration and start-up of an xrootd server.
+	# TODO: get this to run properly.
+	#use python && distutils-r1_src_test
+}
+
+src_install() {
+	dodoc docs/ReleaseNotes.txt
+	cmake_src_install
+	find "${ED}" \( -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
+
+	if use server; then
+		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
+	fi
+
+	if use python; then
+		pushd "${BUILD_DIR}"/bindings/python > /dev/null || die
+		distutils-r1_src_install
+		popd > /dev/null || die
+
+		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
+
+	if use test; then
+		for f in test-runner xrdshmap; do
+			rm "${ED}"/usr/bin/${f} || die "Failed to remove test helper ${f} from installed tree"
+		done
+		rm "${ED}"/usr/$(get_libdir)/libXrdClTest*.so || die "Failed to remove test libraries from installed tree"
+	fi
+}


             reply	other threads:[~2023-04-08 20:56 UTC|newest]

Thread overview: 79+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-04-08 20:56 Marek Szuba [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-09-30 14:19 [gentoo-commits] repo/gentoo:master commit in: net-libs/xrootd/ Guilherme Amadio
2024-07-03  9:20 Guilherme Amadio
2024-07-02 11:35 Guilherme Amadio
2024-03-10 16:46 Michał Górny
2024-03-08 21:37 Guilherme Amadio
2024-03-08 21:37 Guilherme Amadio
2024-03-08 21:37 Guilherme Amadio
2024-03-08 21:37 Guilherme Amadio
2024-02-06 10:49 Guilherme Amadio
2024-01-25 15:31 Guilherme Amadio
2023-12-11 15:08 Guilherme Amadio
2023-10-27 17:24 Guilherme Amadio
2023-10-27 16:29 Guilherme Amadio
2023-10-27 13:51 Guilherme Amadio
2023-07-11 14:32 Guilherme Amadio
2023-07-04 14:00 Guilherme Amadio
2023-07-04 13:50 Guilherme Amadio
2023-07-04  7:42 Guilherme Amadio
2023-07-04  7:42 Guilherme Amadio
2023-07-04  7:42 Guilherme Amadio
2023-06-30 17:46 Guilherme Amadio
2023-06-30 16:25 Guilherme Amadio
2023-06-08 11:59 Guilherme Amadio
2023-05-17 14:59 Guilherme Amadio
2023-05-11 11:00 Sam James
2023-04-08 20:56 Marek Szuba
2023-04-08 20:56 Marek Szuba
2023-03-24 15:39 Guilherme Amadio
2023-02-07 13:56 Guilherme Amadio
2022-10-18 15:01 Andrew Ammerlaan
2022-09-07 12:26 Marek Szuba
2022-09-02 10:52 Marek Szuba
2022-08-23 11:43 Guilherme Amadio
2022-07-30 15:27 Marek Szuba
2022-07-27  8:17 Marek Szuba
2022-07-27  8:11 Sam James
2021-12-16 15:48 Marek Szuba
2021-12-16 15:48 Marek Szuba
2021-12-16 15:48 Marek Szuba
2021-09-17 15:58 Marek Szuba
2021-05-27 13:48 Marek Szuba
2021-03-12 16:14 Marek Szuba
2021-03-04 10:41 Agostino Sarubbo
2021-03-01 17:18 Thomas Deutschmann
2021-02-25 15:34 Marek Szuba
2020-11-12  9:26 Marek Szuba
2020-10-16 10:59 Marek Szuba
2020-10-16 10:59 Marek Szuba
2020-10-09 11:12 Agostino Sarubbo
2020-09-18 17:43 Marek Szuba
2020-09-18 17:43 Marek Szuba
2020-08-24 17:19 Marek Szuba
2020-08-02 12:03 Michał Górny
2020-07-08 12:57 Marek Szuba
2020-06-26 11:08 Marek Szuba
2020-06-25  7:00 Agostino Sarubbo
2020-06-21 17:13 Agostino Sarubbo
2020-06-19 16:12 Marek Szuba
2020-05-14 17:05 Marek Szuba
2020-05-08 21:04 Marek Szuba
2020-05-08 21:04 Marek Szuba
2019-12-27 13:58 Marek Szuba
2019-12-20 14:11 Marek Szuba
2019-10-01 14:32 Guilherme Amadio
2019-08-05 14:55 Guilherme Amadio
2019-03-13 13:43 Guilherme Amadio
2019-03-13 13:43 Guilherme Amadio
2018-12-07  2:41 Thomas Deutschmann
2018-12-05  9:38 Agostino Sarubbo
2018-05-18 15:38 Guilherme Amadio
2017-01-03 21:22 Andrew Savchenko
2017-01-02  9:47 Andrew Savchenko
2016-12-31  8:52 Agostino Sarubbo
2016-12-31  8:52 Agostino Sarubbo
2016-12-30 15:32 Andrew Savchenko
2016-12-25 22:45 Andrew Savchenko
2016-12-25 22:03 Andrew Savchenko
2016-12-25 22:03 Andrew Savchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1680987380.222a063bb53094f1da370667f3b48bdc2d59ef2a.marecki@gentoo \
    --to=marecki@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox