CROSS_COMPILE = arm-none-eabi- CC = $(CROSS_COMPILE)gcc LD = $(CROSS_COMPILE)gcc AR = $(CROSS_COMPILE)ar OBJCOPY = $(CROSS_COMPILE)objcopy OBJDUMP = $(CROSS_COMPILE)objdump OBJDIR_PREFIX = obj OBJDIR = $(OBJDIR_PREFIX)_$(BUILD)_$(LANG) SRCDIR = src/ ROOTDIR = ../ LIB_PREFIX = libPlatform LIBRARY_NAME = $(LIB_PREFIX)_$(BUILD)_$(LANG).a CCFLAGS = -c -O2 -Wall -Werror -g -fno-common -mcpu=cortex-m3 -mthumb $(LANGUAGE) $(PLATFORM) $(RELEASE_DEFINES) \ -Iinc \ -I$(ROOTDIR)/HAL/inc \ -I$(ROOTDIR)/hsb-mrts/inc \ -I$(ROOTDIR)/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/STM32F10x_StdPeriph_Driver/inc \ -I$(ROOTDIR)/FreeRTOS/Source/include \ -I$(ROOTDIR)/FreeRTOS/Source/portable/GCC/ARM_CM3 \ -I$(ROOTDIR)/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/DeviceSupport/ST/STM32F10x \ -I$(ROOTDIR)/STM32F10x_StdPeriph_Lib_V3.5.0/Libraries/CMSIS/CM3/CoreSupport ARFLAGS = rs OBJECTS = \ stm32f10x_it.o \ CathodeMCP.o \ gpio.o \ internalADC.o \ InternalFlash.o \ keypadMatrix.o \ oli_stm32_h107.o \ PCBA.o \ rtc.o \ spi.o \ spiDevice.o \ uart.o \ Version.o \ vpath %.o $(OBJDIR) vpath %.c \ $(SRCDIR) \ $(ROOTDIR)/hsb-mrts/src all: $(LIBRARY_NAME) $(LIBRARY_NAME): $(OBJDIR) $(OBJECTS) $(AR) $(ARFLAGS) $@ $(addprefix $(OBJDIR)/, $(OBJECTS)) %.o: %.c $(CC) $(CCFLAGS) $< -o $(OBJDIR)/$@ $(OBJDIR): mkdir -p $@ clean: rm -rf $(OBJDIR_PREFIX)* $(LIB_PREFIX)* .PHONY: all clean