linux-uconsole/tools/testing/selftests/net
Fathi Boudra c68cf0831b selftests: net: use LDLIBS instead of LDFLAGS
[ Upstream commit 870f193d48 ]

reuseport_bpf_numa fails to build due to undefined reference errors:

 aarch64-linaro-linux-gcc
 --sysroot=/build/tmp-rpb-glibc/sysroots/hikey -Wall
 -Wl,--no-as-needed -O2 -g -I../../../../usr/include/  -Wl,-O1
 -Wl,--hash-style=gnu -Wl,--as-needed -lnuma  reuseport_bpf_numa.c
 -o
 /build/tmp-rpb-glibc/work/hikey-linaro-linux/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/net/reuseport_bpf_numa
 /tmp/ccfUuExT.o: In function `send_from_node':
 /build/tmp-rpb-glibc/work/hikey-linaro-linux/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/net/reuseport_bpf_numa.c:138:
 undefined reference to `numa_run_on_node'
 /tmp/ccfUuExT.o: In function `main':
 /build/tmp-rpb-glibc/work/hikey-linaro-linux/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/net/reuseport_bpf_numa.c:230:
 undefined reference to `numa_available'
 /build/tmp-rpb-glibc/work/hikey-linaro-linux/kselftests/4.12-r0/linux-4.12-rc7/tools/testing/selftests/net/reuseport_bpf_numa.c:233:
 undefined reference to `numa_max_node'

It's GNU Make and linker specific.

The default Makefile rule looks like:

$(CC) $(CFLAGS) $(LDFLAGS) $@ $^ $(LDLIBS)

When linking is done by gcc itself, no issue, but when it needs to be passed
to proper ld, only LDLIBS follows and then ld cannot know what libs to link
with.

More detail:
https://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html

LDFLAGS
Extra flags to give to compilers when they are supposed to invoke the linker,
‘ld’, such as -L. Libraries (-lfoo) should be added to the LDLIBS variable
instead.

LDLIBS
Library flags or names given to compilers when they are supposed to invoke the
linker, ‘ld’. LOADLIBES is a deprecated (but still supported) alternative to
LDLIBS. Non-library linker flags, such as -L, should go in the LDFLAGS
variable.

https://lkml.org/lkml/2010/2/10/362

tools/perf: libraries must come after objects

Link order matters, use LDLIBS instead of LDFLAGS to properly link against
libnuma.

Signed-off-by: Fathi Boudra <fathi.boudra@linaro.org>
Signed-off-by: Shuah Khan <shuah@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-03-13 14:02:29 -07:00
..
forwarding selftests: forwarding: Add a test case for externally learned FDB entries 2019-02-27 10:08:57 +01:00
.gitignore selftests/net: add tls to .gitignore 2018-07-26 09:37:21 -07:00
config selftests: net: add config fragments 2018-06-21 09:47:25 +09:00
fib-onlink-tests.sh net/ipv6: Allow onlink routes to have a device mismatch if it is the default route 2018-11-04 14:50:52 +01:00
fib_rule_tests.sh selftests: net: initial fib rule tests 2018-05-23 15:14:12 -04:00
fib_tests.sh net/ipv6: Revert attempt to simplify route replace and append 2018-07-04 15:22:13 +09:00
in_netns.sh selftests/net: fix in_netns.sh script 2018-03-07 12:26:05 -05:00
ip6_gre_headroom.sh selftests: net: Test headroom handling of ip6_gre devices 2018-06-26 23:03:01 +09:00
Makefile selftests: net: use LDLIBS instead of LDFLAGS 2019-03-13 14:02:29 -07:00
msg_zerocopy.c selftests/net: reap zerocopy completions passed up as ancillary data. 2018-02-27 14:19:11 -05:00
msg_zerocopy.sh selftests/net: enable msg_zerocopy test 2018-06-04 09:49:39 -04:00
netdevice.sh selftests: net: return Kselftest Skip code for skipped tests 2018-05-30 15:29:06 -06:00
pmtu.sh selftests: pmtu: properly redirect stderr to /dev/null 2018-09-18 19:53:58 -07:00
psock_fanout.c selftests/net: ignore background traffic in psock_fanout 2018-02-23 12:47:05 -05:00
psock_lib.h selftests/net: Fixes psock_fanout CBPF test case 2017-04-20 15:39:19 -04:00
psock_snd.c selftests/net: add packet socket packet_snd test 2018-06-04 09:50:01 -04:00
psock_snd.sh selftests/net: add packet socket packet_snd test 2018-06-04 09:50:01 -04:00
psock_tpacket.c selftests: net: return Kselftest Skip code for skipped tests 2018-05-30 15:29:06 -06:00
reuseaddr_conflict.c selftest: add a reuseaddr test 2017-09-19 14:09:26 -06:00
reuseport_bpf.c bpf: do not blindly change rlimit in reuseport net selftest 2018-10-08 10:30:55 +02:00
reuseport_bpf_cpu.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
reuseport_bpf_numa.c selftests: net: reuseport_bpf_numa: don't fail if no numa support 2018-05-23 12:21:02 +02:00
reuseport_dualstack.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
rtnetlink.sh selftests: rtnetlink.sh explicitly requires bash. 2018-10-11 10:19:46 -07:00
run_afpackettests selftests/net: ignore background traffic in psock_fanout 2018-02-23 12:47:05 -05:00
run_netsocktests License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
socket.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tcp_inq.c selftest: add test for TCP_INQ 2018-05-01 18:56:29 -04:00
tcp_mmap.c selftest/net: fix protocol family to work for IPv4. 2018-08-02 10:30:12 -07:00
test_bpf.sh License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tls.c tls: fix currently broken MSG_PEEK behavior 2018-09-17 08:03:09 -07:00
udpgso.c selftests/net: udpgso: test small gso_size boundary conditions 2018-06-04 09:49:39 -04:00
udpgso.sh selftests: udp gso with corking 2018-04-26 15:09:52 -04:00
udpgso_bench.sh selftests: udpgso_bench.sh explicitly requires bash 2018-10-11 10:19:46 -07:00
udpgso_bench_rx.c selftests: udp gso benchmark 2018-04-26 15:09:52 -04:00
udpgso_bench_tx.c selftests: udp gso benchmark 2018-04-26 15:09:52 -04:00