Skip to content

Commit

Permalink
samples/bpf: adjust Makefile and README.rst
Browse files Browse the repository at this point in the history
Side effect of some kbuild changes resulted in breaking the
documented way to build samples/bpf/.

This patch change the samples/bpf/Makefile to work again, when
invoking make from the subdir samples/bpf/. Also update the
documentation in README.rst, to reflect the new way to build.

Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Jesper Dangaard Brouer authored and David S. Miller committed Nov 12, 2019
1 parent 5b67a3e commit 6cc2c87
Showing 2 changed files with 7 additions and 9 deletions.
4 changes: 2 additions & 2 deletions samples/bpf/Makefile
Original file line number Diff line number Diff line change
@@ -203,7 +203,7 @@ TPROGLDLIBS_test_overhead += -lrt
TPROGLDLIBS_xdpsock += -pthread

# Allows pointing LLC/CLANG to a LLVM backend with bpf support, redefine on cmdline:
# make samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang
# make M=samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang
LLC ?= llc
CLANG ?= clang
LLVM_OBJCOPY ?= llvm-objcopy
@@ -246,7 +246,7 @@ endif

# Trick to allow make to be run from this directory
all:
$(MAKE) -C ../../ $(CURDIR)/ BPF_SAMPLES_PATH=$(CURDIR)
$(MAKE) -C ../../ M=$(CURDIR) BPF_SAMPLES_PATH=$(CURDIR)

clean:
$(MAKE) -C ../../ M=$(CURDIR) clean
12 changes: 5 additions & 7 deletions samples/bpf/README.rst
Original file line number Diff line number Diff line change
@@ -46,12 +46,10 @@ Compiling
For building the BPF samples, issue the below command from the kernel
top level directory::

make samples/bpf/

Do notice the "/" slash after the directory name.
make M=samples/bpf

It is also possible to call make from this directory. This will just
hide the the invocation of make as above with the appended "/".
hide the invocation of make as above.

Manually compiling LLVM with 'bpf' support
------------------------------------------
@@ -77,7 +75,7 @@ Quick sniplet for manually compiling LLVM and clang
It is also possible to point make to the newly compiled 'llc' or
'clang' command via redefining LLC or CLANG on the make command line::

make samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang
make M=samples/bpf LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang

Cross compiling samples
-----------------------
@@ -98,10 +96,10 @@ Pointing LLC and CLANG is not necessarily if it's installed on HOST and have
in its targets appropriate arm64 arch (usually it has several arches).
Build samples::

make samples/bpf/
make M=samples/bpf

Or build samples with SYSROOT if some header or library is absent in toolchain,
say libelf, providing address to file system containing headers and libs,
can be RFS of target board::

make samples/bpf/ SYSROOT=~/some_sysroot
make M=samples/bpf SYSROOT=~/some_sysroot

0 comments on commit 6cc2c87

Please sign in to comment.