]> git.donarmstrong.com Git - qmk_firmware.git/blobdiff - tmk_core/rules.mk
removes stray paren
[qmk_firmware.git] / tmk_core / rules.mk
index 860fc1a9310da970ebecba597c150802f522f37e..a0698fa3bbe989cc08b3ff5468f110eb9f76b746 100644 (file)
@@ -142,6 +142,9 @@ CFLAGS += $(CSTANDARD)
 ifdef CONFIG_H
     CFLAGS += -include $(CONFIG_H)
 endif
+ifdef CONFIG_USER_H
+    CFLAGS += -include $(CONFIG_USER_H)
+endif
 
 
 #---------------- Compiler Options C++ ----------------
@@ -176,6 +179,9 @@ CPPFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))
 ifdef CONFIG_H
     CPPFLAGS += -include $(CONFIG_H)
 endif
+ifdef CONFIG_USER_H
+    CPPFLAGS += -include $(CONFIG_USER_H)
+endif
 
 
 #---------------- Assembler Options ----------------
@@ -192,6 +198,9 @@ ASFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))
 ifdef CONFIG_H
     ASFLAGS += -include $(CONFIG_H)
 endif
+ifdef CONFIG_USER_H
+    ASFLAGS += -include $(CONFIG_USER_H)
+endif
 
 
 #---------------- Library Options ----------------
@@ -308,7 +317,12 @@ REMOVE = rm -f
 REMOVEDIR = rmdir
 COPY = cp
 WINSHELL = cmd
-
+# Autodecct teensy loader
+ifneq (, $(shell which teensy-loader-cli 2>/dev/null))
+  TEENSY_LOADER_CLI = teensy-loader-cli
+else
+  TEENSY_LOADER_CLI = teensy_loader_cli
+endif
 
 # Define Messages
 # English
@@ -357,7 +371,13 @@ ALL_ASFLAGS = -mmcu=$(MCU) -x assembler-with-cpp $(ASFLAGS) $(EXTRAFLAGS)
 
 
 # Default target.
-all: begin gccversion sizebefore build sizeafter end
+all: 
+       $(MAKE) begin 
+       $(MAKE) gccversion 
+       $(MAKE) sizebefore 
+       $(MAKE) build 
+       $(MAKE) sizeafter 
+       $(MAKE) end
 
 # Change the build target to build a HEX file or a library.
 build: elf hex eep lss sym
@@ -378,12 +398,10 @@ lib: $(LIBNAME)
 # AVR Studio 3.x does not check make's exit code but relies on
 # the following magic strings to be generated by the compile job.
 begin:
-       @echo
        @echo $(MSG_BEGIN)
 
 end:
        @echo $(MSG_END)
-       @echo
 
 
 # Display size of file.
@@ -412,14 +430,14 @@ program: $(TARGET).hex $(TARGET).eep
        $(PROGRAM_CMD)
 
 teensy: $(TARGET).hex
-       teensy_loader_cli -mmcu=$(MCU) -w -v $(TARGET).hex
+       $(TEENSY_LOADER_CLI) -mmcu=$(MCU) -w -v $(TARGET).hex
 
 flip: $(TARGET).hex
        batchisp -hardware usb -device $(MCU) -operation erase f
        batchisp -hardware usb -device $(MCU) -operation loadbuffer $(TARGET).hex program
        batchisp -hardware usb -device $(MCU) -operation start reset 0
 
-dfu: $(TARGET).hex
+dfu: $(TARGET).hex sizeafter
 ifneq (, $(findstring 0.7, $(shell dfu-programmer --version 2>&1)))
        dfu-programmer $(MCU) erase --force
 else
@@ -490,13 +508,11 @@ COFFCONVERT += --change-section-address .eeprom-0x810000
 
 
 coff: $(TARGET).elf
-       @echo
        @echo $(MSG_COFF) $(TARGET).cof
        $(COFFCONVERT) -O coff-avr $< $(TARGET).cof
 
 
 extcoff: $(TARGET).elf
-       @echo
        @echo $(MSG_EXTENDED_COFF) $(TARGET).cof
        $(COFFCONVERT) -O coff-ext-avr $< $(TARGET).cof
 
@@ -504,25 +520,21 @@ extcoff: $(TARGET).elf
 
 # Create final output files (.hex, .eep) from ELF output file.
 %.hex: %.elf
-       @echo
        @echo $(MSG_FLASH) $@
        $(OBJCOPY) -O $(FORMAT) -R .eeprom -R .fuse -R .lock -R .signature $< $@
 
 %.eep: %.elf
-       @echo
        @echo $(MSG_EEPROM) $@
        -$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \
        --change-section-lma .eeprom=0 --no-change-warnings -O $(FORMAT) $< $@ || exit 0
 
 # Create extended listing file from ELF output file.
 %.lss: %.elf
-       @echo
        @echo $(MSG_EXTENDED_LISTING) $@
        $(OBJDUMP) -h -S -z $< > $@
 
 # Create a symbol table from ELF output file.
 %.sym: %.elf
-       @echo
        @echo $(MSG_SYMBOL_TABLE) $@
        $(NM) -n $< > $@
 
@@ -532,7 +544,6 @@ extcoff: $(TARGET).elf
 .SECONDARY : $(TARGET).a
 .PRECIOUS : $(OBJ)
 %.a: $(OBJ)
-       @echo
        @echo $(MSG_CREATING_LIBRARY) $@
        $(AR) $@ $(OBJ)
 
@@ -541,14 +552,12 @@ extcoff: $(TARGET).elf
 .SECONDARY : $(TARGET).elf
 .PRECIOUS : $(OBJ)
 %.elf: $(OBJ)
-       @echo
        @echo $(MSG_LINKING) $@
        $(CC) $(ALL_CFLAGS) $^ --output $@ $(LDFLAGS)
 
 
 # Compile: create object files from C source files.
 $(OBJDIR)/%.o : %.c
-       @echo
        mkdir -p $(@D)
        @echo $(MSG_COMPILING) $<
        $(CC) -c $(ALL_CFLAGS) $< -o $@ 
@@ -556,7 +565,6 @@ $(OBJDIR)/%.o : %.c
 
 # Compile: create object files from C++ source files.
 $(OBJDIR)/%.o : %.cpp
-       @echo
        mkdir -p $(@D)
        @echo $(MSG_COMPILING_CPP) $<
        $(CC) -c $(ALL_CPPFLAGS) $< -o $@ 
@@ -574,7 +582,6 @@ $(OBJDIR)/%.o : %.cpp
 
 # Assemble: create object files from assembler source files.
 $(OBJDIR)/%.o : %.S
-       @echo
        mkdir -p $(@D)
        @echo $(MSG_ASSEMBLING) $<
        $(CC) -c $(ALL_ASFLAGS) $< -o $@
@@ -589,7 +596,6 @@ $(OBJDIR)/%.o : %.S
 clean: begin clean_list end
 
 clean_list :
-       @echo
        $(REMOVE) $(TARGET).hex
        $(REMOVE) $(TARGET).eep
        $(REMOVE) $(TARGET).cof