summaryrefslogtreecommitdiff
path: root/dev-debug/ltrace
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-01-19 20:08:27 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-01-19 20:08:27 +0000
commit2b2f431a0021b4787ca3c028cefb30ad81347778 (patch)
tree951e0155f53027c8fd29eaba26df4f08292668d5 /dev-debug/ltrace
parentd725480af7cbc67d784e5d96f973fa41e9030123 (diff)
gentoo auto-resync : 19:01:2024 - 20:08:27
Diffstat (limited to 'dev-debug/ltrace')
-rw-r--r--dev-debug/ltrace/Manifest13
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-CXX-for-tests.patch11
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-alpha-protos.patch12
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-ia64-pid_t.patch6
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-ia64.patch39
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-musl-host.patch11
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.3-print-test-pie.patch15
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.91-debian-patchset-6.4.patch77
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.91-pid_t.patch10
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.91-test-glibc-2.33.patch11
-rw-r--r--dev-debug/ltrace/files/ltrace-0.7.91-tuple-tests.patch11
-rw-r--r--dev-debug/ltrace/ltrace-0.7.91_pre20221216-r1.ebuild63
-rw-r--r--dev-debug/ltrace/metadata.xml15
13 files changed, 294 insertions, 0 deletions
diff --git a/dev-debug/ltrace/Manifest b/dev-debug/ltrace/Manifest
new file mode 100644
index 000000000000..76544f73735a
--- /dev/null
+++ b/dev-debug/ltrace/Manifest
@@ -0,0 +1,13 @@
+AUX ltrace-0.7.3-CXX-for-tests.patch 255 BLAKE2B cd213eff103c4efa9a96a28a333825b32b43333b07a6e25ccbf5a216ba12a0fa1e38f5a1b4644ca19f9eec0df0cddb8fae95a92e5e44af497aacc448a2eb58c6 SHA512 02ecca05ff34739c234f9b3a2331b10f2bb62289c2698095a4276fdb76d3494e1657c7551a5933876bf5b722db3a1c62dd839db7768ebd69c897b4a109bd5cc5
+AUX ltrace-0.7.3-alpha-protos.patch 541 BLAKE2B 727e9acb2c12cfda3d5c15903bda8bff9e8f8823a03daa3031d4cb022b9735026e14d9e6d756c568a92401f546589aa94b099c27d6fa1555d365b0d00ce041a2 SHA512 32738dd0688c861961703a5e5c0e14324218f3ecdfdbcef0977522e2de1c9d77fc0fa1a3ea0d2074190293bf360cf8b5adfa16c67a002a1df38e37c70c024595
+AUX ltrace-0.7.3-ia64-pid_t.patch 184 BLAKE2B 4d739f7ad6474541cec166cc1262637edbf30b32ef3335ac92e834bd611472de5473801ad307b7ba56eec0657bbcceea48d7fe17517663c6389d0843e9a9d5bc SHA512 1029f86f3b3e33eebcdbafa6dc56e2ece2a33234a6b7a0b05e4bb87424829c5f512e019e6c6a962e639a9cfeac56edea3d0ac250fc31489755e68d2181ce254f
+AUX ltrace-0.7.3-ia64.patch 1538 BLAKE2B 2a407d2e19e74ddf22da1371cf72585cec5c630d00670798c6c8e9b3991d3aac641784bceeda544b49e76ae572c487bc5455de4239aa967e25318625e0307e0f SHA512 c6e7576047aa06eca67a80ecaa008854a2e312b1d38693cc802a6b6be6f671003716c6a0d3268fb3f076f3311fb27c228f55220bcb2432afd0210542020764ad
+AUX ltrace-0.7.3-musl-host.patch 313 BLAKE2B 3ff936391668b118db37aabcf197081b85ed1ac67759a275ae3d18b398fb7af96ec74475f1c50d1dfa22153c459c079fe95789826b8c4eaecb6c38575f7be8aa SHA512 4aa92f406a45aa10cf8b456fd4eb1421d74c682040c71a6819f9caea60dd275cd268a42d0c656e68d7cda70b152bc4e83bc70461c5ac0732d09b70abc77f0ed8
+AUX ltrace-0.7.3-print-test-pie.patch 774 BLAKE2B e67bedbd0ea2470007390634fe588ee7cd074cff4b90f57fe821f6124d4aee9e2cb8f60b46b7007659d5a29d929cf579c38d858c31b8667ba50f64d579909c81 SHA512 9f407805719f21838fa3d2c48aaa96025fb4785a28b5b4e50b2593093067ed6cb406dbb662e0178e84e9db101b4cfa12867127cd212abf6417130e7cb4c21002
+AUX ltrace-0.7.91-debian-patchset-6.4.patch 1868 BLAKE2B 6d3a8565c8dba4b4d73f9df2b0fd9c85971477ddc6e549310476ad7a81c050328fb51104f8801cbc1ca6b458a41cd14113faf9ccf219db2fffd195619d0a3bf2 SHA512 5ba893f3295b11193a56d49bab5c874350f42e58ed8ecc397c33e2f51947609a607cb84e06d8ff8f38392815afbd75f567ab6366ffded93345477bec8e92ae10
+AUX ltrace-0.7.91-pid_t.patch 182 BLAKE2B 0425953956211429741d7a2f1527e8614428af250f12d0a93687000b54ab58b7ced0bc3cd278f0f64ecef6cd20dc1c87625ebfc033f518f2571ca450205409dc SHA512 93207907df8300aa5e396d1fa2bfd35993e4e5c5308a0ba1a2fcdc95cae7c817df9d67a108e3c392a2b13152ea3b73dd721f61bad99203f04b016d6d939fb508
+AUX ltrace-0.7.91-test-glibc-2.33.patch 351 BLAKE2B 8daacf679828735a37ec062ce775b6087de363a447bb35d25e20e51d256a30b80f3bdc87867c0752ad0e5011eb625fc0b0c54998cd7c0ddc4cde6be33a35f138 SHA512 b689072e5d7a098aff5dcc0a424e69c48a859514fefc459144c24d0ddd7ee800c82766d0fac741e75de1691dd874369db7a44db676e60f2176426115c0e21a04
+AUX ltrace-0.7.91-tuple-tests.patch 431 BLAKE2B 452e19ff22cd4453e73f1652777ffd998c3af1bb510815c5867a38b53cc25924a02aa055bb335491b0292c430749db6febca79222d1669a3f416ff1dcde4c715 SHA512 6ec368bc19f870322e21d05a409b29aa1064c8c901c98d4281a35513149bc6104282bb4b655506fdd22dd305edb10d438416e2f42bf65cd59748c17ce5a386d9
+DIST ltrace-0.7.91_pre20221216.tar.bz2 288077 BLAKE2B cadc2ac551a96dfa95aee0d0eb251d8f41a8631350ba3be3f67d0cb10774a3db6abbd42481d24febdfcb0d565107e66b4de0056a85a7954bb050adb8e8fa5b4a SHA512 993c247797551b4fbb202c04f9af08063c8641946825b17d1f32c4647c606ece803a6b049c4afa3046c798add161ab58f01d90106f3b6029a223af03bca27a99
+EBUILD ltrace-0.7.91_pre20221216-r1.ebuild 1732 BLAKE2B 23c02f090da9a64747dd5c932295329f59b422f3495515407853d24f9046be35212683ce4b7f751e04e4990ea9ba512fed48f4b5fb6df44b6325f4ff6903d83b SHA512 f8d2f2af42a13178ce16a0807656ef4d473c9de3c5363ad3deedd0de1e40b4d21691754286e199c24bd6ca8c96b9ca8feddec2a4de566ab8c3c5b86d47b70008
+MISC metadata.xml 537 BLAKE2B 24953f8433b61bae5b1405f07bd321b6a2c284a3c20076c2f4263ed68cd7185fa51866aea595a616a15b6195b4841c8a5df61a075f00457b550b529ba2a39664 SHA512 5003800cc9a96fe56b72060bd439922dae92d8066ceee0cd90bbcc082c3db46de50cf53cbc05e9b840799d80362a5176a2c659b03846fd8283acec292898bb7b
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-CXX-for-tests.patch b/dev-debug/ltrace/files/ltrace-0.7.3-CXX-for-tests.patch
new file mode 100644
index 000000000000..06db36c46818
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-CXX-for-tests.patch
@@ -0,0 +1,11 @@
+Testsuite uses CXX to trace mangled symbols.
+--- a/configure.ac
++++ b/configure.ac
+@@ -53,6 +53,7 @@ AC_SUBST(HOST_CPU)
+
+ # Checks for programs.
+ AC_PROG_CC
++AC_PROG_CXX
+ LT_INIT
+ # libtool-2: LT_INIT()
+ AM_INIT_AUTOMAKE([foreign no-exeext dist-bzip2])
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-alpha-protos.patch b/dev-debug/ltrace/files/ltrace-0.7.3-alpha-protos.patch
new file mode 100644
index 000000000000..7ff573272963
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-alpha-protos.patch
@@ -0,0 +1,12 @@
+Fix build failure on alpha:
+ plt.c:32:12: error: dereferencing pointer to incomplete type ‘struct library_symbol’
+ return sym->enter_addr;
+ ^
+--- a/sysdeps/linux-gnu/alpha/plt.c 2012-11-10 13:43:55.000000000 +0100
++++ b/sysdeps/linux-gnu/alpha/plt.c 2016-06-27 23:21:28.000000000 +0200
+@@ -23,0 +24 @@
++#include "library.h"
+--- a/sysdeps/linux-gnu/alpha/trace.c 2016-06-27 23:30:08.000000000 +0200
++++ b/sysdeps/linux-gnu/alpha/trace.c 2016-06-27 23:25:20.000000000 +0200
+@@ -29,0 +30 @@
++#include "backend.h"
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-ia64-pid_t.patch b/dev-debug/ltrace/files/ltrace-0.7.3-ia64-pid_t.patch
new file mode 100644
index 000000000000..c466ce17e02d
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-ia64-pid_t.patch
@@ -0,0 +1,6 @@
+--- a/sysdeps/linux-gnu/ia64/breakpoint.c
++++ b/sysdeps/linux-gnu/ia64/breakpoint.c
+@@ -26,2 +26,3 @@
+ #include <sys/ptrace.h>
++#include <sys/types.h> /* pid_t */
+ #include <string.h>
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-ia64.patch b/dev-debug/ltrace/files/ltrace-0.7.3-ia64.patch
new file mode 100644
index 000000000000..4fb1c4eba734
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-ia64.patch
@@ -0,0 +1,39 @@
+Fix build fauilure on ia64.
+
+Build fails due to bitrot: some definitions
+moved off from <sys/pthrace.h> to <asm/ptrace.h>
+(similar to other arches).
+
+fetch.c:39:26: error: field 'regs' has incomplete type
+ struct pt_all_user_regs regs;
+ ^~~~
+fetch.c:209:25: warning: 'struct ia64_fpreg' declared inside parameter list will not be visible outside of this definition or declaration
+ fpreg_to_double (struct ia64_fpreg *fp) {
+ ^~~~~~~~~~
+fetch.c: In function 'fpreg_to_double':
+fetch.c:211:45: error: dereferencing pointer to incomplete type 'struct ia64_fpreg'
+ asm ("ldf.fill %0=%1" : "=f"(result) : "m"(*fp));
+ ^~~
+
+diff --git a/sysdeps/linux-gnu/ia64/fetch.c b/sysdeps/linux-gnu/ia64/fetch.c
+index 54dc5b8..b3b9a9a 100644
+--- a/sysdeps/linux-gnu/ia64/fetch.c
++++ b/sysdeps/linux-gnu/ia64/fetch.c
+@@ -134,9 +134,4 @@ allocate_reg(struct fetch_context *ctx, struct Process *proc,
+ return 0;
+
+- /* This would normally be brought over from asm/ptrace.h, but
+- * when we do, we get namespace conflicts between asm/fpu.h
+- * and libunwind. */
+- enum { PT_AUR_BSP = 17 };
+-
+ union cfm_t cfm = { .value = ctx->regs.cfm };
+ unsigned long *bsp = (unsigned long *)ctx->regs.ar[PT_AUR_BSP];
+diff --git a/sysdeps/linux-gnu/ia64/ptrace.h b/sysdeps/linux-gnu/ia64/ptrace.h
+index ef63b4f..8b131f1 100644
+--- a/sysdeps/linux-gnu/ia64/ptrace.h
++++ b/sysdeps/linux-gnu/ia64/ptrace.h
+@@ -20,2 +20,3 @@
+
+ #include <sys/ptrace.h>
++#include <asm/ptrace.h>
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-musl-host.patch b/dev-debug/ltrace/files/ltrace-0.7.3-musl-host.patch
new file mode 100644
index 000000000000..7729449d0604
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-musl-host.patch
@@ -0,0 +1,11 @@
+https://bugs.gentoo.org/713428
+--- a/configure.ac
++++ b/configure.ac
+@@ -33,6 +33,7 @@ AC_CANONICAL_HOST
+
+ case "${host_os}" in
+ linux-gnu*) HOST_OS="linux-gnu" ;;
++ linux-musl*) HOST_OS="linux-gnu" ;;
+ linux-uclibc*) HOST_OS="linux-gnu" ;;
+ *) AC_MSG_ERROR([unkown host-os ${host_os}]) ;;
+ esac
diff --git a/dev-debug/ltrace/files/ltrace-0.7.3-print-test-pie.patch b/dev-debug/ltrace/files/ltrace-0.7.3-print-test-pie.patch
new file mode 100644
index 000000000000..5e46135add3e
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.3-print-test-pie.patch
@@ -0,0 +1,15 @@
+--- a/testsuite/ltrace.minor/print-instruction-pointer.exp
++++ b/testsuite/ltrace.minor/print-instruction-pointer.exp
+@@ -32,6 +32,12 @@ catch "exec sh -c {objdump -d $objdir/$subdir/$binfile | sed -n '/^\[0-9a-fA-F\]
+ catch "exec sh -c {echo \"$output\" | sed -n '2p'| awk -F' ' '{print \$1}'|awk -F: '{print \$1}'}" addr1
+ catch "exec sh -c {echo \"$output\" | sed -n '5p'| awk -F' ' '{print \$1}'|awk -F: '{print \$1}'}" addr2
+
++# Pick at most last 3 digits:
++# PIE binaries randomize address on page level.
++# Let's assume page size is no bigger than 4096 (3 hex digits)
++set addr1 [string range $addr1 3 end]
++set addr2 [string range $addr2 3 end]
++
+ verbose "addr1 = $addr1"
+ verbose "addr2 = $addr2"
+ # Verify the output by checking numbers of print in main.ltrace.
diff --git a/dev-debug/ltrace/files/ltrace-0.7.91-debian-patchset-6.4.patch b/dev-debug/ltrace/files/ltrace-0.7.91-debian-patchset-6.4.patch
new file mode 100644
index 000000000000..1f3bb5ec6a21
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.91-debian-patchset-6.4.patch
@@ -0,0 +1,77 @@
+Patches imported from the Debian patch set 6.4 for ltrace-0.7.3:
+ - 01-avoid-libstdc++ (adapted to account for the absence of configure),
+ - 03-alpha-debug.h
+ - 05-sparc-ftbfs
+ - 06-unexpected-breakpoint
+The other two have since been merged upstream.
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -126,6 +126,15 @@
+ libstdcxx_LIBS=""])
+ AC_SUBST(libstdcxx_LIBS)
+
++if test "x$liberty_LIBS" != "x"
++then
++ libsupcxx_LIBS=""
++ libstdcxx_LIBS=""
++elif test "x$libsupcxx_LIBS" != "x"
++then
++ libstdcxx_LIBS=""
++fi
++
+
+ dnl Check security_get_boolean_active availability.
+ AC_CHECK_HEADERS(selinux/selinux.h)
+--- a/handle_event.c
++++ b/handle_event.c
+@@ -740,9 +740,12 @@
+
+ if ((sbp = address2bpstruct(leader, brk_addr)) != NULL)
+ breakpoint_on_hit(sbp, event->proc);
+- else if (event->proc->state != STATE_IGNORED)
++ else if (event->proc->state != STATE_IGNORED) {
+ output_line(event->proc,
+ "unexpected breakpoint at %p", brk_addr);
++ continue_process(event->proc->pid);
++ return;
++ }
+
+ /* breakpoint_on_hit may delete its own breakpoint, so we have
+ * to look it up again. */
+--- a/sysdeps/linux-gnu/alpha/trace.c
++++ b/sysdeps/linux-gnu/alpha/trace.c
+@@ -29,7 +29,6 @@
+
+ #include "proc.h"
+ #include "common.h"
+-#include "debug.h"
+
+ #if (!defined(PTRACE_PEEKUSER) && defined(PTRACE_PEEKUSR))
+ # define PTRACE_PEEKUSER PTRACE_PEEKUSR
+--- a/sysdeps/linux-gnu/sparc/plt.c
++++ b/sysdeps/linux-gnu/sparc/plt.c
+@@ -19,8 +19,9 @@
+ */
+
+ #include <gelf.h>
++
+ #include "proc.h"
+-#include "common.h"
++#include "library.h"
+
+ GElf_Addr
+ arch_plt_sym_val(struct ltelf *lte, size_t ndx, GElf_Rela * rela) {
+--- a/sysdeps/linux-gnu/sparc/trace.c
++++ b/sysdeps/linux-gnu/sparc/trace.c
+@@ -26,8 +26,10 @@
+ #include <sys/wait.h>
+ #include <signal.h>
+ #include <string.h>
++
+ #include "ptrace.h"
+ #include "proc.h"
++#include "backend.h"
+ #include "common.h"
+
+ void
diff --git a/dev-debug/ltrace/files/ltrace-0.7.91-pid_t.patch b/dev-debug/ltrace/files/ltrace-0.7.91-pid_t.patch
new file mode 100644
index 000000000000..06075006b2e1
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.91-pid_t.patch
@@ -0,0 +1,10 @@
+--- a/proc.h
++++ b/proc.h
+@@ -27,6 +27,7 @@
+
+ #include <sys/time.h>
+ #include <stdint.h>
++#include <unistd.h> /* pid_t */
+
+ #if defined(HAVE_LIBDW)
+ # include <elfutils/libdwfl.h>
diff --git a/dev-debug/ltrace/files/ltrace-0.7.91-test-glibc-2.33.patch b/dev-debug/ltrace/files/ltrace-0.7.91-test-glibc-2.33.patch
new file mode 100644
index 000000000000..b78d4580b050
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.91-test-glibc-2.33.patch
@@ -0,0 +1,11 @@
+--- a/testsuite/ltrace.main/system_calls.exp
++++ b/testsuite/ltrace.main/system_calls.exp
+@@ -133,7 +133,7 @@
+ { {^write$} == 1 }
+ { {^unlink(at)?$} >= 2 }
+ { {^open(at)?$} == 1 }
+- { {^(new|f)?stat(64)?$} >= 1 }
++ { {^(new)?stat|fstatat64|newfstatat$} >= 1 }
+ { {^close$} == 1 }
+ { {^getcwd$} == 1 }
+ { {^chdir$} == 1 }
diff --git a/dev-debug/ltrace/files/ltrace-0.7.91-tuple-tests.patch b/dev-debug/ltrace/files/ltrace-0.7.91-tuple-tests.patch
new file mode 100644
index 000000000000..c7c997d5545e
--- /dev/null
+++ b/dev-debug/ltrace/files/ltrace-0.7.91-tuple-tests.patch
@@ -0,0 +1,11 @@
+--- a/testsuite/Makefile.am
++++ b/testsuite/Makefile.am
+@@ -42,6 +42,8 @@
+ echo set elfutils_LD_LIBRARY_PATH '"$(elfutils_LD_LIBRARY_PATH)"' >> $@
+ echo set libunwind_LD_LIBRARY_PATH '"$(libunwind_LD_LIBRARY_PATH)"' >> $@
+ echo set PREFIX '"$(prefix)"' >> $@
++ echo set CC_FOR_TARGET '"$(CC)"' >> $@
++ echo set CXX_FOR_TARGET '"$(CXX)"' >> $@
+
+ CLEANFILES = *.o *.so *.log *.sum *.ltrace site.bak setval.tmp site.exp env.exp
+
diff --git a/dev-debug/ltrace/ltrace-0.7.91_pre20221216-r1.ebuild b/dev-debug/ltrace/ltrace-0.7.91_pre20221216-r1.ebuild
new file mode 100644
index 000000000000..7c9e7b3f9740
--- /dev/null
+++ b/dev-debug/ltrace/ltrace-0.7.91_pre20221216-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools
+
+EGIT_COMMIT="5cffc0d2134f697fbac8627ec5b5f0085cd47c8a"
+
+DESCRIPTION="trace library calls made at runtime"
+HOMEPAGE="https://gitlab.com/cespedes/ltrace"
+SRC_URI="https://gitlab.com/cespedes/${PN}/-/archive/${EGIT_COMMIT}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ~mips ppc ~ppc64 ~sparc x86"
+IUSE="debug elfutils selinux test unwind"
+
+REQUIRED_USE="?? ( elfutils unwind )"
+
+RDEPEND="virtual/libelf:=
+ elfutils? ( dev-libs/elfutils )
+ selinux? ( sys-libs/libselinux )
+ unwind? ( sys-libs/libunwind:= )"
+DEPEND="${RDEPEND}
+ sys-libs/binutils-libs
+ test? ( dev-util/dejagnu )"
+
+# Effectively abandoned upstream. Extremely sensitive to the sandbox, versions
+# of core libraries, kernel security settings...
+RESTRICT="test"
+
+S=${WORKDIR}/${PN}-${EGIT_COMMIT}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.7.91-debian-patchset-6.4.patch
+ "${FILESDIR}"/${PN}-0.7.3-CXX-for-tests.patch
+ "${FILESDIR}"/${PN}-0.7.3-alpha-protos.patch
+ "${FILESDIR}"/${PN}-0.7.3-ia64.patch
+ "${FILESDIR}"/${PN}-0.7.3-ia64-pid_t.patch
+ "${FILESDIR}"/${PN}-0.7.3-musl-host.patch
+ "${FILESDIR}"/${PN}-0.7.3-print-test-pie.patch
+ "${FILESDIR}"/${PN}-0.7.91-pid_t.patch
+ "${FILESDIR}"/${PN}-0.7.91-test-glibc-2.33.patch
+ "${FILESDIR}"/${PN}-0.7.91-tuple-tests.patch
+)
+
+src_prepare() {
+ default
+
+ sed -i '/^dist_doc_DATA/d' Makefile.am || die
+ eautoreconf
+}
+
+src_configure() {
+ ac_cv_header_selinux_selinux_h=$(usex selinux) \
+ ac_cv_lib_selinux_security_get_boolean_active=$(usex selinux) \
+ econf \
+ --disable-werror \
+ $(use_enable debug) \
+ $(use_with elfutils) \
+ $(use_with unwind libunwind)
+}
diff --git a/dev-debug/ltrace/metadata.xml b/dev-debug/ltrace/metadata.xml
new file mode 100644
index 000000000000..e7ef67f97d07
--- /dev/null
+++ b/dev-debug/ltrace/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>marecki@gentoo.org</email>
+ <name>Marek Szuba</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="gitlab">cespedes/ltrace</remote-id>
+ </upstream>
+ <use>
+ <flag name="elfutils">Use libdwfl from <pkg>dev-libs/elfutils</pkg> for frame unwinding support</flag>
+ <flag name="unwind">Use <pkg>sys-libs/libunwind</pkg> for frame unwinding support</flag>
+ </use>
+</pkgmetadata>