[OE-core] [PATCH 2/2] strace: Fix aarch64 build with musl

Paul Barker paul at betafive.co.uk
Thu May 9 12:08:51 UTC 2019


On Thu, 9 May 2019, at 11:13, Paul Barker wrote:
> On Wed, 8 May 2019, at 14:02, Adrian Bunk wrote:
> > On Wed, May 08, 2019 at 11:58:36AM +0000, paul at betafive.co.uk wrote:
> > >...
> > > +--- strace-4.26.orig/strace.c
> > > ++++ strace-4.26/strace.c
> > > +@@ -26,7 +26,7 @@
> > > + #include <locale.h>
> > > + #include <sys/utsname.h>
> > > + #ifdef HAVE_PRCTL
> > > +-# include <sys/prctl.h>
> > > ++# include <linux/prctl.h>
> > > + #endif
> > > + #include <asm/unistd.h>
> > > diff --git a/meta/recipes-devtools/strace/strace_4.26.bb b/meta/recipes-devtools/strace/strace_4.26.bb
> > > index 24f92c99e5..b71122babf 100644
> > > --- a/meta/recipes-devtools/strace/strace_4.26.bb
> > > +++ b/meta/recipes-devtools/strace/strace_4.26.bb
> > > @@ -15,6 +15,7 @@ SRC_URI = "https://strace.io/files/${PV}/strace-${PV}.tar.xz \
> > >             file://0001-caps-abbrev.awk-fix-gawk-s-path.patch \
> > >             file://0001-tests-sigaction-Check-for-mips-and-alpha-before-usin.patch \
> > >             file://0001-mips-o32-fix-build.patch \
> > > +           file://musl-fixes-armv8.patch \
> > >             "
> > >...
> > 
> > #include <sys/prctl.h> is the documented way for getting the prototype 
> > of prctl(), which cannot be in linux/prctl.h for obvious reasons.
> > 
> > This patch creates the following problem:
> > 
> > ../strace-4.26/strace.c: In function 'startup_child':
> > ../strace-4.26/strace.c:1355:3: warning: implicit declaration of 
> > function 'prctl' [-Wimplicit-function-declaration]
> >    prctl(PR_SET_PTRACER, PR_SET_PTRACER_ANY);
> >    ^~~~~
> > 
> 
> Ah that's definitely not a solution then. I'll have to look into this 
> further and see if I can come up with a v2 patch that doesn't cause 
> this warning.
> 

So alpine fixes this by patching the linux headers: https://git.alpinelinux.org/aports/tree/main/linux-headers/fix-aarch64-asm-ptrace.patch

I think that should be acceptable here if we just do it when building with musl libc.

Any thoughts on that before I work up a v2 patch?

Thanks,

-- 
Paul Barker
Managing Director & Principal Engineer
Beta Five Ltd


More information about the Openembedded-core mailing list