aboutsummaryrefslogtreecommitdiff
path: root/Makefile
blob: 89c22fafaebf0430885e5401c115e8685cd50a29 (plain)
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
IDIR=include
DEFINES=-DDETERMINISTIC
CFLAGS=-O3 -Wall -Wextra -Wpedantic -std=c99 -D_DEFAULT_SOURCE $(DEFINES) -I$(IDIR)

CTAK=include/tak.c
CTAK_OBJS=$(CTAK:.c=.o)
SRCS=$(filter-out include/lcdlib.c,$(wildcard include/*.c))
OBJS=$(SRCS:.c=.o)

BUILDROOT_DIR=buildroot-2020.11.1
CROSS_CC=$(BUILDROOT_DIR)/output/host/bin/arm-linux-cc
CROSS_STRIP=$(BUILDROOT_DIR)/output/host/bin/arm-linux-strip

.DEFAULT_GOAL=native

%.o: %.c
	$(CC) -c $< -o $@ $(CFLAGS)

ctaklm: src/ctaklm.o $(OBJS)
	$(CC) $(CFLAGS) src/ctaklm.o $(OBJS) -o ctaklm

pptdb: src/pptdb.o $(CTAK_OBJS)
	$(CC) $(CFLAGS) src/pptdb.o $(CTAK_OBJS) -o pptdb

tei: src/tei.o $(OBJS)
	$(CC) $(CFLAGS) src/tei.o $(OBJS) -o tei

clean:
	rm -f ctaklm ct1986 pptdb tei
	rm -f src/*.o include/*.o

native: clean ctaklm pptdb tei

$(CROSS_CC):
	./resources/do_buildroot.sh $(BUILDROOT_DIR)

ct1986: CC=$(CROSS_CC)
ct1986: STRIP=$(CROSS_STRIP)
ct1986: $(CROSS_CC) clean src/ct1986.o include/lcdlib.o $(OBJS)
	$(CC) $(CFLAGS) src/ct1986.o $(OBJS) include/lcdlib.o -o ct1986 -lcurses
	$(STRIP) ct1986

pi: CC=$(CROSS_CC)
pi: STRIP=$(CROSS_STRIP)
pi: $(CROSS_CC) ct1986 ctaklm
	mkdir -p $(BUILDROOT_DIR)/board/raspberrypi0/rootfs_overlay/usr/bin/
	cp ct1986 ctaklm $(BUILDROOT_DIR)/board/raspberrypi0/rootfs_overlay/usr/bin/
	cp resources/ash-profile $(BUILDROOT_DIR)/board/raspberrypi0/rootfs_overlay/.profile
	make -C $(BUILDROOT_DIR)
	$(info Image ready in $(BUILDROOT_DIR)/output/images/sdcard.img)