summaryrefslogblamecommitdiff
path: root/Makefile
blob: cb811a00d197ec863ada01b78d92d6b52f1a16dc (plain) (tree)
1
2
3
4
5
6
7
8
9
           
                                                                                                                                                                                                                                                                                                                                                                


                    

                                               
                                                             
            



















                                          
            
                               
                                

                              
                            






                                  
                                      
                             
                                 
                   

                           

                                       
                                    

             


                  
                         
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)