mirror of
https://github.com/AdaCore/Certyflie.git
synced 2026-02-12 12:27:35 -08:00
72 lines
1.9 KiB
Makefile
72 lines
1.9 KiB
Makefile
# Part of CrazyFlie's Makefile
|
|
# Copyright (c) 2009, Arnaud Taffanel
|
|
# Common targets with verbose support
|
|
|
|
|
|
ifeq ($(V),)
|
|
VERBOSE=_SILENT
|
|
endif
|
|
|
|
ifeq ($(V),0)
|
|
QUIET=1
|
|
endif
|
|
|
|
target = @$(if $(QUIET), ,echo $($1_COMMAND$(VERBOSE)) ); @$($1_COMMAND)
|
|
|
|
VTMPL_COMMAND=$(PYTHON2) scripts/versionTemplate.py $< $@
|
|
#$(BIN)/$(lastword $(subst /, ,$@))
|
|
VTMPL_COMMAND_SILENT=" VTMPL $@"
|
|
%.c: %.vtpl
|
|
@$(if $(QUIET), ,echo $(VTMPL_COMMAND$(VERBOSE)) )
|
|
@$(VTMPL_COMMAND)
|
|
|
|
CC_COMMAND=$(CC) $(CFLAGS) -c $< -o $(BIN)/$@
|
|
CC_COMMAND_SILENT=" CC $@"
|
|
.c.o:
|
|
@$(if $(QUIET), ,echo $(CC_COMMAND$(VERBOSE)) )
|
|
@$(CC_COMMAND)
|
|
|
|
LD_COMMAND=$(LD) $(LDFLAGS) $(foreach o,$(OBJ),$(BIN)/$(o)) -lm -o $@
|
|
LD_COMMAND_SILENT=" LD $@"
|
|
$(PROG).elf: $(OBJ)
|
|
@$(if $(QUIET), ,echo $(LD_COMMAND$(VERBOSE)) )
|
|
@$(LD_COMMAND)
|
|
|
|
HEX_COMMAND=$(OBJCOPY) $< -O ihex $@
|
|
HEX_COMMAND_SILENT=" COPY $@"
|
|
$(PROG).hex: $(PROG).elf
|
|
@$(if $(QUIET), ,echo $(HEX_COMMAND$(VERBOSE)) )
|
|
@$(HEX_COMMAND)
|
|
|
|
BIN_COMMAND=$(OBJCOPY) $< -O binary --pad-to 0 $@
|
|
BIN_COMMAND_SILENT=" COPY $@"
|
|
$(PROG).bin: $(PROG).elf
|
|
@$(if $(QUIET), ,echo $(BIN_COMMAND$(VERBOSE)) )
|
|
@$(BIN_COMMAND)
|
|
|
|
AS_COMMAND=$(AS) $(ASFLAGS) $< -o $(BIN)/$@
|
|
AS_COMMAND_SILENT=" AS $@"
|
|
.s.o:
|
|
@$(if $(QUIET), ,echo $(AS_COMMAND$(VERBOSE)) )
|
|
@$(AS_COMMAND)
|
|
|
|
CLEAN_O_COMMAND=rm -f $(foreach o,$(OBJ),$(BIN)/$(o))
|
|
CLEAN_O_COMMAND_SILENT=" CLEAN_O"
|
|
clean_o: clean_version
|
|
@$(if $(QUIET), ,echo $(CLEAN_O_COMMAND$(VERBOSE)) )
|
|
@$(CLEAN_O_COMMAND)
|
|
|
|
CLEAN_COMMAND=rm -f $(PROG).elf $(PROG).hex $(PROG).bin $(PROG).map $(BIN)/dep/*.d
|
|
CLEAN_COMMAND_SILENT=" CLEAN"
|
|
clean: clean_o
|
|
@$(if $(QUIET), ,echo $(CLEAN_COMMAND$(VERBOSE)) )
|
|
@$(CLEAN_COMMAND)
|
|
|
|
MRPROPER_COMMAND=rm -f *~ hal/src/*~ hal/interface/*~ tasks/src/*~ tasks/inc/*~ utils/src/*~ utils/inc/*~ scripts/*~; rm -rf bin/dep ;rmdir bin
|
|
MRPROPER_COMMAND_SILENT=" MRPROPER"
|
|
mrproper: clean
|
|
@$(if $(QUIET), ,echo $(MRPROPER_COMMAND$(VERBOSE)) )
|
|
@$(MRPROPER_COMMAND)
|
|
|
|
|