summaryrefslogtreecommitdiff
path: root/examples/device/cdc_msc_hid/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'examples/device/cdc_msc_hid/Makefile')
-rw-r--r--examples/device/cdc_msc_hid/Makefile20
1 files changed, 16 insertions, 4 deletions
diff --git a/examples/device/cdc_msc_hid/Makefile b/examples/device/cdc_msc_hid/Makefile
index 11c05ad26..983365fc4 100644
--- a/examples/device/cdc_msc_hid/Makefile
+++ b/examples/device/cdc_msc_hid/Makefile
@@ -20,6 +20,7 @@ CC = $(CROSS_COMPILE)gcc
CXX = $(CROSS_COMPILE)g++
LD = $(CROSS_COMPILE)ld
OBJCOPY = $(CROSS_COMPILE)objcopy
+SIZE = $(CROSS_COMPILE)size
MKDIR = mkdir
SED = sed
CP = cp
@@ -84,10 +85,10 @@ LIB_SOURCE += \
SRC_C += $(LIB_SOURCE)
-OBJ = $(addprefix $(BUILD)/obj/, $(SRC_C:.c=.o))
-OBJ += $(addprefix $(BUILD)/obj/, $(SRC_S:.s=.o))
+OBJ += $(addprefix $(BUILD)/obj/, $(SRC_C:.c=.o))
+OBJ += $(addprefix $(BUILD)/obj/, $(SRC_S:.S=.o))
-all: $(BUILD)/$(BOARD)-firmware.bin
+all: $(BUILD)/$(BOARD)-firmware.bin size
OBJ_DIRS = $(sort $(dir $(OBJ)))
$(OBJ): | $(OBJ_DIRS)
@@ -107,7 +108,7 @@ $(BUILD)/$(BOARD)-firmware.bin: $(BUILD)/$(BOARD)-firmware.elf
# to be used to compile all .c files.
vpath %.c . $(TOP)
$(BUILD)/obj/%.o: %.c
- @echo CC $@
+ @echo CC $(notdir $@)
@$(CC) $(CFLAGS) -c -MD -o $@ $<
@# The following fixes the dependency file.
@# See http://make.paulandlesley.org/autodep.html for details.
@@ -117,5 +118,16 @@ $(BUILD)/obj/%.o: %.c
-e '/^$$/ d' -e 's/$$/ :/' < $(@:.o=.d) >> $(@:.o=.P); \
$(RM) $(@:.o=.d)
+# ASM sources
+vpath %.S . $(TOP)
+$(BUILD)/obj/%.o: %.S
+ @echo AS $(notdir $@)
+ @$(CC) -x assembler-with-cpp $(ASFLAGS) -c -o $@ $<
+
+size: $(BUILD)/$(BOARD)-firmware.elf
+ -@echo ''
+ @$(SIZE) $<
+ -@echo ''
+
clean:
rm -rf build-$(BOARD)