summaryrefslogtreecommitdiff
path: root/Makefile
blob: cb811a00d197ec863ada01b78d92d6b52f1a16dc (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
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
CXX=clang++
CXXFLAGS=-Iinclude -D_ATFILE_SOURCE -D_FORTIFY_SOURCE=0x2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_ISOC99_SOURCE -D_ISOC11_SOURCE -D_ISOC2X_SOURCE -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED -D__STDC_WANT_IEC_60559_BFP_EXT__ -D__STDC_WANT_IEC_60559_FUNCS_EXT__ -D__STDC_WANT_IEC_60559_TYPES_EXT__ -D__STDC_WANT_LIB_EXT2__=0x1
ifneq ($(DEBUG),1)
CXXFLAGS += -DNDEBUG
endif
CXXFLAGS += -std=c++20 -Wall -Wextra -Wpedantic
CXXFLAGS += -march=native -mtune=native -O3
LDFLAGS = -lfmt -lgmp -lmpfr -lpng -lpthread -lpugixml -lwebp
HDRS_CXX = \
	include/benoit/archstr.hh \
	include/benoit/arghandl.hh \
	include/benoit/crtcfg.hh \
	include/benoit/dat.hh \
	include/benoit/exit.hh \
	include/benoit/helpscrn.hh \
	include/benoit/kernelstr.hh \
	include/benoit/loadcfg.hh \
	include/benoit/log.hh \
	include/benoit/logfunc.hh \
	include/benoit/logfuncret.hh \
	include/benoit/main.hh \
	include/benoit/plotmandelbrot.hh \
	include/benoit/print.hh \
	include/benoit/t/arch.hh \
	include/benoit/t/dat.hh \
	include/benoit/t/imgfmt.hh \
	include/benoit/t/kernel.hh \
	include/benoit/t/pos.hh \
	include/benoit/t/thrddat.hh
SRCS_CXX = \
	src/benoit/archstr.cc \
	src/benoit/arghandl.cc \
	src/benoit/crtcfg.cc \
	src/benoit/dat.cc \
	src/benoit/exit.cc \
	src/benoit/helpscrn.cc \
	src/benoit/kernelstr.cc \
	src/benoit/loadcfg.cc \
	src/benoit/log.cc \
	src/benoit/logfunc.cc \
	src/benoit/logfuncret.cc \
	src/benoit/main.cc \
	src/benoit/plotmandelbrot.cc \
	src/benoit/print.cc \
	src/benoit/t/pos/pos.cc \
	src/main.cc
OBJS_CXX=$(SRCS_CXX:.cc=.o)
OBJS=$(OBJS_CXX)
benoit: $(OBJS)
	$(CXX) $(LDFLAGS) -o $@ $(OBJS)
$(OBJS_CXX): $(HDRS_CXX) $(SRCS_CXX)
.PHONY: clean
clean:
	rm $(OBJS)
.PHONY: purge
purge:
	rm benoit $(OBJS)