summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPatrick Lauer <patrick@gentoo.org>2024-11-22 10:34:21 +0000
committerPatrick Lauer <patrick@gentoo.org>2024-11-22 10:34:30 +0000
commit359ca1bac60777c0fef75ab91343030d35a272d4 (patch)
treebe11bbd9329663e79ae791d9bee494874573234d
parentwww-client/chromium: drop 133.0.6835.3 (diff)
downloadgentoo-359ca1bac60777c0fef75ab91343030d35a272d4.tar.gz
gentoo-359ca1bac60777c0fef75ab91343030d35a272d4.tar.bz2
gentoo-359ca1bac60777c0fef75ab91343030d35a272d4.zip
dev-libs/librdkafka: add 2.6.1
Signed-off-by: Patrick Lauer <patrick@gentoo.org>
-rw-r--r--dev-libs/librdkafka/Manifest1
-rw-r--r--dev-libs/librdkafka/librdkafka-2.6.1.ebuild114
2 files changed, 115 insertions, 0 deletions
diff --git a/dev-libs/librdkafka/Manifest b/dev-libs/librdkafka/Manifest
index e53816e500da..b69d6987b661 100644
--- a/dev-libs/librdkafka/Manifest
+++ b/dev-libs/librdkafka/Manifest
@@ -1 +1,2 @@
DIST librdkafka-2.2.0.tar.gz 4340164 BLAKE2B 394c9fd25db0a3a02b16fec3d5d5acc4808b4c8a6c8e025e71f15a91c6311206bf4d7c863860be36483c150bb10955cdc98ba0f088fa493b20ae52154e2a83d0 SHA512 1a85b5864efdeece1327e461b62a378f24b73eb7174168f630aeff01d4a5074d6b2f15744bc267665fcfc6384e804df00c20b7271ecd85a98dca84746b86b4d9
+DIST librdkafka-2.6.1.tar.gz 4742684 BLAKE2B 4ee3d54f37b1c9d1a2dbaa77631459a9889319ca3ab00a31c201ecf0ae8e1c9a11663cf76aa322ca8aa6364008b11e6dbcc853c1cfe6bfdc04dab375a14da605 SHA512 d2b3fe9c38608174eb965ecdfb8f80e04eadaeb7b0f8b7dd2dddb9c6440f4b30785d261103085d4a6370843c68434238d15479450c84b52eca4b769c73d4ac11
diff --git a/dev-libs/librdkafka/librdkafka-2.6.1.ebuild b/dev-libs/librdkafka/librdkafka-2.6.1.ebuild
new file mode 100644
index 000000000000..b19ecf8d9d4e
--- /dev/null
+++ b/dev-libs/librdkafka/librdkafka-2.6.1.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="8"
+
+PYTHON_COMPAT=( python3_{9..12} )
+
+inherit flag-o-matic python-any-r1 toolchain-funcs
+
+DESCRIPTION="Apache Kafka C/C++ client library"
+HOMEPAGE="https://github.com/confluentinc/librdkafka"
+
+if [[ ${PV} == "9999" ]]; then
+ EGIT_REPO_URI="https://github.com/confluentinc/${PN}.git"
+
+ inherit git-r3
+else
+ SRC_URI="https://github.com/confluentinc/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~loong ~ppc ~ppc64 ~riscv ~sparc ~x86"
+fi
+
+LICENSE="BSD-2"
+
+# subslot = soname version
+SLOT="0/1"
+
+IUSE="+lz4 sasl ssl static-libs +zstd"
+
+LIB_DEPEND="
+ lz4? ( app-arch/lz4:=[static-libs(+)] )
+ sasl? ( dev-libs/cyrus-sasl:=[static-libs(+)] )
+ ssl? ( dev-libs/openssl:0=[static-libs(+)] )
+ zstd? ( app-arch/zstd:=[static-libs(+)] )
+ sys-libs/zlib:=[static-libs(+)]
+"
+# which: https://github.com/confluentinc/librdkafka/pull/4353
+BDEPEND="
+ sys-apps/which
+ virtual/pkgconfig
+ ${PYTHON_DEPS}
+"
+
+RDEPEND="net-misc/curl
+ !static-libs? ( ${LIB_DEPEND//\[static-libs(+)]} )"
+
+DEPEND="
+ ${RDEPEND}
+ elibc_musl? ( sys-libs/queue-standalone )
+ static-libs? ( ${LIB_DEPEND} )
+"
+
+pkg_setup() {
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ if [[ ${PV} != "9999" ]]; then
+ sed -i \
+ -e "s/^\(export RDKAFKA_GITVER=\).*/\1\"${PV}@release\"/" \
+ tests/run-test.sh || die
+ fi
+}
+
+src_configure() {
+ # error: unknown register name ‘%edx’ in ‘asm’
+ # https://bugs.gentoo.org/895464
+ # https://github.com/confluentinc/librdkafka/issues/2426
+ filter-lto
+
+ tc-export AR CC CXX LD NM OBJDUMP PKG_CONFIG STRIP
+
+ local myeconf=(
+ --prefix="${EPREFIX}/usr"
+ --build="${CBUILD}"
+ --host="${CHOST}"
+ --mandir="${EPREFIX}/usr/share/man"
+ --infodir="${EPREFIX}/usr/share/info"
+ --datadir="${EPREFIX}/usr/share"
+ --sysconfdir="${EPREFIX}/etc"
+ --localstatedir="${EPREFIX}/var"
+ --libdir="${EPREFIX}/usr/$(get_libdir)"
+ --no-cache
+ --no-download
+ --disable-debug-symbols
+ $(use_enable lz4)
+ $(use_enable sasl)
+ $(usex static-libs '--enable-static' '')
+ $(use_enable ssl)
+ $(use_enable zstd)
+ )
+
+ ./configure ${myeconf[@]} || die
+}
+
+src_test() {
+ # Simulate CI so we do not fail when tests are running longer than expected,
+ # https://github.com/confluentinc/librdkafka/blob/v1.6.1/tests/0062-stats_event.c#L101-L116
+ local -x CI=true
+
+ emake -C tests run_local
+}
+
+src_install() {
+ emake -j1 \
+ DESTDIR="${D}" \
+ docdir="/usr/share/doc/${PF}" \
+ install
+
+ if ! use static-libs; then
+ find "${ED}" -type f \( -name "*.a" -o -name "*.la" \) -delete || die
+ fi
+}