Files @ 3dd364248179
Branch filter:

Location: therm/Makefile - annotation

Ethan Zonca
Add new CMSIS, fix makefile
287a302c9d20
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
555930ccae9f
3dd364248179
970a161634a0
970a161634a0
3dd364248179
970a161634a0
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
3dd364248179
970a161634a0
970a161634a0
970a161634a0
970a161634a0
4d88a377e1fe
5dc11468ff0b
5dc11468ff0b
970a161634a0
970a161634a0
555930ccae9f
970a161634a0
970a161634a0
970a161634a0
a3acc7c3a063
a3acc7c3a063
1c5909c633fa
109bc69daf49
49b0586d1fdf
49b0586d1fdf
91fbdc7bc1b8
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
555930ccae9f
970a161634a0
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
555930ccae9f
970a161634a0
970a161634a0
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
5dc11468ff0b
970a161634a0
970a161634a0
555930ccae9f
970a161634a0
970a161634a0
555930ccae9f
555930ccae9f
970a161634a0
970a161634a0
5bb33b7045ec
5bb33b7045ec
89dc4e02c836
5bb33b7045ec
5bb33b7045ec
5bb33b7045ec
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
676f49902c7d
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
970a161634a0
676f49902c7d
676f49902c7d
676f49902c7d
676f49902c7d
676f49902c7d
676f49902c7d
TARGET:=therm
TOOLCHAIN_PATH:=/usr/bin
TOOLCHAIN_PREFIX:=arm-none-eabi
OPTLVL:=3 # Optimization level, can be [0, 1, 2, 3, s].

#PROJECT_NAME:=$(notdir $(lastword $(CURDIR)))
TOP:=$(shell readlink -f "../..")
LIBDIR:=libraries

HAL_LIB:=$(LIBDIR)/STM32F0xx_HAL_Driver
USB_LIB:=$(LIBDIR)/STM32_USB_Device_Library

STARTUP:=$(STMLIB)/CMSIS/Device/ST/STM32F0xx/Source/Templates/gcc_ride7

LINKER_SCRIPT:=$(CURDIR)/stm32-flash.ld

# Local libs
INCLUDE=-I$(CURDIR)

# CMSIS
INCLUDE+=-I$(LIBDIR)/CMSIS/Include
INCLUDE+=-I$(LIBDIR)/CMSIS/Device/ST/STM32F0xx/Include

# USB
INCLUDE+=-I$(USB_LIB)/Class/CDC
INCLUDE+=-I$(USB_LIB)/Core

# HAL
INCLUDE+=-I$(HAL_LIB)/Inc


# vpath is used so object files are written to the current directory instead
# of the same directory as their source files
vpath %.c $(DISCOVERY) $(STD_PERIPH)/src \
          $(STMLIB)/USB \
          $(STMLIB)/STM32_USB-FS_Device_Library/Class/hid/src \
          $(STMLIB)/STM32_USB-FS_Device_Library/Core/src
vpath %.s $(STARTUP)

ASRC=startup_stm32f042.s

# Project Source Files
SRC=main.c
SRC+=stm32f0xx_it.c
SRC+=system_stm32f0xx.c
SRC+=ssd1306.c
SRC+=eeprom_min.c
SRC+=gpio.c
SRC+=spi.c
SRC+=stringhelpers.c

# Discovery Source Files
#SRC+=stm32f4_discovery_lis302dl.c
#SRC+=stm32f4_discovery.c
#SRC+=stm32f4_discovery_audio_codec.c

# Standard Peripheral Source Files
SRC+=stm32f0xx_syscfg.c
SRC+=misc.c
SRC+=stm32f0xx_adc.c
SRC+=stm32f0xx_dac.c
SRC+=stm32f0xx_dma.c
SRC+=stm32f0xx_exti.c
SRC+=stm32f0xx_flash.c
SRC+=stm32f0xx_gpio.c
SRC+=stm32f0xx_i2c.c
SRC+=stm32f0xx_rcc.c
SRC+=stm32f0xx_spi.c
SRC+=stm32f0xx_tim.c

# USB Source Files
SRC+=usb_core.c
SRC+=usb_init.c
SRC+=usb_int.c
SRC+=usb_mem.c
SRC+=usb_regs.c
SRC+=usb_sil.c
SRC+=hw_config.c
SRC+=usb_desc.c
SRC+=usb_endp.c
SRC+=usb_istr.c
SRC+=usb_prop.c
SRC+=usb_pwr.c

CDEFS=-DUSE_STDPERIPH_DRIVER
CDEFS+=-DSTM32F0XX
CDEFS+=-DMANGUSTA_DISCOVERY
#CDEFS+=-DUSE_USB_OTG_FS

# EMZ FIXME
CDEFS+=-DHSE_VALUE=8000000


#EMZ Optimized: 
MCUFLAGS=-mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections -mfloat-abi=soft

# Default:  MCUFLAGS=-mcpu=cortex-m3 -mthumb -ffunction-sections -fdata-sections

#MCUFLAGS=-mcpu=cortex-m4 -mthumb -mlittle-endian -mfpu=fpa -mfloat-abi=hard -mthumb-interwork
#MCUFLAGS=-mcpu=cortex-m4 -mfpu=vfpv4-sp-d16 -mfloat-abi=hard
COMMONFLAGS=-O$(OPTLVL) -g -Wall
CFLAGS=$(COMMONFLAGS) $(MCUFLAGS) $(INCLUDE) $(CDEFS)

LDLIBS=
LDFLAGS=$(COMMONFLAGS) -fno-exceptions -ffunction-sections -fdata-sections \
        -nostartfiles -Wl,--gc-sections,-T$(LINKER_SCRIPT)

#####
#####

OBJ = $(SRC:%.c=%.o) $(ASRC:%.s=%.o)

CC=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-gcc
LD=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-gcc
OBJCOPY=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-objcopy
AS=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-as
AR=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-ar
GDB=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-gdb
SIZE=$(TOOLCHAIN_PATH)/$(TOOLCHAIN_PREFIX)-size


all: $(OBJ)
	$(CC) -o $(TARGET).elf $(LDFLAGS) $(OBJ)	$(LDLIBS)
	$(OBJCOPY) -O ihex   $(TARGET).elf $(TARGET).hex
	$(OBJCOPY) -O binary $(TARGET).elf $(TARGET).bin

.PHONY: clean

clean:
	rm -f $(OBJ)
	rm -f $(TARGET).elf
	rm -f $(TARGET).hex
	rm -f $(TARGET).bin

# Display size
size: $(TARGET).elf
	@echo Invoking: ARM GNU Print Size
	$(SIZE) --format=berkeley $<
	@echo