aboutsummaryrefslogtreecommitdiff
path: root/lib/stm32/f1/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'lib/stm32/f1/Makefile')
-rw-r--r--lib/stm32/f1/Makefile61
1 files changed, 61 insertions, 0 deletions
diff --git a/lib/stm32/f1/Makefile b/lib/stm32/f1/Makefile
new file mode 100644
index 0000000..bd9fca2
--- /dev/null
+++ b/lib/stm32/f1/Makefile
@@ -0,0 +1,61 @@
+##
+## This file is part of the libopencm3 project.
+##
+## Copyright (C) 2009 Uwe Hermann <uwe@hermann-uwe.de>
+##
+## This program is free software: you can redistribute it and/or modify
+## it under the terms of the GNU General Public License as published by
+## the Free Software Foundation, either version 3 of the License, or
+## (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful,
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+## GNU General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program. If not, see <http://www.gnu.org/licenses/>.
+##
+
+LIBNAME = libopencm3_stm32f1
+
+PREFIX ?= arm-none-eabi
+#PREFIX ?= arm-elf
+CC = $(PREFIX)-gcc
+AR = $(PREFIX)-ar
+CFLAGS = -Os -g -Wall -Wextra -I../../include -fno-common \
+ -mcpu=cortex-m3 -mthumb -Wstrict-prototypes \
+ -ffunction-sections -fdata-sections -MD -DSTM32F1
+# ARFLAGS = rcsv
+ARFLAGS = rcs
+OBJS = vector.o rcc.o gpio.o usart.o adc.o spi.o flash.o nvic.o \
+ rtc.o i2c.o dma.o systick.o exti.o scb.o ethernet.o \
+ usb_f103.o usb.o usb_control.o usb_standard.o can.o \
+ timer.o usb_f107.o
+
+VPATH += ../usb:../stm32_common
+
+# Be silent per default, but 'make V=1' will show all compiler calls.
+ifneq ($(V),1)
+Q := @
+endif
+
+all: $(LIBNAME).a
+
+$(LIBNAME).a: $(OBJS)
+ @printf " AR $(subst $(shell pwd)/,,$(@))\n"
+ $(Q)$(AR) $(ARFLAGS) $@ $^
+
+%.o: %.c
+ @printf " CC $(subst $(shell pwd)/,,$(@))\n"
+ $(Q)$(CC) $(CFLAGS) -o $@ -c $<
+
+clean:
+ @printf " CLEAN lib/stm32f1\n"
+ $(Q)rm -f *.o *.d
+ $(Q)rm -f $(LIBNAME).a
+
+.PHONY: clean
+
+-include $(OBJS:.o=.d)
+