-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
47 lines (33 loc) · 1016 Bytes
/
Copy pathMakefile
File metadata and controls
47 lines (33 loc) · 1016 Bytes
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
CC = g++
CFLAGS = -Wall -pedantic -Ofast -std=c++11
LDLIBS = -lm -lncurses
SRCS := $(wildcard *.cpp)
SRCS += $(wildcard graphics/*.cpp)
SRCS += $(wildcard data/*.cpp)
OBJS := $(SRCS:%.cpp=%.o)
HEADERS := $(wildcard *.h)
.PHONY = clean run clean-log trim-log
run: main
./main 2> run.err.log
main: ${OBJS}
${CC} -o main main.o state.o vector.o graphics/graphics.o data/vector3.o graphics/screenState.o ${LDLIBS}
tests: ${OBJS}
${CC} -o tests tests.o state.o vector.o graphics/graphics.o data/vector3.o ${LDLIBS}
%.o: %.cpp ${HEADERS}
${CC} -c ${CFLAGS} $< -o $@
program.o: program.c
gcc -c program.c -o program.o
program: program.o
gcc -o program program.o -lm
graphics/%.o: graphics/%.cpp ${HEADERS}
${CC} -c ${CFLAGS} $< -o $@
data/%.o: data/%.cpp ${HEADERS}
${CC} -c ${CFLAGS} $< -o $@
clean:
rm -f *.o graphics/*.o data/*.o main
clean-log:
rm -f *.log
trim-log:
rm runTrimmed.log
awk "NR % 10 == 0 {print}" run.log > runTrimmed.log
@echo runTrimmed.log has $(wc -l runTrimmed.log) lines