lkml.org 
[lkml]   [2019]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH bpf-next 11/11] samples: bpf: makefile: add sysroot support
    Date


    On 9/10/19 11:38 AM, Ivan Khoronzhuk wrote:
    > Basically it only enables that was added by previous couple fixes.
    > For sure, just make tools/include to be included after sysroot
    > headers.
    >
    > export ARCH=arm
    > export CROSS_COMPILE=arm-linux-gnueabihf-
    > make samples/bpf/ SYSROOT="path/to/sysroot"
    >
    > Sysroot contains correct libs installed and its headers ofc.
    > Useful when working with NFC or virtual machine.
    >
    > Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
    > ---
    > samples/bpf/Makefile | 5 +++++
    > samples/bpf/README.rst | 10 ++++++++++
    > 2 files changed, 15 insertions(+)
    >
    > diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
    > index 4edc5232cfc1..68ba78d1dbbe 100644
    > --- a/samples/bpf/Makefile
    > +++ b/samples/bpf/Makefile
    > @@ -177,6 +177,11 @@ ifeq ($(ARCH), arm)
    > CLANG_EXTRA_CFLAGS := $(D_OPTIONS)
    > endif
    >
    > +ifdef SYSROOT
    > +ccflags-y += --sysroot=${SYSROOT}
    > +PROGS_LDFLAGS := -L${SYSROOT}/usr/lib
    > +endif
    > +
    > ccflags-y += -I$(objtree)/usr/include
    > ccflags-y += -I$(srctree)/tools/lib/bpf/
    > ccflags-y += -I$(srctree)/tools/testing/selftests/bpf/
    > diff --git a/samples/bpf/README.rst b/samples/bpf/README.rst
    > index 5f27e4faca50..786d0ab98e8a 100644
    > --- a/samples/bpf/README.rst
    > +++ b/samples/bpf/README.rst
    > @@ -74,3 +74,13 @@ samples for the cross target.
    > export ARCH=arm64
    > export CROSS_COMPILE="aarch64-linux-gnu-"
    > make samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang
    > +
    > +If need to use environment of target board (headers and libs), the SYSROOT
    > +also can be set, pointing on FS of target board:
    > +
    > +export ARCH=arm64
    > +export CROSS_COMPILE="aarch64-linux-gnu-"
    > +make samples/bpf/ SYSROOT=~/some_sdk/linux-devkit/sysroots/aarch64-linux-gnu
    > +
    > +Setting LLC and CLANG is not necessarily if it's installed on HOST and have
    > +in its targets appropriate arch triple (usually it has several arches).

    You have very good description about how to build and test in cover
    letter. Could you include those instructions here as well? This will
    help keep a record so later people can try/test if needed.
    \
     
     \ /
      Last update: 2019-09-13 23:49    [W:4.481 / U:0.060 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site