summaryrefslogtreecommitdiff
path: root/makefile
blob: 62e2684dc5bb6998df1daced754194444adb6bad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
CPP_ARGS = -std=c++20 -O2 -Wall -Wextra -Iinclude
GTKMM_CPP_ARGS = $(shell pkg-config --cflags gtkmm-4.0)
GTKMM_LD_ARGS = $(shell pkg-config --libs gtkmm-4.0)

default: bin/bench

clean:
	rm -r obj bin

bin/bench: obj/bench/main.o obj/bench/bench_window.o obj/bench/core_widget.o obj/lib94.o
	@mkdir -p $(dir $@)
	g++ ${CPP_ARGS} $^ ${GTKMM_LD_ARGS} -o $@

obj/lib94.o: obj/lib94/core.o obj/lib94/executors.o obj/lib94/warrior.o
	ld -r $^ -o $@

obj/bench/%.o: bench/%.cpp
	@mkdir -p $(dir $@)
	g++ -c ${CPP_ARGS} ${GTKMM_CPP_ARGS} $^ -o $@

obj/%.o: %.cpp
	@mkdir -p $(dir $@)
	g++ -c ${CPP_ARGS} $^ -o $@