blob: 3425a50676cb5ae175c128a41a969ac167a86b69 (
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
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
PREFIX ?= /usr/local
PROG ?= calculer
CFLAGS ?= -O2 -g
LDFLAGS ?=
LIBS ?=
CALCULER_VERSION := 1.0
__CFLAGS := -std=c99 \
-Wall \
-DCALCULER_VERSION=\"$(CALCULER_VERSION)\" \
-DCALCULER_PREFIX=\"$(PREFIX)\" \
$(shell pkg-config --cflags readline) \
$(shell pkg-config --cflags raylib)
__LDFLAGS :=
__LIBS := $(shell pkg-config --libs readline) \
$(shell pkg-config --libs raylib)
all: $(PROG) libcli.so libtui.so libray.so
$(PROG): src/calculer.o src/disp.o
$(CC) -o $@ $^ $(__LDFLAGS) $(__LIBS) $(LDFLAGS) $(LIBS)
src/calculer.o: src/calculer.c src/disp.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c $<
src/disp.o: src/disp.c src/disp.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c $<
libcli.so: src/cli.o src/input.o
$(CC) -shared -o $@ $^
libtui.so: src/calc_data.o src/tui.o src/input.o
$(CC) -shared -o $@ $^
libray.so: src/calc_data.o src/ray.o src/input.o
$(CC) -shared -o $@ $^
src/calc_data.o: src/calc_data.c src/calc_data.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $<
src/input.o: src/input.c src/input.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $<
src/cli.o: src/cli.c src/disp.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $<
src/tui.o: src/tui.c src/disp.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $<
src/ray.o: src/ray.c src/calc_data.h src/disp.h src/input.h
$(CC) $(__CFLAGS) $(CFLAGS) -o $@ -c -fpic $<
install: $(PROG)
mkdir -p $(PREFIX)/bin
install --mode=0755 $(PROG) $(PREFIX)/bin/
mkdir -p $(PREFIX)/lib/calculer
install --mode=0755 libcli.so libtui.so libray.so $(PREFIX)/lib/calculer/
uninstall:
rm -rf $(PREFIX)/bin/$(PROG) $(PREFIX)/lib/calculer
clean:
rm -rf $(PROG) *.so *.tar.gz src/*.o
dist:
git archive \
--output="calculer-$(CALCULER_VERSION).tar.gz" \
--prefix="calculer-$(CALCULER_VERSION)/" \
HEAD
.PHONY: all clean dist install uninstall
|