Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

selftest/tcp-ao: Rectify out-of-tree build

Trivial fix for out-of-tree build that I wasn't testing previously:

1. Create a directory for library object files, fixes:
> gcc lib/kconfig.c -Wall -O2 -g -D_GNU_SOURCE -fno-strict-aliasing -I ../../../../../usr/include/ -iquote /tmp/kselftest/kselftest/net/tcp_ao/lib -I ../../../../include/ -o /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o -c
> Assembler messages:
> Fatal error: can't create /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o: No such file or directory
> make[1]: *** [Makefile:46: /tmp/kselftest/kselftest/net/tcp_ao/lib/kconfig.o] Error 1

2. Include $(KHDR_INCLUDES) that's exported by selftests/Makefile, fixes:
> In file included from lib/kconfig.c:6:
> lib/aolib.h:320:45: warning: ‘struct tcp_ao_add’ declared inside parameter list will not be visible outside of this definition or declaration
> 320 | extern int test_prepare_key_sockaddr(struct tcp_ao_add *ao, const char *alg,
> | ^~~~~~~~~~
...

3. While at here, clean-up $(KSFT_KHDR_INSTALL): it's not needed anymore
since commit f2745dc0ba3d ("selftests: stop using KSFT_KHDR_INSTALL")

4. Also, while at here, drop .DEFAULT_GOAL definition: that has a
self-explaining comment, that was valid when I made these selftests
compile on local v4.19 kernel, but not needed since
commit 8ce72dc32578 ("selftests: fix headers_install circular dependency")

Fixes: cfbab37b3da0 ("selftests/net: Add TCP-AO library")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202312190645.q76MmHyq-lkp@intel.com/
Signed-off-by: Dmitry Safonov <dima@arista.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Dmitry Safonov and committed by
David S. Miller
826eb9bc 45248f29

+3 -6
+3 -6
tools/testing/selftests/net/tcp_ao/Makefile
··· 17 17 TEST_GEN_PROGS := $(TEST_IPV4_PROGS) $(TEST_IPV6_PROGS) 18 18 19 19 top_srcdir := ../../../../.. 20 - KSFT_KHDR_INSTALL := 1 21 20 include ../../lib.mk 22 21 23 22 HOSTAR ?= ar 24 - 25 - # Drop it on port to linux/master with commit 8ce72dc32578 26 - .DEFAULT_GOAL := all 27 23 28 24 LIBDIR := $(OUTPUT)/lib 29 25 LIB := $(LIBDIR)/libaotst.a ··· 27 31 LIBDEPS := lib/aolib.h Makefile 28 32 29 33 CFLAGS := -Wall -O2 -g -D_GNU_SOURCE -fno-strict-aliasing 30 - CFLAGS += -I ../../../../../usr/include/ -iquote $(LIBDIR) 31 - CFLAGS += -I ../../../../include/ 34 + CFLAGS += $(KHDR_INCLUDES) 35 + CFLAGS += -iquote ./lib/ -I ../../../../include/ 32 36 33 37 # Library 34 38 LIBSRC := kconfig.c netlink.c proc.c repair.c setup.c sock.c utils.c ··· 39 43 $(HOSTAR) rcs $@ $^ 40 44 41 45 $(LIBDIR)/%.o: ./lib/%.c $(LIBDEPS) 46 + mkdir -p $(LIBDIR) 42 47 $(CC) $< $(CFLAGS) $(CPPFLAGS) -o $@ -c 43 48 44 49 $(TEST_GEN_PROGS): $(LIB)