summary refs log tree commit diff
path: root/Makefile
blob: 787914da752520417bec2cbfb4c1bb619f2c9353 (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
EXE = wdoc
RUNARGS =

CFLAGS = -std=c17 -Wall -Wextra -Wpedantic -Os ${CFLAGS_${DEBUG}}
LDFLAGS = ${LDFLAGS_${DEBUG}}
PREFIX = ${HOME}/.local
BINDIR = ${PREFIX}/bin
LDLIBS =

DEBUG = 0
GDB != which gf2 2> /dev/null || which gdb

CFLAGS_1 = -g -fsanitize=undefined
LDFLAGS_1 = -g -fsanitize=undefined
LDFLAGS_0 = -s

OBJ != find -type f -name '*.c' | sed 's/\.c$$/.o/'

.PHONY: run all clean install

all: ${EXE}
run: ${EXE}
	./${EXE} ${RUNARGS}
debug: ${EXE}
	${GDB} -ex start --args ./${EXE} ${RUNARGS}

clean:
	rm -fv ${EXE} ${OBJ}

install: ${EXE}
	mv ${EXE} ${BINDIR}

uninstall:
	rm ${PREFIX}/${BIN}/${EXE}

${EXE}: ${OBJ}
	${CC} ${LDFLAGS} ${OBJ} -o ${EXE} ${LDLIBS}