testing igloo new function
parent
34548e9ed3
commit
ee9d80a80b
@ -0,0 +1,166 @@
|
|||||||
|
# Generated Variables
|
||||||
|
PROJECT_NAME=testdir
|
||||||
|
CC=arm-none-eabi-gcc
|
||||||
|
CCX=arm-none-eabi-g++
|
||||||
|
OBJCOPY=arm-none-eabi-objcopy
|
||||||
|
OBJDUMP=arm-none-eabi-objdump
|
||||||
|
SIZE=arm-none-eabi-size
|
||||||
|
GDB=arm-none-eabi-gdb
|
||||||
|
AS=arm-none-eabi-as
|
||||||
|
|
||||||
|
MCPU=cortex-m0plus
|
||||||
|
MCU=__SAMD21J18A__
|
||||||
|
|
||||||
|
LD_PATH=../ld
|
||||||
|
LD_SCRIPT=$(LD_PATH)/flash.ld
|
||||||
|
|
||||||
|
# Generated Flags
|
||||||
|
CFLAGS=-x c \
|
||||||
|
-DDEBUG \
|
||||||
|
-Os \
|
||||||
|
-ffunction-sections \
|
||||||
|
-mlong-calls \
|
||||||
|
-g3 \
|
||||||
|
-Wall \
|
||||||
|
-std=gnu99 \
|
||||||
|
-D$(MCU) \
|
||||||
|
-mcpu=$(MCPU) \
|
||||||
|
$(DIR_INCLUDES) \
|
||||||
|
-MD -MP \
|
||||||
|
-MF$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||||
|
-MT$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||||
|
-MT$(QUOTE)$(@:%.o=%.o)$(QUOTE)
|
||||||
|
|
||||||
|
ELF_FLAGS=-Wl,--start-group -l m -Wl,--end-group -mthumb \
|
||||||
|
-Wl,-Map=$(QUOTE)$(PROJECT_NAME).map$(QUOTE) --specs=nano.specs -Wl,--gc-sections -mcpu=$(MCPU) \
|
||||||
|
-T$(QUOTE)$(LD_SCRIPT)$(QUOTE) \
|
||||||
|
-L$(QUOTE)$(LD_PATH)$(QUOTE)
|
||||||
|
|
||||||
|
HEX_FLAGS=-R .eeprom \
|
||||||
|
-R .fuse \
|
||||||
|
-R .lock \
|
||||||
|
-R .signature
|
||||||
|
|
||||||
|
EEP_FLAGS=-j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma \
|
||||||
|
.eeprom=0 --no-change-warnings
|
||||||
|
|
||||||
|
ifdef SystemRoot
|
||||||
|
SHELL = cmd.exe
|
||||||
|
MK_DIR = mkdir
|
||||||
|
else
|
||||||
|
ifeq ($(shell uname), Linux)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), CYGWIN)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), MINGW32)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), MINGW64)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), DARWIN)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# List the subdirectories for creating object files
|
||||||
|
SUB_DIRS=
|
||||||
|
# List the object files
|
||||||
|
|
||||||
|
OBJS_AS_ARGS += \
|
||||||
|
|
||||||
|
# List the directories containing header files
|
||||||
|
DIR_INCLUDES += \
|
||||||
|
|
||||||
|
# List the dependency files
|
||||||
|
DEPS := $(OBJS:%.o=%.d)
|
||||||
|
|
||||||
|
DEPS_AS_ARGS += \
|
||||||
|
|
||||||
|
vpath %.c ../
|
||||||
|
vpath %.s ../
|
||||||
|
vpath %.S ../
|
||||||
|
# All Target
|
||||||
|
all: $(SUB_DIRS) $(PROJECT_NAME).elf \
|
||||||
|
$(PROJECT_NAME).bin \
|
||||||
|
$(PROJECT_NAME).hex \
|
||||||
|
$(PROJECT_NAME).eep \
|
||||||
|
$(PROJECT_NAME).lss
|
||||||
|
|
||||||
|
# Linker target
|
||||||
|
# Make ELF
|
||||||
|
$(PROJECT_NAME).elf: $(OBJS)
|
||||||
|
@echo Building target: $@
|
||||||
|
@echo Invoking: ARM/GNU Linker
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) -o $@ $(OBJS_AS_ARGS) $(ELF_FLAGS)
|
||||||
|
|
||||||
|
@echo Finished building target: $@
|
||||||
|
$(QUOTE)$(SIZE)$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make BIN
|
||||||
|
$(PROJECT_NAME).bin: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) -O binary $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make HEX
|
||||||
|
$(PROJECT_NAME).hex: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) -O ihex $(HEX_FLAGS) $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make EEP
|
||||||
|
$(PROJECT_NAME).eep: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) $(EEP_FLAGS) -O binary $(QUOTE)$<$(QUOTE) \
|
||||||
|
$(QUOTE)$@$(QUOTE) || exit 0
|
||||||
|
|
||||||
|
# Make LSS
|
||||||
|
$(PROJECT_NAME).lss: $(PROJECT_NAME).elf
|
||||||
|
$(QUOTE)$(OBJDUMP)$(QUOTE) -h -S $(QUOTE)$<$(QUOTE)
|
||||||
|
|
||||||
|
|
||||||
|
# Compiler targets
|
||||||
|
%.o: %.c
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU C Compiler
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
%.o: %.s
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU Assembler
|
||||||
|
$(QUOTE)$(AS)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
%.o: %.S
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU Preprocessing Assembler
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
# Detect changes in the dependent files and recompile the respective object files.
|
||||||
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
|
ifneq ($(strip $(DEPS)),)
|
||||||
|
-include $(DEPS)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(SUB_DIRS):
|
||||||
|
$(MK_DIR) "$@"
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f $(OBJS_AS_ARGS)
|
||||||
|
rm -f $(OUTPUT_FILE_PATH)
|
||||||
|
rm -f $(DEPS_AS_ARGS)
|
||||||
|
rm -f $(OUTPUT_FILE_NAME).a $(OUTPUT_FILE_NAME).hex $(OUTPUT_FILE_NAME).bin \
|
||||||
|
$(OUTPUT_FILE_NAME).lss $(OUTPUT_FILE_NAME).eep $(OUTPUT_FILE_NAME).map \
|
||||||
|
$(OUTPUT_FILE_NAME).srec
|
||||||
|
|
||||||
|
debug: $(OUTPUT_FILE_NAME).elf
|
||||||
|
$(QUOTE)arm-none-eabi-gdb$(QUOTE) -iex $(QUOTE)target extended-remote localhost:3333$(QUOTE) $(OUTPUT_FILE_NAME).elf
|
||||||
|
QUOTE := "
|
@ -0,0 +1,166 @@
|
|||||||
|
# Generated Variables
|
||||||
|
PROJECT_NAME=testdir
|
||||||
|
CC=arm-none-eabi-gcc
|
||||||
|
CCX=arm-none-eabi-g++
|
||||||
|
OBJCOPY=arm-none-eabi-objcopy
|
||||||
|
OBJDUMP=arm-none-eabi-objdump
|
||||||
|
SIZE=arm-none-eabi-size
|
||||||
|
GDB=arm-none-eabi-gdb
|
||||||
|
AS=arm-none-eabi-as
|
||||||
|
|
||||||
|
MCPU=cortex-m0plus
|
||||||
|
MCU=__SAMD21J18A__
|
||||||
|
|
||||||
|
LD_PATH=../ld
|
||||||
|
LD_SCRIPT=$(LD_PATH)/flash.ld
|
||||||
|
|
||||||
|
# Generated Flags
|
||||||
|
CFLAGS=-x c \
|
||||||
|
-DDEBUG \
|
||||||
|
-Os \
|
||||||
|
-ffunction-sections \
|
||||||
|
-mlong-calls \
|
||||||
|
-g3 \
|
||||||
|
-Wall \
|
||||||
|
-std=gnu99 \
|
||||||
|
-D$(MCU) \
|
||||||
|
-mcpu=$(MCPU) \
|
||||||
|
$(DIR_INCLUDES) \
|
||||||
|
-MD -MP \
|
||||||
|
-MF$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||||
|
-MT$(QUOTE)$(@:%.o=%.d)$(QUOTE) \
|
||||||
|
-MT$(QUOTE)$(@:%.o=%.o)$(QUOTE)
|
||||||
|
|
||||||
|
ELF_FLAGS=-Wl,--start-group -l m -Wl,--end-group -mthumb \
|
||||||
|
-Wl,-Map=$(QUOTE)$(PROJECT_NAME).map$(QUOTE) --specs=nano.specs -Wl,--gc-sections -mcpu=$(MCPU) \
|
||||||
|
-T$(QUOTE)$(LD_SCRIPT)$(QUOTE) \
|
||||||
|
-L$(QUOTE)$(LD_PATH)$(QUOTE)
|
||||||
|
|
||||||
|
HEX_FLAGS=-R .eeprom \
|
||||||
|
-R .fuse \
|
||||||
|
-R .lock \
|
||||||
|
-R .signature
|
||||||
|
|
||||||
|
EEP_FLAGS=-j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma \
|
||||||
|
.eeprom=0 --no-change-warnings
|
||||||
|
|
||||||
|
ifdef SystemRoot
|
||||||
|
SHELL = cmd.exe
|
||||||
|
MK_DIR = mkdir
|
||||||
|
else
|
||||||
|
ifeq ($(shell uname), Linux)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), CYGWIN)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), MINGW32)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), MINGW64)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq ($(shell uname | cut -d _ -f 1), DARWIN)
|
||||||
|
MK_DIR = mkdir -p
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
# List the subdirectories for creating object files
|
||||||
|
SUB_DIRS=
|
||||||
|
# List the object files
|
||||||
|
|
||||||
|
OBJS_AS_ARGS += \
|
||||||
|
|
||||||
|
# List the directories containing header files
|
||||||
|
DIR_INCLUDES += \
|
||||||
|
|
||||||
|
# List the dependency files
|
||||||
|
DEPS := $(OBJS:%.o=%.d)
|
||||||
|
|
||||||
|
DEPS_AS_ARGS += \
|
||||||
|
|
||||||
|
vpath %.c ../
|
||||||
|
vpath %.s ../
|
||||||
|
vpath %.S ../
|
||||||
|
# All Target
|
||||||
|
all: $(SUB_DIRS) $(PROJECT_NAME).elf \
|
||||||
|
$(PROJECT_NAME).bin \
|
||||||
|
$(PROJECT_NAME).hex \
|
||||||
|
$(PROJECT_NAME).eep \
|
||||||
|
$(PROJECT_NAME).lss
|
||||||
|
|
||||||
|
# Linker target
|
||||||
|
# Make ELF
|
||||||
|
$(PROJECT_NAME).elf: $(OBJS)
|
||||||
|
@echo Building target: $@
|
||||||
|
@echo Invoking: ARM/GNU Linker
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) -o $@ $(OBJS_AS_ARGS) $(ELF_FLAGS)
|
||||||
|
|
||||||
|
@echo Finished building target: $@
|
||||||
|
$(QUOTE)$(SIZE)$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make BIN
|
||||||
|
$(PROJECT_NAME).bin: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) -O binary $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make HEX
|
||||||
|
$(PROJECT_NAME).hex: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) -O ihex $(HEX_FLAGS) $(QUOTE)$<$(QUOTE) $(QUOTE)$@$(QUOTE)
|
||||||
|
|
||||||
|
# Make EEP
|
||||||
|
$(PROJECT_NAME).eep: $(PROJECT_NAME).elf
|
||||||
|
@echo Producing $@
|
||||||
|
$(QUOTE)$(OBJCOPY)$(QUOTE) $(EEP_FLAGS) -O binary $(QUOTE)$<$(QUOTE) \
|
||||||
|
$(QUOTE)$@$(QUOTE) || exit 0
|
||||||
|
|
||||||
|
# Make LSS
|
||||||
|
$(PROJECT_NAME).lss: $(PROJECT_NAME).elf
|
||||||
|
$(QUOTE)$(OBJDUMP)$(QUOTE) -h -S $(QUOTE)$<$(QUOTE)
|
||||||
|
|
||||||
|
|
||||||
|
# Compiler targets
|
||||||
|
%.o: %.c
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU C Compiler
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
%.o: %.s
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU Assembler
|
||||||
|
$(QUOTE)$(AS)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
%.o: %.S
|
||||||
|
@echo Building file: $<
|
||||||
|
@echo ARM/GNU Preprocessing Assembler
|
||||||
|
$(QUOTE)$(CC)$(QUOTE) $(CFLAGS) -o $(QUOTE)$@$(QUOTE) $(QUOTE)$<$(QUOTE)
|
||||||
|
@echo Finished building: $<
|
||||||
|
|
||||||
|
# Detect changes in the dependent files and recompile the respective object files.
|
||||||
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
|
ifneq ($(strip $(DEPS)),)
|
||||||
|
-include $(DEPS)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
$(SUB_DIRS):
|
||||||
|
$(MK_DIR) "$@"
|
||||||
|
|
||||||
|
clean:
|
||||||
|
rm -f $(OBJS_AS_ARGS)
|
||||||
|
rm -f $(OUTPUT_FILE_PATH)
|
||||||
|
rm -f $(DEPS_AS_ARGS)
|
||||||
|
rm -f $(OUTPUT_FILE_NAME).a $(OUTPUT_FILE_NAME).hex $(OUTPUT_FILE_NAME).bin \
|
||||||
|
$(OUTPUT_FILE_NAME).lss $(OUTPUT_FILE_NAME).eep $(OUTPUT_FILE_NAME).map \
|
||||||
|
$(OUTPUT_FILE_NAME).srec
|
||||||
|
|
||||||
|
debug: $(OUTPUT_FILE_NAME).elf
|
||||||
|
$(QUOTE)arm-none-eabi-gdb$(QUOTE) -iex $(QUOTE)target extended-remote localhost:3333$(QUOTE) $(OUTPUT_FILE_NAME).elf
|
||||||
|
QUOTE := "
|
@ -0,0 +1 @@
|
|||||||
|
/storage/Shared/Documents/Projects/ePenguin/ePenguin-Software-Framework/arch/arm/SAM_D2X/cfg
|
@ -0,0 +1 @@
|
|||||||
|
/storage/Shared/Documents/Projects/ePenguin/ePenguin-Software-Framework/arch/arm/SAM_D2X/hdi
|
@ -0,0 +1 @@
|
|||||||
|
/storage/Shared/Documents/Projects/ePenguin/ePenguin-Software-Framework/arch/arm/SAM_D2X/inc
|
@ -0,0 +1 @@
|
|||||||
|
/storage/Shared/Documents/Projects/ePenguin/ePenguin-Software-Framework/arch/arm/SAM_D2X/src
|
Loading…
Reference in New Issue