aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTuan Hoang <tmhoang@linux.ibm.com>2019-03-18 10:57:38 +0100
committerNatanael Copa <ncopa@alpinelinux.org>2019-03-18 18:27:43 +0000
commit8e60b0a1bec11c14b55d7f407a3a5f8ff2351aa9 (patch)
treeb32dcedc75f490a75076a7dd8ffab3bb21a672b9
parentf4f23af2e0ed83d17000d9cb19695540cc0d485c (diff)
downloadaports-8e60b0a1bec11c14b55d7f407a3a5f8ff2351aa9.tar.bz2
aports-8e60b0a1bec11c14b55d7f407a3a5f8ff2351aa9.tar.xz
main/strace: upgrade to 4.26, fix s390x
fix source url remove bootstrap generation fix SIGNAL_FRAMESIZE on s390x
-rw-r--r--main/strace/APKBUILD25
-rw-r--r--main/strace/s390-fix-SIGNAL_FRAMESIZE-macro.patch83
2 files changed, 90 insertions, 18 deletions
diff --git a/main/strace/APKBUILD b/main/strace/APKBUILD
index 2bdce1359c..3bc7826b71 100644
--- a/main/strace/APKBUILD
+++ b/main/strace/APKBUILD
@@ -1,20 +1,21 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=strace
-pkgver=4.24
+pkgver=4.26
pkgrel=0
pkgdesc="Diagnostic, debugging and instructional userspace tracer"
url="https://strace.io"
-arch="all !s390x"
+arch="all"
# disable checks for now, due to testsuite failure
options="!check"
license="BSD-3-Clause"
depends=""
makedepends="linux-headers autoconf automake gawk"
subpackages="$pkgname-doc"
-source="$pkgname-$pkgver.tar.gz::https://github.com/strace/$pkgname/archive/v$pkgver.tar.gz
+source="https://github.com/strace/strace/releases/download/v$pkgver/$pkgname-$pkgver.tar.xz
disable-fortify.patch
fix-ppc-pt-regs-collision.patch
nlattr-fix.patch
+ s390-fix-SIGNAL_FRAMESIZE-macro.patch
"
builddir="$srcdir/$pkgname-$pkgver"
@@ -25,19 +26,6 @@ build() {
musl) export CFLAGS="$CFLAGS -Dsigcontext_struct=sigcontext" ;;
esac
- case "$CARCH" in
- s390x)
- # __SIGNAL_FRAMESIZE is defined in asm/sigcontext.h
- # but including it would make conflict with struct sigcontext
- # since we compile with it in musl.
- # Temporarily add this until musl upstream has a proper fix
- # for struct sigcontext.
- export CFLAGS="$CFLAGS -D__SIGNAL_FRAMESIZE=160"
- ;;
- esac
-
- ./bootstrap
-
./configure \
--build=$CBUILD \
--host=$CHOST \
@@ -59,7 +47,8 @@ package() {
make -j1 DESTDIR="$pkgdir" install
}
-sha512sums="14d5bb8722a3aeb9d1173e6ee040fbad6fd8a66182fd417f5ec699afcd3fc2f03a636a45a529ed1400881db5e766acdd37fd0f3d07da6e651a15abbc5c394c28 strace-4.24.tar.gz
+sha512sums="cce153246802fcdb1547bc11164784066101a2e672e2a264cb742593b559e579aa4bedc749d87fdd1fc2045f4f79b54d419bb50c823074d2cca6f3c75ccf2290 strace-4.26.tar.xz
273b92ebf0069f19bef7ec26c7860e2af7ef01e782255c70ded1ae5e967f8f6bf031ecba96612c6083bf58f46278ba4ab3ec0fb35b08c8c8d668191f97adee52 disable-fortify.patch
b70cee89dd49a2b5a69dc2a56c3a11169d3306e1a73981155188b574486965c034aa52b4ac1c6edff5ef55c9d52f27750acb242fac095a8a9f69689b51b3fad1 fix-ppc-pt-regs-collision.patch
-44b1872cf996caa4970fa6c2875a3a2cffe4a38455e328d968bd7855ef9a05cf41190794dc137bc8667576635f5271057cf0e6cde9a6c7aee66afd1dba9bdba0 nlattr-fix.patch"
+44b1872cf996caa4970fa6c2875a3a2cffe4a38455e328d968bd7855ef9a05cf41190794dc137bc8667576635f5271057cf0e6cde9a6c7aee66afd1dba9bdba0 nlattr-fix.patch
+3cbc2dab39e65f18177bd1d33e1174eb8a00ad3f5972ca7ae4a7b50c31ef90860fe053ee26f3bded4d03628bdaae7b2faca8f13b4ad1f220c3892575f79cbac1 s390-fix-SIGNAL_FRAMESIZE-macro.patch"
diff --git a/main/strace/s390-fix-SIGNAL_FRAMESIZE-macro.patch b/main/strace/s390-fix-SIGNAL_FRAMESIZE-macro.patch
new file mode 100644
index 0000000000..bf89e411c5
--- /dev/null
+++ b/main/strace/s390-fix-SIGNAL_FRAMESIZE-macro.patch
@@ -0,0 +1,83 @@
+From 6d2ed715191752850b4907496c13cca72e98bfe5 Mon Sep 17 00:00:00 2001
+From: Tuan Hoang <tmhoang@linux.ibm.com>
+Date: Thu, 14 Mar 2019 10:18:22 +0100
+Subject: [PATCH] s390: fix SIGNAL_FRAMESIZE macro
+
+Since __SIGNAL_FRAMESIZE is in private name space, it is better not to
+use it directly. This macro has been stable on s390/s390x so it is safe
+to use the integer value.
+
+* linux/s390/arch_sigreturn.c [!SIGNAL_FRAMESIZE] (SIGNAL_FRAMESIZE):
+Define to 96.
+* linux/s390x/arch_sigreturn.c (arch_sigreturn == s390_arch_sigreturn):
+Remove S390_SIGNAL_FRAMESIZE and SIGNAL_FRAMESIZE.
+(arch_sigreturn == s390x_arch_sigreturn): Define SIGNAL_FRAMESIZE.
+* linux/s390/rt_sigframe.h (SIGNAL_FRAMESIZE): Define.
+(struct_rt_sigframe): Replace __SIGNAL_FRAMESIZE with SIGNAL_FRAMESIZE.
+
+Signed-off-by: Tuan Hoang <tmhoang@linux.ibm.com>
+Co-Authored-by: Dmitry V. Levin <ldv@altlinux.org>
+---
+ linux/s390/arch_sigreturn.c | 2 +-
+ linux/s390/rt_sigframe.h | 8 +++++++-
+ linux/s390x/arch_sigreturn.c | 4 +---
+ 3 files changed, 9 insertions(+), 5 deletions(-)
+
+diff --git a/linux/s390/arch_sigreturn.c b/linux/s390/arch_sigreturn.c
+index 1d0f0e00..4a9ca8ec 100644
+--- a/linux/s390/arch_sigreturn.c
++++ b/linux/s390/arch_sigreturn.c
+@@ -6,7 +6,7 @@
+ */
+
+ #ifndef SIGNAL_FRAMESIZE
+-# define SIGNAL_FRAMESIZE __SIGNAL_FRAMESIZE
++# define SIGNAL_FRAMESIZE 96
+ #endif
+ #ifndef PTR_TYPE
+ # define PTR_TYPE unsigned long
+diff --git a/linux/s390/rt_sigframe.h b/linux/s390/rt_sigframe.h
+index e11573a4..51819b7b 100644
+--- a/linux/s390/rt_sigframe.h
++++ b/linux/s390/rt_sigframe.h
+@@ -10,8 +10,14 @@
+
+ # include <signal.h>
+
++#ifdef __s390x__
++# define SIGNAL_FRAMESIZE 160
++#else /* __s390__ */
++# define SIGNAL_FRAMESIZE 96
++#endif
++
+ typedef struct {
+- uint8_t callee_used_stack[__SIGNAL_FRAMESIZE];
++ uint8_t callee_used_stack[SIGNAL_FRAMESIZE];
+ uint16_t svc_insn;
+ siginfo_t info;
+ ucontext_t uc;
+diff --git a/linux/s390x/arch_sigreturn.c b/linux/s390x/arch_sigreturn.c
+index 55930a35..2d75a8c6 100644
+--- a/linux/s390x/arch_sigreturn.c
++++ b/linux/s390x/arch_sigreturn.c
+@@ -7,9 +7,6 @@
+
+ #include <stdint.h>
+
+-#define S390_SIGNAL_FRAMESIZE 96
+-
+-#define SIGNAL_FRAMESIZE S390_SIGNAL_FRAMESIZE
+ #define PTR_TYPE uint32_t
+ #define arch_sigreturn s390_arch_sigreturn
+ #include "s390/arch_sigreturn.c"
+@@ -17,6 +14,7 @@
+ #undef PTR_TYPE
+ #undef SIGNAL_FRAMESIZE
+
++#define SIGNAL_FRAMESIZE 160
+ #define arch_sigreturn s390x_arch_sigreturn
+ #include "s390/arch_sigreturn.c"
+ #undef arch_sigreturn
+--
+2.20.1
+