-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
36 lines (27 loc) · 1.07 KB
/
Makefile
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
# Simppeli makefile
# C-kääntäjä ja sen vaatimat vakiargumentit (suorittimen tyyppi ymv)
COMP=arm-none-eabi-gcc
COMPFLAGS=-c -x c -static -mthumb -g -mcpu=cortex-m0plus -MD -specs=nosys.specs -nostartfiles
# Linkkeri ja linkkerin vakiargumentit
LINKER=arm-none-eabi-ld
LINKERFLAGS=-T linker.ld
# Kopiointi toiseenkin kansioon, binääri kaveriksi
BINCOPY=arm-none-eabi-objcopy
BINFLAGS=-g -O binary
KOHDEKANSIO=/home/taira/Elektroniikka/testi
all: build build/ulostulo.bin
# Build-kansion luonti jos uupuu
build:
mkdir build
# ulostulo.bin tuotto tarvitsee build/ulostulo.elf, luodaan kopiointiohjelmalla
build/ulostulo.bin: build/ulostulo.elf
$(BINCOPY) $(BINFLAGS) build/ulostulo.elf build/ulostulo.bin
# Linkkaa .o-tiedostot linkkeriskriptillä
build/ulostulo.elf: build/init.o build/main.o
$(LINKER) $(LINKERFLAGS) -o build/ulostulo.elf build/init.o build/main.o
# Käännä main.c main.o:ksi
build/main.o: src/main.c
$(COMP) $(COMPFLAGS) -o build/main.o src/main.c
# Käännä init.c init.o:ksi
build/init.o: src/init.c
$(COMP) $(COMPFLAGS) -o build/init.o src/init.c