forked from tenbaht/sduino
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile.classic
More file actions
55 lines (40 loc) · 1.32 KB
/
Makefile.classic
File metadata and controls
55 lines (40 loc) · 1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
BASENAME=$(shell basename $$(pwd))
EXECUTABLE=$(BASENAME).ihx
#SDCCBASE=/usr/local
SDCCBASE=/opt/sdcc
BINDIR=$(SDCCBASE)/bin
CC=$(BINDIR)/sdcc
LD=$(BINDIR)/sdld
LIBBASE=../../sduino/stm8/STM8S_StdPeriph_Driver
SDUINO=../../sduino
CFLAGS= --debug -mstm8 -DF_CPU=16000000L -DSTM8S103 -DARDUINO=180 \
-I. -I$(SDUINO) \
-I$(SDUINO)/hardware/sduino/stm8/libraries/I2C \
-I$(SDUINO)/hardware/sduino/stm8/libraries/ssd1306 \
-I$(LIBBASE)/inc -I/usr/share/sdcc/include/
# -DSUPPORT_ALTERNATE_MAPPINGS
LDFLAGS=-L$(LIBBASE)/lib -L/opt/sdcc/share/sdcc/lib/stm8 -lSTM8S103
OBJECTS=$(BASENAME).rel
#SDLIBS=I2C
SDOBJECTS=main.rel wiring.rel wiring_digital.rel
SDLIBOBJECTS=I2C/I2C.rel ssd1306/ssd1306.rel
.PHONY: all clean flash
#all: $(OBJECTS)
$(EXECUTABLE): $(OBJECTS) $(SDOBJECTS) $(SDLIBOBJECTS)
#test.rel wiring_digital.rel
$(CC) $(CFLAGS) $(LDFLAGS) $^ -o $@
$(OBJECTS) : %.rel : %.c
$(CC) -c $(CFLAGS) $^ -o $@
$(SDOBJECTS) : %.rel : $(SDUINO)/%.c
$(CC) -c $(CFLAGS) $^ -o $@
$(SDLIBOBJECTS) : %.rel : $(SDUINO)/hardware/sduino/stm8/libraries/%.c
mkdir -p $(dir $@)
$(CC) -c $(CFLAGS) $^ -o $@
flash: $(EXECUTABLE)
stm8flash -cstlinkv2 -pstm8s103?3 -w $^
readopt:
stm8flash -c stlinkv2 -p stm8s103?3 -s opt -r opt.bin
clean:
rm -f *.lib *.rst *.rel *.lst *.ihx *.sym *.asm *.lk *.map \
*.cdb *.adb *~ *.bak
rm -f $(EXECUTABLE)