X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=rules.mk;h=6870cfab7c63a6e5f0afc7f38cd42259a2451f34;hb=6496d5108fc5168470155e4ae0db52a0af562054;hp=41d1e1cb9e33d948c5df814735c8f11cff2b0154;hpb=5f3952176a4e9a00ca8dd5ec4a6b994958f89e0a;p=bertos.git diff --git a/rules.mk b/rules.mk index 41d1e1cb..6870cfab 100644 --- a/rules.mk +++ b/rules.mk @@ -46,7 +46,11 @@ RECURSIVE_TARGETS = all-recursive install-recursive clean-recursive # The default target .PHONY: all -all:: all-recursive $(TRG_S19) $(TRG_HEX) +ifeq ($(EMBEDDED_TARGET),1) +all:: all-recursive $(TRG_S19) $(TRG_HEX) $(TRG_BIN) +else +all:: all-recursive $(TRG_ELF) +endif # Generate project documentation .PHONY: docs @@ -63,6 +67,14 @@ $(1)_ASFLAGS += -mmcu=$$($(1)_MCU) $(1)_CPPAFLAGS += -mmcu=$$($(1)_MCU) $(1)_LDFLAGS += -mmcu=$$($(1)_MCU) endif +ifneq ($$(strip $$($(1)_CPU)),) +# Define all project specific object files +$(1)_CFLAGS += -mcpu=$$($(1)_CPU) +$(1)_CXXFLAGS += -mcpu=$$($(1)_CPU) +$(1)_ASFLAGS += -mcpu=$$($(1)_CPU) +$(1)_CPPAFLAGS += -mcpu=$$($(1)_CPU) +$(1)_LDFLAGS += -mcpu=$$($(1)_CPU) +endif ifneq ($$(strip $$($(1)_LDSCRIPT)),) $(1)_LDFLAGS += -Wl,-T$$($(1)_LDSCRIPT) endif @@ -110,14 +122,19 @@ $$($(1)_CPPAOBJ): $$(OBJDIR)/$(1)/%.o : %.S $L "$(1): Assembling with CPP $$<" @$$(MKDIR_P) $$(dir $$@) $Q $$(CC) -c $$(CPPAFLAGS) $$($(1)_CPPAFLAGS) $$($(1)_CPPFLAGS) $$(CPPFLAGS) $$< -o $$@ + # Link: instructions to create elf output file from object files $$(OUTDIR)/$(1).elf: bumprev $$($(1)_OBJ) $$($(1)_LDSCRIPT) $L "$(1): Linking $$(OUTDIR)/$(1)" @$$(MKDIR_P) $$(dir $$@) +ifeq ($(EMBEDDED_TARGET), 1) + $Q $$(LD) $$($(1)_OBJ) $$(LIB) $$(LDFLAGS) $$($(1)_LDFLAGS) -o $$@ +else $Q $$(LD) $$($(1)_OBJ) $$(LIB) $$(LDFLAGS) $$($(1)_LDFLAGS) -o $$(OUTDIR)/$(1)_nostrip $Q $$(STRIP) -o $$(OUTDIR)/$(1) $$(OUTDIR)/$(1)_nostrip - +endif + # Compile and link (program-at-a-time) $$(OUTDIR)/$(1)_whole.elf: bumprev $$($(1)_SRC) $$($(1)_LDSCRIPT) $L "$(1): Compiling and Linking whole program $$@"