summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergei Trofimovich <slyfox@gentoo.org>2017-06-24 20:17:09 +0100
committerSergei Trofimovich <slyfox@gentoo.org>2017-06-24 20:17:19 +0100
commit1a173bc429e51de4fcf6ceada45cd7274ab12aaf (patch)
tree7a29292541d1f4d252f2e113a5eee185fc0aa70e /dev-util
parentsys-kernel/ck-sources: prune old versions (diff)
downloadgentoo-1a173bc429e51de4fcf6ceada45cd7274ab12aaf.tar.gz
gentoo-1a173bc429e51de4fcf6ceada45cd7274ab12aaf.tar.bz2
gentoo-1a173bc429e51de4fcf6ceada45cd7274ab12aaf.zip
dev-util/ltrace: fix build failure on ia64
Package-Manager: Portage-2.3.6, Repoman-2.3.2
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/ltrace/files/ltrace-0.7.3-ia64.patch39
-rw-r--r--dev-util/ltrace/ltrace-0.7.3_p4.ebuild3
2 files changed, 41 insertions, 1 deletions
diff --git a/dev-util/ltrace/files/ltrace-0.7.3-ia64.patch b/dev-util/ltrace/files/ltrace-0.7.3-ia64.patch
new file mode 100644
index 000000000000..4fb1c4eba734
--- /dev/null
+++ b/dev-util/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-util/ltrace/ltrace-0.7.3_p4.ebuild b/dev-util/ltrace/ltrace-0.7.3_p4.ebuild
index 7305b4cba139..a818ab970852 100644
--- a/dev-util/ltrace/ltrace-0.7.3_p4.ebuild
+++ b/dev-util/ltrace/ltrace-0.7.3_p4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2016 Gentoo Foundation
+# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
EAPI=5
@@ -32,6 +32,7 @@ src_prepare() {
epatch "${WORKDIR}"/debian/patches/[0-9]*
epatch "${FILESDIR}"/${PN}-0.7.3-test-protos.patch #bug 421649
epatch "${FILESDIR}"/${PN}-0.7.3-alpha-protos.patch
+ epatch "${FILESDIR}"/${PN}-0.7.3-ia64.patch
sed -i '/^dist_doc_DATA/d' Makefile.am || die
eautoreconf
}