Makefile (e9d48abbce93e2138e37a695ba5931f3d3c9fdd9) Makefile (633ba3be76426056a047b2a355082d94afa9230d)
1# SPDX-License-Identifier: GPL-2.0
2
3# based on tools/testing/selftest/bpf/Makefile
4include ../../../build/Build.include
5include ../../../scripts/Makefile.arch
6include ../../../scripts/Makefile.include
7
8CXX ?= $(CROSS_COMPILE)g++

--- 77 unchanged lines hidden (view full) ---

86# sort removes libbpf duplicates when not cross-building
87MAKE_DIRS := $(sort $(BUILD_DIR)/libbpf $(HOST_BUILD_DIR)/libbpf \
88 $(HOST_BUILD_DIR)/bpftool $(HOST_BUILD_DIR)/resolve_btfids \
89 $(INCLUDE_DIR))
90$(MAKE_DIRS):
91 $(call msg,MKDIR,,$@)
92 $(Q)mkdir -p $@
93
1# SPDX-License-Identifier: GPL-2.0
2
3# based on tools/testing/selftest/bpf/Makefile
4include ../../../build/Build.include
5include ../../../scripts/Makefile.arch
6include ../../../scripts/Makefile.include
7
8CXX ?= $(CROSS_COMPILE)g++

--- 77 unchanged lines hidden (view full) ---

86# sort removes libbpf duplicates when not cross-building
87MAKE_DIRS := $(sort $(BUILD_DIR)/libbpf $(HOST_BUILD_DIR)/libbpf \
88 $(HOST_BUILD_DIR)/bpftool $(HOST_BUILD_DIR)/resolve_btfids \
89 $(INCLUDE_DIR))
90$(MAKE_DIRS):
91 $(call msg,MKDIR,,$@)
92 $(Q)mkdir -p $@
93
94$(OUTPUT)/%.o: %.c
95 $(call msg,CC,,$@)
96 $(Q)$(CC) $(CFLAGS) -c $(filter %.c,$^) $(LDLIBS) -o $@
97
98# LLVM's ld.lld doesn't support all the architectures, so use it only on x86
99ifeq ($(SRCARCH),x86)
100LLD := lld
101else
102LLD := ld
103endif
104
105DEFAULT_BPFTOOL := $(HOST_SCRATCH_DIR)/sbin/bpftool

--- 112 unchanged lines hidden (view full) ---

218 | $(OUTPUT) $(BPFOBJ)
219 $(call $(BPF_BUILD_RULE),$<,$@, $(BPF_CFLAGS))
220
221$(BPF_SKELS): %.skel.h: %.bpf.o $(BPFTOOL) | $(OUTPUT)
222 $(call msg,GEN-SKEL,$(BINARY),$@)
223 $(Q)$(BPFTOOL) gen object $(<:.o=.linked1.o) $<
224 $(Q)$(BPFTOOL) gen skeleton $(<:.o=.linked1.o) name $(notdir $(<:.bpf.o=)) > $@
225
94# LLVM's ld.lld doesn't support all the architectures, so use it only on x86
95ifeq ($(SRCARCH),x86)
96LLD := lld
97else
98LLD := ld
99endif
100
101DEFAULT_BPFTOOL := $(HOST_SCRATCH_DIR)/sbin/bpftool

--- 112 unchanged lines hidden (view full) ---

214 | $(OUTPUT) $(BPFOBJ)
215 $(call $(BPF_BUILD_RULE),$<,$@, $(BPF_CFLAGS))
216
217$(BPF_SKELS): %.skel.h: %.bpf.o $(BPFTOOL) | $(OUTPUT)
218 $(call msg,GEN-SKEL,$(BINARY),$@)
219 $(Q)$(BPFTOOL) gen object $(<:.o=.linked1.o) $<
220 $(Q)$(BPFTOOL) gen skeleton $(<:.o=.linked1.o) name $(notdir $(<:.bpf.o=)) > $@
221
226$(OUTPUT)/%:%.c $(BPF_SKELS) $(KHDR_INCLUDES)/linux/hid.h
222$(OUTPUT)/%.o: %.c $(BPF_SKELS) $(KHDR_INCLUDES)/linux/hid.h
223 $(call msg,CC,,$@)
224 $(Q)$(CC) $(CFLAGS) -c $(filter %.c,$^) $(LDLIBS) -o $@
225
226$(OUTPUT)/%: $(OUTPUT)/%.o
227 $(call msg,BINARY,,$@)
228 $(Q)$(LINK.c) $^ $(LDLIBS) -o $@
229
230EXTRA_CLEAN := $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) feature bpftool \
231 $(addprefix $(OUTPUT)/,*.o *.skel.h no_alu32)
227 $(call msg,BINARY,,$@)
228 $(Q)$(LINK.c) $^ $(LDLIBS) -o $@
229
230EXTRA_CLEAN := $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) feature bpftool \
231 $(addprefix $(OUTPUT)/,*.o *.skel.h no_alu32)