diff options
Diffstat (limited to 'dev-util/strace')
| -rw-r--r-- | dev-util/strace/Manifest | 3 | ||||
| -rw-r--r-- | dev-util/strace/files/strace-5.11-static.patch | 178 | ||||
| -rw-r--r-- | dev-util/strace/files/strace-5.4-fix-LTO-CFLAGS-handling.patch | 24 | ||||
| -rw-r--r-- | dev-util/strace/metadata.xml | 31 | ||||
| -rw-r--r-- | dev-util/strace/strace-5.11.ebuild (renamed from dev-util/strace/strace-5.9.ebuild) | 9 | ||||
| -rw-r--r-- | dev-util/strace/strace-5.4.ebuild | 101 |
6 files changed, 200 insertions, 146 deletions
diff --git a/dev-util/strace/Manifest b/dev-util/strace/Manifest index 5c145f44a2a5..4c3b36db20dd 100644 --- a/dev-util/strace/Manifest +++ b/dev-util/strace/Manifest @@ -1,4 +1,3 @@ DIST strace-5.10.tar.xz 1859688 BLAKE2B 45c40854c9af95395cb274fbfddc3d0084e77cc403ffe104f72ce7592800452776f5c19d03649cdd6705bccc7a0859364e470bdd5344f64af54b798fab50475e SHA512 1baa41b6d52f2e40e42a22850beee1ae278fafe712796694631898f06a7540d8f2c3fa70807e0062734f0976ebbd0824457c733ccda248f017c218387366ed48 -DIST strace-5.4.tar.xz 1599396 BLAKE2B 0a7fd9600488f5f07042ead8123151cf0113f82329c3cc786c8f3ffb8673f73eaaa1a489f1f27c47800a20e5b6327f1bf5fb09a5b798156908f9e10374a04970 SHA512 4ddba2ec4457a2257c18b26dca851e49a275813c4eb3069379a93fcc60228f9b63a3dee9e3719ae606a7cc61d55ab21ce147327223903c302c061e381097a8d7 +DIST strace-5.11.tar.xz 1926632 BLAKE2B df47612c0928466f8b5788c4a7dc74208fe76c6967d3219b0eb753131fba315e715626c2cd1ed56d3e8ba0eb9a338589a8cbd6205fe876123ac26fdf0fab8d31 SHA512 688bec8d620c7ca701561ed7479e42687cc30737f944b82201731d827775cd2864787ecca7c93ba149b06d5d654d9f6bd109a977f8138bab34339cd5930828f0 DIST strace-5.8.tar.xz 1813640 BLAKE2B 315edf404fa57890dcff512f9fd76818e8e7d5ad06bc297b68561ec7073297c2e5aaf2c3d9a102382f5833bedacb2a54540068a9f9438094c9180f45b5dc4715 SHA512 633c3daa2dd3d273839cbb8ebd7f6512a38b39af0d0d89f4676c2067e199f346615406d85e3e13f9e4da8dbeb62095185895ffae986eb99b64775a4287e38f4c -DIST strace-5.9.tar.xz 1847036 BLAKE2B 92d6b5e1a7821086b4e0e535d5db7849158e58ac0604fb9bb667e106b72b1ce17dfadd3960efcf553d7c7dec4622db36833aa5cdd4bc924f8b54ec6168ed82dd SHA512 f28d5dcceccb44557b39ed6f295f3250662804dc3ad79959bfadffcecc9b736e532c7c90dc89ebf9d07eb3e02a5ace231605851148ca09d41c8c60dc1ff68206 diff --git a/dev-util/strace/files/strace-5.11-static.patch b/dev-util/strace/files/strace-5.11-static.patch new file mode 100644 index 000000000000..146ace0dd2e7 --- /dev/null +++ b/dev-util/strace/files/strace-5.11-static.patch @@ -0,0 +1,178 @@ +--- strace-5.11/configure.ac ++++ strace-5.11/configure.ac +@@ -47,6 +47,15 @@ + AC_DEFINE([MANPAGE_DATE], "[manpage_date]", [Date]) + AC_SUBST([MANPAGE_DATE], [manpage_date]) + ++AC_ARG_ENABLE([static], ++ [AS_HELP_STRING([--enable-static], ++ [link strace statically])], ++ [], [enable_static=no]) ++if test "$enable_static" = "yes"; then ++ # Add -pthread since strace wants -lrt for timer_create, and -lrt uses -lpthread. ++ LDFLAGS="$LDFLAGS -pthread -static" ++fi ++ + AC_C_BIGENDIAN + + dnl arch-specific default for --enable-gcc-Werror +--- strace-5.11/m4/st_libdw.m4 ++++ strace-5.11/m4/st_libdw.m4 +@@ -8,7 +8,6 @@ + AC_DEFUN([st_ARG_LIBDW], [dnl + + : ${libdw_CPPFLAGS=} +-: ${libdw_CFLAGS=} + : ${libdw_LDFLAGS=} + : ${libdw_LIBS=} + +@@ -34,48 +33,14 @@ + have_libdw= + + AS_IF([test "x$with_libdw" != xno && test "x$use_unwinder" = x], +- [saved_CPPFLAGS="$CPPFLAGS" +- saved_CFLAGS="$CFLAGS" +- CPPFLAGS="$CPPFLAGS $libdw_CPPFLAGS" +- CFLAGS="$CFLAGS $libdw_CFLAGS" +- +- AC_CHECK_HEADERS([elfutils/libdwfl.h], +- [AC_CHECK_LIB([dw], [dwfl_linux_proc_attach], +- [libdw_LIBS="-ldw $libdw_LIBS" +- AC_CACHE_CHECK([for elfutils version], +- [st_cv_ELFUTILS_VERSION], +- [[st_cv_ELFUTILS_VERSION="$(echo _ELFUTILS_VERSION | +- $CPP $CPPFLAGS -P -imacros elfutils/version.h - | +- grep '^[0-9]')" +- test -n "$st_cv_ELFUTILS_VERSION" || +- st_cv_ELFUTILS_VERSION=0 +- ]] +- ) +- AS_IF([test "$st_cv_ELFUTILS_VERSION" -ge 164], +- [have_libdw=yes], +- [AS_IF([test "x$with_libdw" = xyes], +- [AC_MSG_ERROR([elfutils version >= 164 is required for stack tracing support])], +- [AC_MSG_WARN([elfutils version >= 164 is required for stack tracing support])] +- ) +- ] +- ) +- ], +- [AS_IF([test "x$with_libdw" = xyes], +- [AC_MSG_FAILURE([failed to find dwfl_linux_proc_attach in libdw])], +- ) +- ], +- [$libdw_LDFLAGS $libdw_LIBS] +- ) +- ], +- [AS_IF([test "x$with_libdw" = xyes], +- [AC_MSG_FAILURE([failed to find elfutils/libdwfl.h])] +- ) +- ] +- ) +- +- CFLAGS="$saved_CFLAGS" +- CPPFLAGS="$saved_CPPFLAGS" +- ] ++ [if test "$enable_static" = "yes"; then ++ PKG_CHECK_MODULES_STATIC([LIBDW], [libdw >= 0.164]) ++ else ++ PKG_CHECK_MODULES([LIBDW], [libdw >= 0.164]) ++ fi ++ have_libdw=yes ++ libdw_CPPFLAGS="$LIBDW_CFLAGS" ++ libdw_LIBS="$LIBDW_LIBS"] + ) + + AS_IF([test "x$have_libdw" = xyes], +@@ -84,7 +49,6 @@ + [Whether to use libdw for stack tracing] + ) + AC_SUBST(libdw_CPPFLAGS) +- AC_SUBST(libdw_CFLAGS) + AC_SUBST(libdw_LDFLAGS) + AC_SUBST(libdw_LIBS) + ] +--- strace-5.11/m4/st_libunwind.m4 ++++ strace-5.11/m4/st_libunwind.m4 +@@ -28,64 +28,14 @@ + AC_DEFUN([st_LIBUNWIND], [dnl + + AS_IF([test "x$with_libunwind" != xno && test "x$use_unwinder" = x], +- [saved_CPPFLAGS="$CPPFLAGS" +- CPPFLAGS="$CPPFLAGS $libunwind_CPPFLAGS" +- +- AC_CHECK_HEADERS([libunwind-ptrace.h], +- [saved_LDFLAGS="$LDFLAGS" +- LDFLAGS="$LDFLAGS $libunwind_LDFLAGS" +- +- AC_CHECK_LIB([unwind], [backtrace], +- [libunwind_LIBS="-lunwind $libunwind_LIBS" +- +- AC_MSG_CHECKING([for unw_create_addr_space in libunwind-generic]) +- saved_LIBS="$LIBS" +- LIBS="-lunwind-generic $libunwind_LIBS $LIBS" +- +- AC_LINK_IFELSE( +- [AC_LANG_PROGRAM([[#include <libunwind-ptrace.h>]], +- [[return !unw_create_addr_space(0, 0)]]) +- ], +- [AC_MSG_RESULT([yes]) +- libunwind_LIBS="-lunwind-generic $libunwind_LIBS" +- +- AC_CHECK_LIB([unwind-ptrace], [_UPT_create], +- [libunwind_LIBS="-lunwind-ptrace $libunwind_LIBS" +- use_unwinder=libunwind +- ], +- [if test "x$with_libunwind" != xcheck; then +- AC_MSG_FAILURE([failed to find _UPT_create in libunwind-ptrace]) +- fi +- ], +- [$libunwind_LIBS] +- ) +- ], +- [AC_MSG_RESULT([no]) +- if test "x$with_libunwind" != xcheck; then +- AC_MSG_FAILURE([failed to find unw_create_addr_space in libunwind-generic]) +- fi +- ] +- ) +- +- LIBS="$saved_LIBS" +- ], +- [if test "x$with_libunwind" != xcheck; then +- AC_MSG_FAILURE([failed to find libunwind]) +- fi +- ], +- [$libunwind_LIBS] +- ) +- +- LDFLAGS="$saved_LDFLAGS" +- ], +- [if test "x$with_libunwind" != xcheck; then +- AC_MSG_FAILURE([failed to find libunwind-ptrace.h]) +- fi +- ] +- ) +- +- CPPFLAGS="$saved_CPPFLAGS" +- ] ++ [if test "$enable_static" = "yes"; then ++ PKG_CHECK_MODULES_STATIC([LIBUNWIND], [libunwind libunwind-generic libunwind-ptrace]) ++ else ++ PKG_CHECK_MODULES([LIBUNWIND], [libunwind libunwind-generic libunwind-ptrace]) ++ fi ++ use_unwinder="libunwind" ++ libunwind_CPPFLAGS="$LIBUNWIND_CFLAGS" ++ libunwind_LIBS="$LIBUNWIND_LIBS"] + ) + + if test "x$use_unwinder" = xlibunwind; then +--- strace-5.11/src/Makefile.am ++++ strace-5.11/src/Makefile.am +@@ -393,7 +393,6 @@ + if USE_LIBDW + libstrace_a_SOURCES += unwind-libdw.c + strace_CPPFLAGS += $(libdw_CPPFLAGS) +-strace_CFLAGS += $(libdw_CFLAGS) + strace_LDFLAGS += $(libdw_LDFLAGS) + strace_LDADD += $(libdw_LIBS) + endif diff --git a/dev-util/strace/files/strace-5.4-fix-LTO-CFLAGS-handling.patch b/dev-util/strace/files/strace-5.4-fix-LTO-CFLAGS-handling.patch deleted file mode 100644 index 0f277962b958..000000000000 --- a/dev-util/strace/files/strace-5.4-fix-LTO-CFLAGS-handling.patch +++ /dev/null @@ -1,24 +0,0 @@ -Based on 52ac53e96143f6aac52738f6e385f75203a68a7b -[PATCH] configure.ac: do not copy CFLAGS to CFLAGS_FOR_{M32,MX32} - ---- a/configure.ac -+++ b/configure.ac -@@ -984,11 +984,14 @@ AS_IF([test x$arch = xaarch64], - ]) - ]) - --# Setting default compiler variables for personalities -+# Set default compiler variables for personalities. - m4_foreach([pers], [M32, MX32], dnl -- [m4_foreach([var], [CC, CPP, CFLAGS, CPPFLAGS], dnl -- [[: ${]var[_FOR_]pers[=$]var[}] -- AC_SUBST(var[_FOR_]pers)])]) -+ [m4_foreach([var], [CC, CPP, CPPFLAGS], dnl -+ [[: ${]var[_FOR_]pers[=$]var[}] -+ AC_SUBST(var[_FOR_]pers)]) dnl -+ m4_foreach([var], [CFLAGS], dnl -+ [[: ${]var[_FOR_]pers[=][}] -+ AC_SUBST(var[_FOR_]pers)])]) - - st_MPERS([m32], [aarch64|powerpc64|s390x|sparc64|tile|x32|x86_64]) - st_MPERS([mx32], [x86_64]) diff --git a/dev-util/strace/metadata.xml b/dev-util/strace/metadata.xml index 7aa6b81780e3..cd00bed8fc0f 100644 --- a/dev-util/strace/metadata.xml +++ b/dev-util/strace/metadata.xml @@ -1,23 +1,24 @@ <?xml version="1.0" encoding="UTF-8"?> -<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<!DOCTYPE pkgmetadata SYSTEM "https://liguros.gitlab.io/dtd/metadata.dtd"> <pkgmetadata> - <maintainer type="project"> - <email>base-system@gentoo.org</email> - <name>Gentoo Base System</name> - </maintainer> - <use> - <flag name="aio"> + <maintainer type="project"> + <email>base-system@gentoo.org</email> + <name>Gentoo Base System</name> + </maintainer> + <upstream> + <remote-id type="github">strace/strace</remote-id> + <remote-id type="sourceforge">strace</remote-id> + </upstream> + <use> + <flag name="aio"> Enable <pkg>dev-libs/libaio</pkg> support for tracing Asynchronous I/O operations </flag> - <flag name="unwind"> + <flag name="unwind"> Enable stack backtraces (-k flag) via <pkg>sys-libs/libunwind</pkg> </flag> - <flag name="elfutils"> + <flag name="elfutils"> Enable stack backtraces (-k flag) via <pkg>dev-libs/elfutils</pkg> </flag> - </use> - <upstream> - <remote-id type="github">strace/strace</remote-id> - <remote-id type="sourceforge">strace</remote-id> - </upstream> -</pkgmetadata> + </use> + <origin>gentoo-staging</origin> +</pkgmetadata>
\ No newline at end of file diff --git a/dev-util/strace/strace-5.9.ebuild b/dev-util/strace/strace-5.11.ebuild index c08dbf18c0a5..73df00d83ec8 100644 --- a/dev-util/strace/strace-5.9.ebuild +++ b/dev-util/strace/strace-5.11.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2020 Gentoo Authors +# Copyright 1999-2021 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 @@ -41,7 +41,7 @@ RDEPEND=" " PATCHES=( - "${FILESDIR}/${PN}-5.5-static.patch" + "${FILESDIR}/${PN}-5.11-static.patch" ) src_prepare() { @@ -97,8 +97,9 @@ src_test() { src_install() { default - if ! use perl ; then - rm "${ED}"/usr/bin/strace-graph || die + if use perl ; then + exeinto /usr/bin + doexe src/strace-graph fi dodoc CREDITS } diff --git a/dev-util/strace/strace-5.4.ebuild b/dev-util/strace/strace-5.4.ebuild deleted file mode 100644 index 49b3e03d04c6..000000000000 --- a/dev-util/strace/strace-5.4.ebuild +++ /dev/null @@ -1,101 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit flag-o-matic toolchain-funcs autotools - -if [[ ${PV} == "9999" ]] ; then - EGIT_REPO_URI="https://github.com/strace/strace.git" - inherit git-r3 autotools -else - SRC_URI="https://github.com/${PN}/${PN}/releases/download/v${PV}/${P}.tar.xz" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~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 static unwind elfutils" - -REQUIRED_USE="?? ( unwind elfutils )" - -LIB_DEPEND=" - unwind? ( sys-libs/libunwind[static-libs(+)] ) - elfutils? ( dev-libs/elfutils[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}"/${P}-fix-LTO-CFLAGS-handling.patch ) - -src_prepare() { - default - - # Needed for applied patch (#701516). Remove with next version. - # Don't forget about autotools inherit. - eautoreconf - - if [[ ! -e configure ]] ; then - # git generation - sed /autoreconf/d -i bootstrap || die - ./bootstrap || die - eautoreconf - [[ ! -e CREDITS ]] && cp CREDITS{.in,} - fi - - filter-lfs-flags # configure handles this sanely - # Add -pthread since strace wants -lrt for timer_create, and -lrt uses -lpthread. - use static && append-ldflags -static -pthread - - export ac_cv_header_libaio_h=$(usex aio) - use elibc_musl && export ac_cv_header_stdc=no - - # Stub out the -k test since it's known to be flaky. #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 - - # Don't require mpers support on non-multilib systems. #649560 - local myeconfargs=( - --enable-mpers=check - $(use_with unwind libunwind) - $(use_with elfutils libdw) - ) - econf "${myeconfargs[@]}" -} - -src_test() { - if has usersandbox ${FEATURES} ; then - ewarn "Test suite is known to fail with FEATURES=usersandbox -- skipping ..." #643044 - return 0 - fi - - default -} - -src_install() { - default - if ! use perl ; then - rm "${ED}"/usr/bin/strace-graph || die - fi - dodoc CREDITS -} |
