community/psmisc: Fix FTBFS on ppc64le

There is an issue with psmisc that fails to build due to names clash.
This is the type of the problem this patch is resolving:

  In file included from /usr/include/sys/user.h:11:0,
                   from peekfd.c:33:
  /usr/include/bits/user.h:1:8: error: redefinition of 'struct pt_regs'
   struct pt_regs {
          ^~~~~~~
  In file included from peekfd.c:30:0:
  /usr/include/asm/ptrace.h:31:8: note: originally defined here
   struct pt_regs {
          ^~~~~~~
This commit is contained in:
Breno Leitao 2017-04-12 19:54:14 +00:00
parent 6bc4e643f3
commit 0c36e883cf
2 changed files with 22 additions and 0 deletions

View File

@ -11,6 +11,7 @@ makedepends="gettext-dev libintl ncurses-dev"
subpackages="$pkgname-doc $pkgname-lang"
source="http://downloads.sourceforge.net/psmisc/$pkgname-$pkgver.tar.gz
include_limits.patch
musl_ptregs.patch
peekfd_lintl.patch
"
builddir="$srcdir/$pkgname-$pkgver"
@ -42,4 +43,5 @@ check() {
sha512sums="766aeb45687090b88b17176c5117a603e83fe92a13c013aea72c8ee80048adf02e18c7daa52ddfb8b2135f7c9a1bcae38896cdfb8d0158728d85a446c5e0d5ae psmisc-22.21.tar.gz
63dea6a65c4cabcfa06d225950bc78fd6ac42f7445b8d10bde5e86dd8d96eb89823e486d7635b78562da058642f87289356c416225563a8e1ccfc2e32d81e884 include_limits.patch
73dec9791e8cdb85cd3d9ef9be4d16e0fef481c6edc334ed9e954829444b1a92b87f7a3a2e6c1d09ac207bed828f214f5f2a95caa66540a7f2a6c58a6b8f6f2c musl_ptregs.patch
ec84b84a02e48aed9f47a9efdd7ee4a4d409373751e9872e32c06912b506d9102a0526f244dcaff172598cd77e61344d38449a60181c2bbb010a674662e8f439 peekfd_lintl.patch"

View File

@ -0,0 +1,20 @@
Author: Breno Leitao <brenohl@br.ibm.com>
Date: Thu Apr 6 14:03:00 2017 -0300
peekfd: Avoid pt_regs clash
Index: psmisc-22.21/src/peekfd.c
===================================================================
--- a/src/peekfd.c.old
+++ b/src/peekfd.c
@@ -27,7 +27,9 @@
#include <sys/types.h>
#include <sys/wait.h>
#include <sys/syscall.h>
+#define pt_regs uapi_pt_regs
#include <asm/ptrace.h>
+#undef pt_regs
#include <byteswap.h>
#include <endian.h>
#include <sys/user.h>