aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJakub Kicinski <jakub.kicinski@netronome.com>2018-05-15 01:35:05 -0400
committerAlexei Starovoitov <ast@kernel.org>2018-05-15 01:52:10 -0400
commit0cc54db1818ad38f400be9f24871f3b7bf09e911 (patch)
tree6652a4d8b5c9530641a1372032ff1f17aa0b98f0
parent787360f8c2b87d4ae4858bb8736a19c289904885 (diff)
samples: bpf: move libbpf from object dependencies to libs
Make complains that it doesn't know how to make libbpf.a: scripts/Makefile.host:106: target 'samples/bpf/../../tools/lib/bpf/libbpf.a' doesn't match the target pattern Now that we have it as a dependency of the sources simply add libbpf.a to libraries not objects. Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com> Acked-by: Jesper Dangaard Brouer <brouer@redhat.com> Signed-off-by: Alexei Starovoitov <ast@kernel.org>
-rw-r--r--samples/bpf/Makefile145
1 files changed, 51 insertions, 94 deletions
diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile
index 0dae77c88d2e..0036a77c2d97 100644
--- a/samples/bpf/Makefile
+++ b/samples/bpf/Makefile
@@ -58,55 +58,53 @@ LIBBPF = $(TOOLS_PATH)/lib/bpf/libbpf.a
58CGROUP_HELPERS := ../../tools/testing/selftests/bpf/cgroup_helpers.o 58CGROUP_HELPERS := ../../tools/testing/selftests/bpf/cgroup_helpers.o
59TRACE_HELPERS := ../../tools/testing/selftests/bpf/trace_helpers.o 59TRACE_HELPERS := ../../tools/testing/selftests/bpf/trace_helpers.o
60 60
61test_lru_dist-objs := test_lru_dist.o $(LIBBPF) 61fds_example-objs := bpf_load.o fds_example.o
62sock_example-objs := sock_example.o $(LIBBPF) 62sockex1-objs := bpf_load.o sockex1_user.o
63fds_example-objs := bpf_load.o $(LIBBPF) fds_example.o 63sockex2-objs := bpf_load.o sockex2_user.o
64sockex1-objs := bpf_load.o $(LIBBPF) sockex1_user.o 64sockex3-objs := bpf_load.o sockex3_user.o
65sockex2-objs := bpf_load.o $(LIBBPF) sockex2_user.o 65tracex1-objs := bpf_load.o tracex1_user.o
66sockex3-objs := bpf_load.o $(LIBBPF) sockex3_user.o 66tracex2-objs := bpf_load.o tracex2_user.o
67tracex1-objs := bpf_load.o $(LIBBPF) tracex1_user.o 67tracex3-objs := bpf_load.o tracex3_user.o
68tracex2-objs := bpf_load.o $(LIBBPF) tracex2_user.o 68tracex4-objs := bpf_load.o tracex4_user.o
69tracex3-objs := bpf_load.o $(LIBBPF) tracex3_user.o 69tracex5-objs := bpf_load.o tracex5_user.o
70tracex4-objs := bpf_load.o $(LIBBPF) tracex4_user.o 70tracex6-objs := bpf_load.o tracex6_user.o
71tracex5-objs := bpf_load.o $(LIBBPF) tracex5_user.o 71tracex7-objs := bpf_load.o tracex7_user.o
72tracex6-objs := bpf_load.o $(LIBBPF) tracex6_user.o 72load_sock_ops-objs := bpf_load.o load_sock_ops.o
73tracex7-objs := bpf_load.o $(LIBBPF) tracex7_user.o 73test_probe_write_user-objs := bpf_load.o test_probe_write_user_user.o
74load_sock_ops-objs := bpf_load.o $(LIBBPF) load_sock_ops.o 74trace_output-objs := bpf_load.o trace_output_user.o $(TRACE_HELPERS)
75test_probe_write_user-objs := bpf_load.o $(LIBBPF) test_probe_write_user_user.o 75lathist-objs := bpf_load.o lathist_user.o
76trace_output-objs := bpf_load.o $(LIBBPF) trace_output_user.o $(TRACE_HELPERS) 76offwaketime-objs := bpf_load.o offwaketime_user.o $(TRACE_HELPERS)
77lathist-objs := bpf_load.o $(LIBBPF) lathist_user.o 77spintest-objs := bpf_load.o spintest_user.o $(TRACE_HELPERS)
78offwaketime-objs := bpf_load.o $(LIBBPF) offwaketime_user.o $(TRACE_HELPERS) 78map_perf_test-objs := bpf_load.o map_perf_test_user.o
79spintest-objs := bpf_load.o $(LIBBPF) spintest_user.o $(TRACE_HELPERS) 79test_overhead-objs := bpf_load.o test_overhead_user.o
80map_perf_test-objs := bpf_load.o $(LIBBPF) map_perf_test_user.o 80test_cgrp2_array_pin-objs := test_cgrp2_array_pin.o
81test_overhead-objs := bpf_load.o $(LIBBPF) test_overhead_user.o 81test_cgrp2_attach-objs := test_cgrp2_attach.o
82test_cgrp2_array_pin-objs := test_cgrp2_array_pin.o $(LIBBPF) 82test_cgrp2_attach2-objs := test_cgrp2_attach2.o $(CGROUP_HELPERS)
83test_cgrp2_attach-objs := test_cgrp2_attach.o $(LIBBPF) 83test_cgrp2_sock-objs := test_cgrp2_sock.o
84test_cgrp2_attach2-objs := test_cgrp2_attach2.o $(LIBBPF) $(CGROUP_HELPERS) 84test_cgrp2_sock2-objs := bpf_load.o test_cgrp2_sock2.o
85test_cgrp2_sock-objs := test_cgrp2_sock.o $(LIBBPF) 85xdp1-objs := xdp1_user.o
86test_cgrp2_sock2-objs := bpf_load.o $(LIBBPF) test_cgrp2_sock2.o
87xdp1-objs := xdp1_user.o $(LIBBPF)
88# reuse xdp1 source intentionally 86# reuse xdp1 source intentionally
89xdp2-objs := xdp1_user.o $(LIBBPF) 87xdp2-objs := xdp1_user.o
90xdp_router_ipv4-objs := bpf_load.o $(LIBBPF) xdp_router_ipv4_user.o 88xdp_router_ipv4-objs := bpf_load.o xdp_router_ipv4_user.o
91test_current_task_under_cgroup-objs := bpf_load.o $(LIBBPF) $(CGROUP_HELPERS) \ 89test_current_task_under_cgroup-objs := bpf_load.o $(CGROUP_HELPERS) \
92 test_current_task_under_cgroup_user.o 90 test_current_task_under_cgroup_user.o
93trace_event-objs := bpf_load.o $(LIBBPF) trace_event_user.o $(TRACE_HELPERS) 91trace_event-objs := bpf_load.o trace_event_user.o $(TRACE_HELPERS)
94sampleip-objs := bpf_load.o $(LIBBPF) sampleip_user.o $(TRACE_HELPERS) 92sampleip-objs := bpf_load.o sampleip_user.o $(TRACE_HELPERS)
95tc_l2_redirect-objs := bpf_load.o $(LIBBPF) tc_l2_redirect_user.o 93tc_l2_redirect-objs := bpf_load.o tc_l2_redirect_user.o
96lwt_len_hist-objs := bpf_load.o $(LIBBPF) lwt_len_hist_user.o 94lwt_len_hist-objs := bpf_load.o lwt_len_hist_user.o
97xdp_tx_iptunnel-objs := bpf_load.o $(LIBBPF) xdp_tx_iptunnel_user.o 95xdp_tx_iptunnel-objs := bpf_load.o xdp_tx_iptunnel_user.o
98test_map_in_map-objs := bpf_load.o $(LIBBPF) test_map_in_map_user.o 96test_map_in_map-objs := bpf_load.o test_map_in_map_user.o
99per_socket_stats_example-objs := cookie_uid_helper_example.o $(LIBBPF) 97per_socket_stats_example-objs := cookie_uid_helper_example.o
100xdp_redirect-objs := bpf_load.o $(LIBBPF) xdp_redirect_user.o 98xdp_redirect-objs := bpf_load.o xdp_redirect_user.o
101xdp_redirect_map-objs := bpf_load.o $(LIBBPF) xdp_redirect_map_user.o 99xdp_redirect_map-objs := bpf_load.o xdp_redirect_map_user.o
102xdp_redirect_cpu-objs := bpf_load.o $(LIBBPF) xdp_redirect_cpu_user.o 100xdp_redirect_cpu-objs := bpf_load.o xdp_redirect_cpu_user.o
103xdp_monitor-objs := bpf_load.o $(LIBBPF) xdp_monitor_user.o 101xdp_monitor-objs := bpf_load.o xdp_monitor_user.o
104xdp_rxq_info-objs := xdp_rxq_info_user.o $(LIBBPF) 102xdp_rxq_info-objs := xdp_rxq_info_user.o
105syscall_tp-objs := bpf_load.o $(LIBBPF) syscall_tp_user.o 103syscall_tp-objs := bpf_load.o syscall_tp_user.o
106cpustat-objs := bpf_load.o $(LIBBPF) cpustat_user.o 104cpustat-objs := bpf_load.o cpustat_user.o
107xdp_adjust_tail-objs := xdp_adjust_tail_user.o $(LIBBPF) 105xdp_adjust_tail-objs := xdp_adjust_tail_user.o
108xdpsock-objs := bpf_load.o $(LIBBPF) xdpsock_user.o 106xdpsock-objs := bpf_load.o xdpsock_user.o
109xdp_fwd-objs := bpf_load.o $(LIBBPF) xdp_fwd_user.o 107xdp_fwd-objs := bpf_load.o xdp_fwd_user.o
110 108
111# Tell kbuild to always build the programs 109# Tell kbuild to always build the programs
112always := $(hostprogs-y) 110always := $(hostprogs-y)
@@ -178,53 +176,12 @@ HOSTCFLAGS_spintest_user.o += -I$(srctree)/tools/lib/bpf/
178HOSTCFLAGS_trace_event_user.o += -I$(srctree)/tools/lib/bpf/ 176HOSTCFLAGS_trace_event_user.o += -I$(srctree)/tools/lib/bpf/
179HOSTCFLAGS_sampleip_user.o += -I$(srctree)/tools/lib/bpf/ 177HOSTCFLAGS_sampleip_user.o += -I$(srctree)/tools/lib/bpf/
180 178
181HOSTLOADLIBES_test_lru_dist += -lelf 179HOST_LOADLIBES += $(LIBBPF) -lelf
182HOSTLOADLIBES_sock_example += -lelf 180HOSTLOADLIBES_tracex4 += -lrt
183HOSTLOADLIBES_fds_example += -lelf 181HOSTLOADLIBES_trace_output += -lrt
184HOSTLOADLIBES_sockex1 += -lelf 182HOSTLOADLIBES_map_perf_test += -lrt
185HOSTLOADLIBES_sockex2 += -lelf 183HOSTLOADLIBES_test_overhead += -lrt
186HOSTLOADLIBES_sockex3 += -lelf 184HOSTLOADLIBES_xdpsock += -pthread
187HOSTLOADLIBES_tracex1 += -lelf
188HOSTLOADLIBES_tracex2 += -lelf
189HOSTLOADLIBES_tracex3 += -lelf
190HOSTLOADLIBES_tracex4 += -lelf -lrt
191HOSTLOADLIBES_tracex5 += -lelf
192HOSTLOADLIBES_tracex6 += -lelf
193HOSTLOADLIBES_tracex7 += -lelf
194HOSTLOADLIBES_test_cgrp2_array_pin += -lelf
195HOSTLOADLIBES_test_cgrp2_attach += -lelf
196HOSTLOADLIBES_test_cgrp2_attach2 += -lelf
197HOSTLOADLIBES_test_cgrp2_sock += -lelf
198HOSTLOADLIBES_test_cgrp2_sock2 += -lelf
199HOSTLOADLIBES_load_sock_ops += -lelf
200HOSTLOADLIBES_test_probe_write_user += -lelf
201HOSTLOADLIBES_trace_output += -lelf -lrt
202HOSTLOADLIBES_lathist += -lelf
203HOSTLOADLIBES_offwaketime += -lelf
204HOSTLOADLIBES_spintest += -lelf
205HOSTLOADLIBES_map_perf_test += -lelf -lrt
206HOSTLOADLIBES_test_overhead += -lelf -lrt
207HOSTLOADLIBES_xdp1 += -lelf
208HOSTLOADLIBES_xdp2 += -lelf
209HOSTLOADLIBES_xdp_router_ipv4 += -lelf
210HOSTLOADLIBES_test_current_task_under_cgroup += -lelf
211HOSTLOADLIBES_trace_event += -lelf
212HOSTLOADLIBES_sampleip += -lelf
213HOSTLOADLIBES_tc_l2_redirect += -l elf
214HOSTLOADLIBES_lwt_len_hist += -l elf
215HOSTLOADLIBES_xdp_tx_iptunnel += -lelf
216HOSTLOADLIBES_test_map_in_map += -lelf
217HOSTLOADLIBES_per_socket_stats_example += -lelf
218HOSTLOADLIBES_xdp_redirect += -lelf
219HOSTLOADLIBES_xdp_redirect_map += -lelf
220HOSTLOADLIBES_xdp_redirect_cpu += -lelf
221HOSTLOADLIBES_xdp_monitor += -lelf
222HOSTLOADLIBES_xdp_rxq_info += -lelf
223HOSTLOADLIBES_syscall_tp += -lelf
224HOSTLOADLIBES_cpustat += -lelf
225HOSTLOADLIBES_xdp_adjust_tail += -lelf
226HOSTLOADLIBES_xdpsock += -lelf -pthread
227HOSTLOADLIBES_xdp_fwd += -lelf
228 185
229# Allows pointing LLC/CLANG to a LLVM backend with bpf support, redefine on cmdline: 186# Allows pointing LLC/CLANG to a LLVM backend with bpf support, redefine on cmdline:
230# make samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang 187# make samples/bpf/ LLC=~/git/llvm/build/bin/llc CLANG=~/git/llvm/build/bin/clang