commit:     ff147ad296de6982fb1b12b7f4e5cfe00cf83649
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 18 06:55:21 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 18 07:00:43 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff147ad2

sys-apps/s390-tools: add 2.40.0

* Make various deps disabled rather than automagic, including new Rust
  support. Can revisit this...

* USE=pfm seems wrong, we want dev-libs/libpfm for that, introduced back
  in 2016. Fixed accordingly.

* Fixes build w/ GCC 15 (inline asm needed updating).

Bug: https://bugs.gentoo.org/967616
Bug: https://bugs.gentoo.org/967675
Fixes: 23bede4dba7eb9a84042110a0418ec8fd39ac442
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/s390-tools/Manifest                 |  1 +
 sys-apps/s390-tools/s390-tools-2.40.0.ebuild | 86 ++++++++++++++++++++++++++++
 2 files changed, 87 insertions(+)

diff --git a/sys-apps/s390-tools/Manifest b/sys-apps/s390-tools/Manifest
index 72c2060afdba..965ccd6ac612 100644
--- a/sys-apps/s390-tools/Manifest
+++ b/sys-apps/s390-tools/Manifest
@@ -1,3 +1,4 @@
 DIST s390-tools-2.12.0.tar.gz 1186816 BLAKE2B 
bdf7975d236ec939539221ba548d67582836ae1ef8fab29ff19ac32596ba60686d41db47412bfe7a86d74a1728e3ee41356403ba21557cec4400a2aae98165df
 SHA512 
4903ded5368966513e1090faca04482316870cf5fc53206d17ab98b821541e2836a016bd18cd1ca49ed6b5df0dff92dd1ed257ff712920a7aa3fd74e4a6bc6a0
 DIST s390-tools-2.27.0.tar.gz 1848002 BLAKE2B 
5b71cffee4eefeb834eed4e34abc1d1c3e8d8df4e7862f0af5d0b1b26172060168059569f6ac27a0de1d28e0bf3155cd9d789098b12b8b11b69c4858d9def3a2
 SHA512 
8ec83718639d17fe7b1990f4e492f1e1bdd11e814b7838c921733eeccb212f417141042118eadf1e8db498e3ff2ce0c8d404189e436cefe17d9a3dacea22429f
+DIST s390-tools-2.40.0.tar.gz 2279464 BLAKE2B 
9aeb5316d36abb2317a1ffc4053f98d77b4964f7441c4170b28577860e517cf71f156fbdc47e482cefe53a9fabd8f1feff12015546d77b460c64840b57bfa2e1
 SHA512 
1943429581b280bf9ea370da3700a234d509837cb45b2354cdf79b38db87d2183010d18d9132defd77b9d8e11b7e002c447ffd7c912e20a50da4cb6877758c0e
 DIST s390-tools-2.9.0.tar.gz 1162090 BLAKE2B 
a86b8b1859d125f476a96546163881723cf87536a654871269c23ec6e72266776083f5d49bff3c65c2a01af7de985d2079cc9504a605e3d42de297a464b8ee69
 SHA512 
23315e8914a5c797b0678298ff51fd95a3c9f065b0fa9f6cf954573fd5ad394890d7f8dbd9cf2501d845c76c3fe31952b25cb7c2b2d59744305b2f37cf3a65bb

diff --git a/sys-apps/s390-tools/s390-tools-2.40.0.ebuild 
b/sys-apps/s390-tools/s390-tools-2.40.0.ebuild
new file mode 100644
index 000000000000..b5c5e23c247a
--- /dev/null
+++ b/sys-apps/s390-tools/s390-tools-2.40.0.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit toolchain-funcs udev
+
+DESCRIPTION="User space utilities for the zSeries (s390) Linux kernel and 
device drivers"
+HOMEPAGE="https://github.com/ibm-s390-tools/s390-tools";
+SRC_URI="https://github.com/ibm-${PN}/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="-* ~s390"
+IUSE="abi_s390_32 cryptsetup curl fuse ncurses openssl pfm snmp zlib"
+
+RDEPEND="
+       curl? ( net-misc/curl )
+       fuse? ( sys-fs/fuse:3= )
+       ncurses? ( sys-libs/ncurses:= )
+       openssl? (
+               dev-libs/openssl:=
+               cryptsetup? (
+                       >=sys-fs/cryptsetup-2.0.3:=
+                       dev-libs/json-c:=
+               )
+       )
+       pfm? ( dev-libs/libpfm:= )
+       snmp? ( net-analyzer/net-snmp:= )
+       zlib? ( virtual/zlib:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       app-admin/genromfs
+       virtual/pkgconfig
+"
+
+src_prepare() {
+       default
+       sed -i -e 's/-lncurses/-lncurses -ltinfo/' "${S}"/hyptop/Makefile || die
+
+       # zipl only builds on 64bit
+       if use abi_s390_32 ; then
+               sed -i -e 's/^TOOL_DIRS = zipl /TOOL_DIRS = /' "${S}"/Makefile 
|| die
+       fi
+}
+
+src_configure() {
+       # 
https://github.com/ibm-s390-linux/s390-tools/tree/master?tab=readme-ov-file#dependencies
+       export MAKEOPTS+=" V=1"
+       export HAVE_DRACUT=0
+       export HAVE_CARGO=0
+       export HAVE_FUSE=$(usex fuse 1 0)
+       export HAVE_NCURSES=$(usex ncurses 1 0)
+       export HAVE_SNMP=$(usex snmp 1 0)
+       export HAVE_PFM=$(usex pfm 1 0)
+       export HAVE_ZLIB=$(usex zlib 1 0)
+       export HAVE_OPENSSL=$(usex openssl 1 0)
+       export HAVE_CRYPTSETUP2=$(usex cryptsetup 1 0)
+       export HAVE_JSONC=$(usex cryptsetup 1 0)
+       export HAVE_LIBCURL=$(usex curl 1 0)
+       # These need checking, but disabled for now to avoid automagic
+       export HAVE_GLIB2=0
+       export HAVE_LIBXML2=0
+       export HAVE_SYSTEMD=0
+       export HAVE_LIBUDEV=0
+       export HAVE_LIBNL3=0
+       tc-export AR BUILD_CC CC CXX LD NM OBJCOPY
+}
+
+src_compile() {
+       emake \
+               AR="${AR}" \
+               HOSTCC="${BUILD_CC}" \
+               CC="${CC}" LINK="${CC}" \
+               CXX="${CXX}" LINKXX="${CXX}" \
+               LD="${LD}" \
+               NM="${NM}" \
+               OBJCOPY="${OBJCOPY}"
+}
+
+src_install() {
+       default
+       udev_dorules etc/udev/rules.d/*.rules
+       keepdir /var/log/ts-shell
+}

Reply via email to