mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	tools/resolve_btfids: Build libbpf and libsubcmd in separate directories
Setting up separate build directories for libbpf and libpsubcmd, so it's separated from other objects and we don't get them mixed in the future. It also simplifies cleaning, which is now simple rm -rf. Also there's no need for FEATURE-DUMP.libbpf and bpf_helper_defs.h files in .gitignore anymore. Signed-off-by: Jiri Olsa <jolsa@kernel.org> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Acked-by: Song Liu <songliubraving@fb.com> Acked-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20210205124020.683286-2-jolsa@kernel.org
This commit is contained in:
		
							parent
							
								
									0a1b0fd929
								
							
						
					
					
						commit
						fc6b48f692
					
				
					 2 changed files with 11 additions and 17 deletions
				
			
		
							
								
								
									
										2
									
								
								tools/bpf/resolve_btfids/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								tools/bpf/resolve_btfids/.gitignore
									
									
									
									
										vendored
									
									
								
							| 
						 | 
				
			
			@ -1,4 +1,2 @@
 | 
			
		|||
/FEATURE-DUMP.libbpf
 | 
			
		||||
/bpf_helper_defs.h
 | 
			
		||||
/fixdep
 | 
			
		||||
/resolve_btfids
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -28,22 +28,22 @@ OUTPUT ?= $(srctree)/tools/bpf/resolve_btfids/
 | 
			
		|||
LIBBPF_SRC := $(srctree)/tools/lib/bpf/
 | 
			
		||||
SUBCMD_SRC := $(srctree)/tools/lib/subcmd/
 | 
			
		||||
 | 
			
		||||
BPFOBJ     := $(OUTPUT)/libbpf.a
 | 
			
		||||
SUBCMDOBJ  := $(OUTPUT)/libsubcmd.a
 | 
			
		||||
BPFOBJ     := $(OUTPUT)/libbpf/libbpf.a
 | 
			
		||||
SUBCMDOBJ  := $(OUTPUT)/libsubcmd/libsubcmd.a
 | 
			
		||||
 | 
			
		||||
BINARY     := $(OUTPUT)/resolve_btfids
 | 
			
		||||
BINARY_IN  := $(BINARY)-in.o
 | 
			
		||||
 | 
			
		||||
all: $(BINARY)
 | 
			
		||||
 | 
			
		||||
$(OUTPUT):
 | 
			
		||||
$(OUTPUT) $(OUTPUT)/libbpf $(OUTPUT)/libsubcmd:
 | 
			
		||||
	$(call msg,MKDIR,,$@)
 | 
			
		||||
	$(Q)mkdir -p $(OUTPUT)
 | 
			
		||||
	$(Q)mkdir -p $(@)
 | 
			
		||||
 | 
			
		||||
$(SUBCMDOBJ): fixdep FORCE
 | 
			
		||||
	$(Q)$(MAKE) -C $(SUBCMD_SRC) OUTPUT=$(OUTPUT)
 | 
			
		||||
$(SUBCMDOBJ): fixdep FORCE | $(OUTPUT)/libsubcmd
 | 
			
		||||
	$(Q)$(MAKE) -C $(SUBCMD_SRC) OUTPUT=$(abspath $(dir $@))/ $(abspath $@)
 | 
			
		||||
 | 
			
		||||
$(BPFOBJ): $(wildcard $(LIBBPF_SRC)/*.[ch] $(LIBBPF_SRC)/Makefile) | $(OUTPUT)
 | 
			
		||||
$(BPFOBJ): $(wildcard $(LIBBPF_SRC)/*.[ch] $(LIBBPF_SRC)/Makefile) | $(OUTPUT)/libbpf
 | 
			
		||||
	$(Q)$(MAKE) $(submake_extras) -C $(LIBBPF_SRC)  OUTPUT=$(abspath $(dir $@))/ $(abspath $@)
 | 
			
		||||
 | 
			
		||||
CFLAGS := -g \
 | 
			
		||||
| 
						 | 
				
			
			@ -57,23 +57,19 @@ LIBS = -lelf -lz
 | 
			
		|||
export srctree OUTPUT CFLAGS Q
 | 
			
		||||
include $(srctree)/tools/build/Makefile.include
 | 
			
		||||
 | 
			
		||||
$(BINARY_IN): fixdep FORCE
 | 
			
		||||
$(BINARY_IN): fixdep FORCE | $(OUTPUT)
 | 
			
		||||
	$(Q)$(MAKE) $(build)=resolve_btfids
 | 
			
		||||
 | 
			
		||||
$(BINARY): $(BPFOBJ) $(SUBCMDOBJ) $(BINARY_IN)
 | 
			
		||||
	$(call msg,LINK,$@)
 | 
			
		||||
	$(Q)$(CC) $(BINARY_IN) $(LDFLAGS) -o $@ $(BPFOBJ) $(SUBCMDOBJ) $(LIBS)
 | 
			
		||||
 | 
			
		||||
libsubcmd-clean:
 | 
			
		||||
	$(Q)$(MAKE) -C $(SUBCMD_SRC) OUTPUT=$(OUTPUT) clean
 | 
			
		||||
 | 
			
		||||
libbpf-clean:
 | 
			
		||||
	$(Q)$(MAKE) -C $(LIBBPF_SRC) OUTPUT=$(OUTPUT) clean
 | 
			
		||||
 | 
			
		||||
clean: libsubcmd-clean libbpf-clean fixdep-clean
 | 
			
		||||
clean: fixdep-clean
 | 
			
		||||
	$(call msg,CLEAN,$(BINARY))
 | 
			
		||||
	$(Q)$(RM) -f $(BINARY); \
 | 
			
		||||
	$(RM) -rf $(if $(OUTPUT),$(OUTPUT),.)/feature; \
 | 
			
		||||
	$(RM) -rf $(OUTPUT)/libbpf; \
 | 
			
		||||
	$(RM) -rf $(OUTPUT)/libsubcmd; \
 | 
			
		||||
	find $(if $(OUTPUT),$(OUTPUT),.) -name \*.o -or -name \*.o.cmd -or -name \*.o.d | xargs $(RM)
 | 
			
		||||
 | 
			
		||||
tags:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue