IonizationChamber/software/Firmware/makefile

146 wiersze
5.0 KiB
Makefile
Czysty Zwykły widok Historia

2019-06-15 15:05:56 +00:00
################## SETUP COMPILER ##################
CC = sdcc
LD = sdld
AR = sdar
AS = sdasstm8
OBJCOPY = sdobjcopy
SIZE = size
MAKE = make
TARGET = main
2019-08-04 09:40:14 +00:00
STDLIB = STM8S_StdPeriph_Lib
2019-06-15 15:05:56 +00:00
INCLUDEDIR = $(STDLIB)/inc Inc
LIBSRCDIR = $(STDLIB)/src
SRCS = Src
MCU = STM8S003
2019-06-15 15:05:56 +00:00
COMPILER = __SDCC__
2019-07-06 14:46:54 +00:00
DEFINES = -D$(COMPILER) -D$(MCU) -DUSE_STDPERIPH_DRIVER
#-DSTM8S003
2019-06-15 15:05:56 +00:00
2019-07-02 17:07:41 +00:00
#CFLAGS = -mstm8 --std-c99 $(DEFINES)
2019-07-06 10:50:52 +00:00
CFLAGS = -mstm8 $(DEFINES) --opt-code-size
2019-06-30 15:07:31 +00:00
LDFLAGS = $(addprefix -I ,$(INCLUDEDIR))
2019-06-15 15:05:56 +00:00
BUILD_DIR = Build
IHX = $(BUILD_DIR)/$(TARGET).ihx
################### BUILD PROCESS ###################
.PHONY: all build clean flash
2019-08-05 14:57:09 +00:00
all: build flash
2019-06-15 15:05:56 +00:00
2019-06-29 16:37:28 +00:00
make_build_dir:
2019-08-05 14:57:09 +00:00
mkdir $(BUILD_DIR)
2019-06-29 16:37:28 +00:00
build: $(IHX)
2019-06-15 15:05:56 +00:00
$(BUILD_DIR)/stm8s_gpio.rel:
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(STDLIB)/src/stm8s_gpio.rel $(STDLIB)/src/stm8s_gpio.c
2019-07-06 10:50:52 +00:00
$(BUILD_DIR)/stm8s_clk.rel:
2019-07-02 17:07:41 +00:00
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(STDLIB)/src/stm8s_clk.rel $(STDLIB)/src/stm8s_clk.c
2019-07-06 10:50:52 +00:00
$(BUILD_DIR)/stm8s_uart1.rel:
2019-07-02 17:07:41 +00:00
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(STDLIB)/src/stm8s_uart1.rel $(STDLIB)/src/stm8s_uart1.c
2019-07-06 10:50:52 +00:00
$(BUILD_DIR)/stm8s_i2c.rel:
2019-06-15 15:05:56 +00:00
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(STDLIB)/src/stm8s_i2c.rel $(STDLIB)/src/stm8s_i2c.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ -o Build/ "Src/stm8s_it.rel" "Src/stm8s_it.c"
2019-07-04 17:25:33 +00:00
$(BUILD_DIR)/stm8s_tim1.rel:
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(STDLIB)/src/stm8s_tim1.rel $(STDLIB)/src/stm8s_tim1.c
2019-07-06 10:50:52 +00:00
2019-07-04 17:25:33 +00:00
2019-07-06 14:46:54 +00:00
$(BUILD_DIR)/stm8s_it.rel: $(SRCS)/stm8s_it.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/stm8s_it.rel $(SRCS)/stm8s_it.c
2019-07-03 17:24:45 +00:00
$(BUILD_DIR)/ClockConfigurator.rel: $(SRCS)/ClockConfigurator.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/ClockConfigurator.rel $(SRCS)/ClockConfigurator.c
2019-07-06 14:46:54 +00:00
$(BUILD_DIR)/TimerConfigurator.rel: $(SRCS)/TimerConfigurator.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/TimerConfigurator.rel $(SRCS)/TimerConfigurator.c
2019-07-04 17:25:33 +00:00
2019-07-06 15:07:17 +00:00
$(BUILD_DIR)/VoltageSensorActualValue.rel: $(SRCS)/VoltageSensorActualValue.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/VoltageSensorActualValue.rel $(SRCS)/VoltageSensorActualValue.c
$(BUILD_DIR)/VoltageSensorPeakValue.rel: $(SRCS)/VoltageSensorPeakValue.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/VoltageSensorPeakValue.rel $(SRCS)/VoltageSensorPeakValue.c
2019-06-15 15:05:56 +00:00
2019-07-03 16:51:36 +00:00
$(BUILD_DIR)/PulseCounter.rel: $(SRCS)/PulseCounter.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/PulseCounter.rel $(SRCS)/PulseCounter.c
2019-06-15 15:05:56 +00:00
2019-07-03 16:51:36 +00:00
$(BUILD_DIR)/UserInterface.rel: $(SRCS)/UserInterface.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/UserInterface.rel $(SRCS)/UserInterface.c
2019-07-03 16:51:36 +00:00
$(BUILD_DIR)/Logger.rel: $(SRCS)/Logger.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/Logger.rel $(SRCS)/Logger.c
$(BUILD_DIR)/MeasurementCollector.rel: $(SRCS)/MeasurementCollector.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/MeasurementCollector.rel $(SRCS)/MeasurementCollector.c
2019-08-05 14:57:09 +00:00
$(BUILD_DIR)/MeassurementFrame.rel: $(SRCS)/MeassurementFrame.c
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/MeassurementFrame.rel $(SRCS)/MeassurementFrame.c
2019-08-05 14:57:09 +00:00
$(BUILD_DIR)/ApplicationBuilder.rel: $(SRCS)/ApplicationBuilder.c $(BUILD_DIR)/VoltageSensorActualValue.rel $(BUILD_DIR)/PulseCounter.rel $(BUILD_DIR)/Logger.rel $(BUILD_DIR)/UserInterface.rel $(BUILD_DIR)/stm8s_uart1.rel $(BUILD_DIR)/TimerConfigurator.rel $(BUILD_DIR)/stm8s_i2c.rel $(BUILD_DIR)/MeasurementCollector.rel $(BUILD_DIR)/MeassurementFrame.rel
2019-06-15 15:05:56 +00:00
$(CC) -c $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $(SRCS)/ApplicationBuilder.rel $(SRCS)/ApplicationBuilder.c
2019-07-06 10:50:52 +00:00
$(IHX): $(SRCS)/$(TARGET).c \
$(BUILD_DIR)/ApplicationBuilder.rel \
$(BUILD_DIR)/stm8s_gpio.rel \
$(BUILD_DIR)/stm8s_i2c.rel \
$(BUILD_DIR)/stm8s_uart1.rel \
$(BUILD_DIR)/stm8s_clk.rel \
$(BUILD_DIR)/ClockConfigurator.rel \
2019-07-06 14:46:54 +00:00
$(BUILD_DIR)/stm8s_tim1.rel \
2019-07-06 15:07:17 +00:00
$(BUILD_DIR)/stm8s_it.rel \
$(BUILD_DIR)/Logger.rel \
$(BUILD_DIR)/VoltageSensorPeakValue.rel \
2019-08-05 14:57:09 +00:00
$(BUILD_DIR)/MeasurementCollector.rel \
$(BUILD_DIR)/MeassurementFrame.rel
2019-07-06 10:50:52 +00:00
$(CC) $(CFLAGS) $(LDFLAGS) -o $(BUILD_DIR)/ $< \
$(BUILD_DIR)/stm8s_gpio.rel \
$(BUILD_DIR)/stm8s_it.rel \
2019-07-06 15:07:17 +00:00
$(BUILD_DIR)/VoltageSensorActualValue.rel \
2019-07-06 10:50:52 +00:00
$(BUILD_DIR)/ApplicationBuilder.rel \
$(BUILD_DIR)/PulseCounter.rel \
$(BUILD_DIR)/Logger.rel \
$(BUILD_DIR)/UserInterface.rel \
$(BUILD_DIR)/stm8s_uart1.rel \
$(BUILD_DIR)/stm8s_clk.rel \
$(BUILD_DIR)/stm8s_i2c.rel \
$(BUILD_DIR)/ClockConfigurator.rel \
2019-07-06 14:46:54 +00:00
$(BUILD_DIR)/TimerConfigurator.rel \
2019-07-06 15:07:17 +00:00
$(BUILD_DIR)/stm8s_tim1.rel \
$(BUILD_DIR)/VoltageSensorPeakValue.rel \
2019-08-05 14:57:09 +00:00
$(BUILD_DIR)/MeasurementCollector.rel \
$(BUILD_DIR)/MeassurementFrame.rel
2019-06-15 15:05:56 +00:00
$(SIZE) $@
clean:
rm -rf $(BUILD_DIR)/*
flash: $(IHX)
2019-07-13 09:55:06 +00:00
stm8flash -c stlink -p stm8s003f3 -w $<
2019-06-15 15:05:56 +00:00
2019-07-20 09:18:17 +00:00
doc:
2019-07-21 11:56:58 +00:00
doxygen doxygen.cfg
formatting:
uncrustify -c uncrustify.cfg --no-backup $(SRCS)/*.c
uncrustify -c uncrustify.cfg --no-backup Inc/*.h