tools/resolve_btfids: Install subcmd headers
Previously tools/lib/subcmd was added to the include path, switch to installing the headers and then including from that directory. This avoids dependencies on headers internal to tools/lib/subcmd. Add the missing subcmd directory to the affected #include. Signed-off-by: Ian Rogers <irogers@google.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> Acked-by: Jiri Olsa <jolsa@kernel.org> Link: https://lore.kernel.org/bpf/20230124064324.672022-1-irogers@google.com
This commit is contained in:
Родитель
0cea651d6f
Коммит
af03299d85
|
@ -35,21 +35,29 @@ SUBCMD_SRC := $(srctree)/tools/lib/subcmd/
|
|||
BPFOBJ := $(OUTPUT)/libbpf/libbpf.a
|
||||
LIBBPF_OUT := $(abspath $(dir $(BPFOBJ)))/
|
||||
SUBCMDOBJ := $(OUTPUT)/libsubcmd/libsubcmd.a
|
||||
SUBCMD_OUT := $(abspath $(dir $(SUBCMDOBJ)))/
|
||||
|
||||
LIBBPF_DESTDIR := $(LIBBPF_OUT)
|
||||
LIBBPF_INCLUDE := $(LIBBPF_DESTDIR)include
|
||||
|
||||
SUBCMD_DESTDIR := $(SUBCMD_OUT)
|
||||
SUBCMD_INCLUDE := $(SUBCMD_DESTDIR)include
|
||||
|
||||
BINARY := $(OUTPUT)/resolve_btfids
|
||||
BINARY_IN := $(BINARY)-in.o
|
||||
|
||||
all: $(BINARY)
|
||||
|
||||
prepare: $(BPFOBJ) $(SUBCMDOBJ)
|
||||
|
||||
$(OUTPUT) $(OUTPUT)/libsubcmd $(LIBBPF_OUT):
|
||||
$(call msg,MKDIR,,$@)
|
||||
$(Q)mkdir -p $(@)
|
||||
|
||||
$(SUBCMDOBJ): fixdep FORCE | $(OUTPUT)/libsubcmd
|
||||
$(Q)$(MAKE) -C $(SUBCMD_SRC) OUTPUT=$(abspath $(dir $@))/ $(abspath $@)
|
||||
$(Q)$(MAKE) -C $(SUBCMD_SRC) OUTPUT=$(SUBCMD_OUT) \
|
||||
DESTDIR=$(SUBCMD_DESTDIR) prefix= \
|
||||
$(abspath $@) install_headers
|
||||
|
||||
$(BPFOBJ): $(wildcard $(LIBBPF_SRC)/*.[ch] $(LIBBPF_SRC)/Makefile) | $(LIBBPF_OUT)
|
||||
$(Q)$(MAKE) $(submake_extras) -C $(LIBBPF_SRC) OUTPUT=$(LIBBPF_OUT) \
|
||||
|
@ -63,7 +71,7 @@ CFLAGS += -g \
|
|||
-I$(srctree)/tools/include \
|
||||
-I$(srctree)/tools/include/uapi \
|
||||
-I$(LIBBPF_INCLUDE) \
|
||||
-I$(SUBCMD_SRC) \
|
||||
-I$(SUBCMD_INCLUDE) \
|
||||
$(LIBELF_FLAGS)
|
||||
|
||||
LIBS = $(LIBELF_LIBS) -lz
|
||||
|
@ -71,7 +79,7 @@ LIBS = $(LIBELF_LIBS) -lz
|
|||
export srctree OUTPUT CFLAGS Q
|
||||
include $(srctree)/tools/build/Makefile.include
|
||||
|
||||
$(BINARY_IN): $(BPFOBJ) fixdep FORCE | $(OUTPUT)
|
||||
$(BINARY_IN): fixdep FORCE prepare | $(OUTPUT)
|
||||
$(Q)$(MAKE) $(build)=resolve_btfids
|
||||
|
||||
$(BINARY): $(BPFOBJ) $(SUBCMDOBJ) $(BINARY_IN)
|
||||
|
@ -83,7 +91,8 @@ clean_objects := $(wildcard $(OUTPUT)/*.o \
|
|||
$(OUTPUT)/.*.o.d \
|
||||
$(LIBBPF_OUT) \
|
||||
$(LIBBPF_DESTDIR) \
|
||||
$(OUTPUT)/libsubcmd \
|
||||
$(SUBCMD_OUT) \
|
||||
$(SUBCMD_DESTDIR) \
|
||||
$(OUTPUT)/resolve_btfids)
|
||||
|
||||
ifneq ($(clean_objects),)
|
||||
|
@ -100,4 +109,4 @@ tags:
|
|||
|
||||
FORCE:
|
||||
|
||||
.PHONY: all FORCE clean tags
|
||||
.PHONY: all FORCE clean tags prepare
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
#include <linux/err.h>
|
||||
#include <bpf/btf.h>
|
||||
#include <bpf/libbpf.h>
|
||||
#include <parse-options.h>
|
||||
#include <subcmd/parse-options.h>
|
||||
|
||||
#define BTF_IDS_SECTION ".BTF_ids"
|
||||
#define BTF_ID "__BTF_ID__"
|
||||
|
|
Загрузка…
Ссылка в новой задаче