59 rader
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			59 rader
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
 | 
						|
 | 
						|
CXXFLAGS=-std=c++17 -O0 -g -no-pie -pipe -MMD -Wall -Wextra
 | 
						|
RELEASE_CXXFLAGS=-std=c++17 -O3 -pipe -MMD -Wall -Wextra
 | 
						|
LDFLAGS=-lsqlite3 -lpthread -lcrypto -lboost_regex -lstdc++fs
 | 
						|
 | 
						|
CXX=g++
 | 
						|
 | 
						|
 | 
						|
SOURCES=$(wildcard *.cpp)
 | 
						|
SOURCES+=$(wildcard gateway/*.cpp)
 | 
						|
SOURCES+=$(wildcard handlers/*.cpp)
 | 
						|
SOURCES+=$(wildcard database/*.cpp)
 | 
						|
SOURCES+=$(wildcard cache/*.cpp) 
 | 
						|
 | 
						|
HEADERS=$(wildcard *.h)
 | 
						|
HEADERS+=$(wildcard gateway/*.h)
 | 
						|
HEADERS+=$(wildcard handlers/*.h)
 | 
						|
HEADERS+=$(wildcard database/*.h)
 | 
						|
HEADERS+=$(wildcard cache/*.h) 
 | 
						|
 | 
						|
 | 
						|
OBJECTS=$(patsubst %.cpp, %.o, $(SOURCES))
 | 
						|
WIKIOBJECTS=$(filter-out test.o, $(OBJECTS))
 | 
						|
TESTOBJECTS=$(filter-out qswiki.o, $(OBJECTS))
 | 
						|
DEPENDS = ${WIKIOBJECTS:.o=.d}  
 | 
						|
-include ${DEPENDS} 
 | 
						|
 | 
						|
# Points to the root of Google Test, relative to where this file is.
 | 
						|
# Remember to tweak this if you move this file.
 | 
						|
GTEST_DIR = /home/data/SOURCES/gtest/googletest
 | 
						|
 | 
						|
GTESTS_TESTDIR = ./tests/
 | 
						|
 | 
						|
GTEST_CXXFLAGS=-std=c++17 -isystem $(GTEST_DIR)/include -I$(GTEST_DIR) -g -O0 -pipe -Wall -Wextra
 | 
						|
GTEST_LDFLAGS=-lsqlite3 -g -O0 -lpthread -lcrypto -lstdc++fs
 | 
						|
GTEST_OBJECTS=$(filter-out qswiki.o, $(WIKIOBJECTS))
 | 
						|
 | 
						|
.DEFAULT_GOAL := qswiki
 | 
						|
 | 
						|
release: CXXFLAGS=$(RELEASE_CXXFLAGS)
 | 
						|
release: qswiki
 | 
						|
qswiki: $(WIKIOBJECTS)
 | 
						|
	$(CXX) $(WIKIOBJECTS) ${LDFLAGS} -I database/hdr -o qswiki 
 | 
						|
 | 
						|
test: $(TESTOBJECTS)	
 | 
						|
	$(CXX) $(TESTOBJECTS) ${LDFLAGS} -o test
 | 
						|
	
 | 
						|
gtest: $(GTESTS_TESTDIR)/*.cpp $(GTEST_OBJECTS)
 | 
						|
	$(CXX) -o gtest $(GTESTS_TESTDIR)/*.cpp $(GTEST_OBJECTS) $(GTEST_CXXFLAGS) $(GTEST_DIR)/src/gtest_main.cc $(GTEST_DIR)/src/gtest-all.cc $(GTEST_LDFLAGS)
 | 
						|
	 
 | 
						|
%.o:%.cpp
 | 
						|
	$(CXX) ${CXXFLAGS} ${LDFLAGS} -I database/hdr -c -o $@ $<
 | 
						|
 | 
						|
clean:
 | 
						|
	rm -f $(OBJECTS) $(DEPENDS)
 | 
						|
 | 
						|
 
 |