mirror of
				https://github.com/mfulz/qmk_firmware.git
				synced 2025-10-31 13:22:31 +01:00 
			
		
		
		
	directly use object files when linking ELF (#22025)
This commit is contained in:
		
							parent
							
								
									169b0f33f6
								
							
						
					
					
						commit
						615ca78567
					
				| @ -12,6 +12,9 @@ vpath %.hpp $(VPATH_SRC) | ||||
| vpath %.S $(VPATH_SRC) | ||||
| VPATH := | ||||
| 
 | ||||
| # Helper to return the distinct elements of a list
 | ||||
| uniq = $(if $1,$(firstword $1) $(call uniq,$(filter-out $(firstword $1),$1))) | ||||
| 
 | ||||
| # Convert all SRC to OBJ
 | ||||
| define OBJ_FROM_SRC | ||||
| $(patsubst %.c,$1/%.o,$(patsubst %.cpp,$1/%.o,$(patsubst %.cc,$1/%.o,$(patsubst %.S,$1/%.o,$(patsubst %.clib,$1/%.a,$($1_SRC)))))) | ||||
| @ -264,7 +267,7 @@ BEGIN = gccversion sizebefore | ||||
| # Note the obj.txt depeendency is there to force linking if a source file is deleted
 | ||||
| %.elf: $(OBJ) $(MASTER_OUTPUT)/cflags.txt $(MASTER_OUTPUT)/ldflags.txt $(MASTER_OUTPUT)/obj.txt | $(BEGIN) | ||||
| 	@$(SILENT) || printf "$(MSG_LINKING) $@" | $(AWK_CMD) | ||||
| 	$(eval CMD=MAKE=$(MAKE) $(CC) $(ALL_CFLAGS) $(filter-out %.txt,$^) --output $@ $(LDFLAGS)) | ||||
| 	$(eval CMD=MAKE=$(MAKE) $(CC) $(ALL_CFLAGS) $(call uniq,$(OBJ)) --output $@ $(LDFLAGS)) | ||||
| 	@$(BUILD_CMD) | ||||
| 
 | ||||
| 
 | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Thomas Weißschuh
						Thomas Weißschuh