Skip to content

Commit

Permalink
selftests/bpf: fix broken build, take 2
Browse files Browse the repository at this point in the history
Merge of 'linux-kselftest-4.11-rc1':

1. Partially removed use of 'test_objs' target, breaking force rebuild of
BPFOBJ, introduced in commit d498f87 ("bpf: Rebuild bpf.o for any
dependency update").

  Update target so dependency on BPFOBJ is restored.

2. Introduced commit 2047f1d ("selftests: Fix the .c linking rule")
which fixes order of LDLIBS.

  Commit d02d898 ("bpf: Always test unprivileged programs") added
libcap dependency into CFLAGS. Use LDLIBS instead to fix linking of
test_verifier.

3. Introduced commit d83c3ba ("selftests: Fix selftests build to
just build, not run tests").

  Reordering the Makefile allows us to remove the 'all' target.

Tested both:
    selftests/bpf$ make
and
    selftests$ make TARGETS=bpf
on Ubuntu 16.04.2.

Signed-off-by: Zi Shen Lim <[email protected]>
Acked-by: Daniel Borkmann <[email protected]>
Tested-by: Daniel Borkmann <[email protected]>
Acked-by: Alexei Starovoitov <[email protected]>
Tested-by: Alexei Starovoitov <[email protected]>
Acked-by: Shuah Khan <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
  • Loading branch information
zlim authored and davem330 committed Mar 22, 2017
1 parent 4ef1b28 commit e8f1f34
Showing 1 changed file with 10 additions and 9 deletions.
19 changes: 10 additions & 9 deletions tools/testing/selftests/bpf/Makefile
Original file line number Diff line number Diff line change
@@ -1,22 +1,23 @@
LIBDIR := ../../../lib
BPFOBJ := $(LIBDIR)/bpf/bpf.o
BPFDIR := $(LIBDIR)/bpf

CFLAGS += -Wall -O2 -lcap -I../../../include/uapi -I$(LIBDIR) $(BPFOBJ)
CFLAGS += -Wall -O2 -I../../../include/uapi -I$(LIBDIR)
LDLIBS += -lcap

TEST_GEN_PROGS = test_verifier test_tag test_maps test_lru_map test_lpm_map

TEST_PROGS := test_kmod.sh

all: $(TEST_GEN_PROGS)
include ../lib.mk

BPFOBJ := $(OUTPUT)/bpf.o

$(TEST_GEN_PROGS): $(BPFOBJ)

.PHONY: all clean force
.PHONY: force

# force a rebuild of BPFOBJ when its dependencies are updated
force:

$(BPFOBJ): force
$(MAKE) -C $(dir $(BPFOBJ))

$(test_objs): $(BPFOBJ)

include ../lib.mk
$(MAKE) -C $(BPFDIR) OUTPUT=$(OUTPUT)/

0 comments on commit e8f1f34

Please sign in to comment.