lkml.org 
[lkml]   [2013]   [Jan]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [PATCH 14/15] samples/seccomp: be less stupid about cross compiling
    From
    On Mon, Jan 21, 2013 at 9:16 AM, Arnd Bergmann <arnd@arndb.de> wrote:
    > The seccomp filters are currently built for the build
    > host, not for the machine that they are going to run
    > on, but they are also built for with the -m32 flag
    > if the kernel is built for a 32 bit machine, both
    > of which seems rather odd.
    >
    > It broke allyesconfig on my machine, which is x86-64, but
    > building for 32 bit ARM, with this error message:
    >
    > In file included from /usr/include/stdio.h:28:0,
    > from samples/seccomp/bpf-fancy.c:15:
    > /usr/include/features.h:324:26: fatal error: bits/predefs.h: No such file or directory
    >
    > because there are no 32 bit libc headers installed on
    > this machine. We should really be building all the
    > samples for the target machine rather than the build
    > host, but since the infrastructure for that appears
    > to be missing right now, let's be a little bit smarter
    > and not pass the '-m32' flag to the HOSTCC when cross-
    > compiling.
    >
    > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    > Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
    > Cc: Kees Cook <keescook@chromium.org>
    > Cc: James Morris <james.l.morris@oracle.com>

    I'm fine with this. Thanks!

    Acked-by: Kees Cook <keescook@chromium.org>

    -Kees

    > ---
    > samples/seccomp/Makefile | 2 ++
    > 1 file changed, 2 insertions(+)
    >
    > diff --git a/samples/seccomp/Makefile b/samples/seccomp/Makefile
    > index bbbd276..7203e66 100644
    > --- a/samples/seccomp/Makefile
    > +++ b/samples/seccomp/Makefile
    > @@ -19,6 +19,7 @@ bpf-direct-objs := bpf-direct.o
    >
    > # Try to match the kernel target.
    > ifndef CONFIG_64BIT
    > +ifndef CROSS_COMPILE
    >
    > # s390 has -m31 flag to build 31 bit binaries
    > ifndef CONFIG_S390
    > @@ -35,6 +36,7 @@ HOSTLOADLIBES_bpf-direct += $(MFLAG)
    > HOSTLOADLIBES_bpf-fancy += $(MFLAG)
    > HOSTLOADLIBES_dropper += $(MFLAG)
    > endif
    > +endif
    >
    > # Tell kbuild to always build the programs
    > always := $(hostprogs-y)
    > --
    > 1.7.10.4
    >



    --
    Kees Cook
    Chrome OS Security


    \
     
     \ /
      Last update: 2013-01-22 23:03    [W:4.191 / U:0.044 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site