summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dev-util/strace/Manifest1
-rw-r--r--dev-util/strace/strace-5.19.ebuild109
2 files changed, 110 insertions, 0 deletions
diff --git a/dev-util/strace/Manifest b/dev-util/strace/Manifest
index e711c709112..8c888d075c9 100644
--- a/dev-util/strace/Manifest
+++ b/dev-util/strace/Manifest
@@ -1,2 +1,3 @@
DIST strace-5.17.tar.xz 2281220 BLAKE2B 27e7dc19302c58144b0a7d8de41f717760b8e3cde4ab56892045727597bbfc894bf8f137aee476548c2d16d1e9c8005f931f31a5d2f8bfc4ce5565c2aa01f1ec SHA512 1b63cf7e6e339333b9d24fa20232409192abc815f2ebe2e336ef4acc039cd06c976b3c12e9ce993491a0e6b86c26b90ceba962f580e894b1ff5ab9863bdfcc44
DIST strace-5.18.tar.xz 2307412 BLAKE2B 658d17d2137344550ea3c2ece54708387c3b78020dbade45a7ef04905dc9d4703fa8d44802cca5a9448d096a7210d0178d8d78caab7e504fa998d1f9a0b59c65 SHA512 99418b84a5e2049cb6fe32eed19ddcb61bbefb25220550c67d92cd7bc3d44ae5d87ac228b3e1c207166b9bfdae55c624a0f4e603004599fb7ea3143bbccc749e
+DIST strace-5.19.tar.xz 2353276 BLAKE2B 44b9a87f36e66481d8ac2107efbc389fa64c47b2ae7b1cc728241baa1c7d2d5d4d9410622763eb1247b415cad9afdd9f61552d2545388cadf5a33b568ed09af2 SHA512 1ea1c6e12d05bf145bc3c74f8d06b08dfc3eae3a5a21bfe8ab080053dc4c2da8a95be5956652ea62bb083462015a55f9bc1d1023919dcf2929a05211b7dde963
diff --git a/dev-util/strace/strace-5.19.ebuild b/dev-util/strace/strace-5.19.ebuild
new file mode 100644
index 00000000000..edcd42346ba
--- /dev/null
+++ b/dev-util/strace/strace-5.19.ebuild
@@ -0,0 +1,109 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic toolchain-funcs
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/strace/strace.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="A useful diagnostic, instructional, and debugging tool"
+HOMEPAGE="https://strace.io/"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="aio perl selinux static unwind elfutils"
+REQUIRED_USE="?? ( unwind elfutils )"
+
+BDEPEND="virtual/pkgconfig"
+LIB_DEPEND="
+ unwind? ( sys-libs/libunwind[static-libs(+)] )
+ elfutils? ( dev-libs/elfutils[static-libs(+)] )
+ selinux? ( sys-libs/libselinux[static-libs(+)] )
+"
+# strace only uses the header from libaio to decode structs
+DEPEND="
+ static? ( ${LIB_DEPEND} )
+ aio? ( >=dev-libs/libaio-0.3.106 )
+ sys-kernel/linux-headers
+"
+RDEPEND="
+ !static? ( ${LIB_DEPEND//\[static-libs(+)]} )
+ perl? ( dev-lang/perl )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.11-static.patch"
+)
+
+src_prepare() {
+ default
+
+ eautoreconf
+
+ if [[ ! -e configure ]] ; then
+ # git generation
+ sed /autoreconf/d -i bootstrap || die
+ ./bootstrap || die
+ eautoreconf
+ [[ ! -e CREDITS ]] && cp CREDITS{.in,}
+ fi
+
+ # Stub out the -k test since it's known to be flaky. bug #545812
+ sed -i '1iexit 77' tests*/strace-k.test || die
+}
+
+src_configure() {
+ # Set up the default build settings, and then use the names strace expects.
+ tc-export_build_env BUILD_{CC,CPP}
+ local v bv
+ for v in CC CPP {C,CPP,LD}FLAGS ; do
+ bv="BUILD_${v}"
+ export "${v}_FOR_BUILD=${!bv}"
+ done
+
+ filter-lfs-flags # configure handles this sanely
+
+ export ac_cv_header_libaio_h=$(usex aio)
+ use elibc_musl && export ac_cv_header_stdc=no
+
+ local myeconfargs=(
+ --disable-gcc-Werror
+
+ # Don't require mpers support on non-multilib systems. #649560
+ --enable-mpers=check
+
+ $(use_enable static)
+ $(use_with unwind libunwind)
+ $(use_with elfutils libdw)
+ $(use_with selinux libselinux)
+ )
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ if has usersandbox ${FEATURES} ; then
+ # bug #643044
+ ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..."
+ return 0
+ fi
+
+ default
+}
+
+src_install() {
+ default
+
+ if use perl ; then
+ exeinto /usr/bin
+ doexe src/strace-graph
+ fi
+
+ dodoc CREDITS
+}