X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=Makefile;h=e3131e39521cd7b80a2e42b582d7542ee732aa1b;hb=e6410538775681e2ec88521f05e530b79e8cbe7b;hp=12bf2e4156bb7c285f6c86a2ff41b99e3f994527;hpb=28e331e99235c616e8ccd27b7b5083bae47a1c1b;p=cassiopeia.git diff --git a/Makefile b/Makefile index 12bf2e4..e3131e3 100644 --- a/Makefile +++ b/Makefile @@ -15,7 +15,7 @@ ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) endif BIN="bin/cassiopeia" -LIBS=openssl collissiondetect +LIBS=openssl collisiondetect CC=libtool --mode=compile gcc CC_DEP=g++ @@ -32,7 +32,7 @@ else CFLAGS += -O2 endif -CFLAGS+=${ADDFLAGS} -Wall -Werror -Wextra -pedantic -std=c++11 -Ilib/openssl/include -Isrc +CFLAGS+=${ADDFLAGS} -Wall -Werror -Wextra -pedantic -std=c++1y -Ilib/openssl/include -Isrc CXXFLAGS=$(CFLAGS) LDFLAGS+=${ADDFLAGS} -L/usr/lib/i386-linux-gnu/ -lssl -lcrypto -ldl -Llib/openssl @@ -46,12 +46,14 @@ SRC_DIR=src OBJ_DIR=obj DEP_DIR=dep -FS_SRC=$(wildcard ${SRC_DIR}/*.cpp) $(wildcard ${SRC_DIR}/io/*.cpp) $(wildcard ${SRC_DIR}/crypto/*.cpp) $(wildcard ${SRC_DIR}/db/*.cpp) +FS_SRC=$(wildcard ${SRC_DIR}/*.cpp) $(wildcard ${SRC_DIR}/log/*.cpp) $(wildcard ${SRC_DIR}/io/*.cpp) $(wildcard ${SRC_DIR}/crypto/*.cpp) $(wildcard ${SRC_DIR}/db/*.cpp) FS_BIN=$(wildcard ${SRC_DIR}/app/*.cpp) FS_LIBS=$(wildcard lib/*/) FS_OBJ=$(FS_SRC:${SRC_DIR}/%.cpp=${OBJ_DIR}/%.lo) FS_DEP=$(FS_SRC:${SRC_DIR}/%.cpp=${DEP_DIR}/%.d) +LIB_OPENSSL=lib/openssl/libssl.a + .SUFFIXES: .c .cpp .d @@ -79,7 +81,7 @@ endif .PHONY: dist-clean dist-clean: clean ${MAKE} -C lib/openssl clean - ${MAKE} -C lib/collissiondetect clean + ${MAKE} -C lib/collisiondetect clean build: cassiopeia @@ -97,33 +99,36 @@ install: build libs: ${LIBS} .PHONY: openssl -openssl: +openssl lib/openssl/libssl.a lib/openssl/libcrypto.a: ${MAKE} -C lib openssl -.PHONY: collissiondetect -collissiondetect: - ${MAKE} -C lib/collissiondetect +.PHONY: collisiondetect +collisiondetect: + ${MAKE} -C lib collisiondetect .PHONY: coverage coverage: - find . -name "*.gcda" -exec rm {} + - ${MAKE} "DEB_BUILD_OPTIONS=coverage noopt" - find obj -name "*.gcda" -exec gcov -p {} + > gcov.log - + find . -name "*.gcda" -exec rm {} + &&\ + rm -rf coverage &&\ + rm -rf coverage.info coverage_stripped.info &&\ + ${MAKE} "DEB_BUILD_OPTIONS=coverage noopt" &&\ + lcov -c --directory obj --directory test/obj --output-file coverage.info &&\ + lcov -r coverage.info "/usr/**" -o coverage_stripped.info &&\ + genhtml -p $(shell pwd) coverage_stripped.info --output-directory coverage # -------- cassiopeia: bin/cassiopeia bin/cassiopeia-signer bin/cassiopeia: libs ${FS_OBJ} ${OBJ_DIR}/apps/client.lo - ${MKDIR} $(shell dirname $@) && ${LD} ${LDFLAGS} -lmysqlclient -o $@ ${FS_OBJ} ${OBJ_DIR}/apps/client.lo + ${MKDIR} $(shell dirname $@) && ${LD} ${LDFLAGS} -lmysqlclient -lpqxx -lpq -o $@ ${FS_OBJ} ${OBJ_DIR}/apps/client.lo bin/cassiopeia-signer: libs ${FS_OBJ} ${OBJ_DIR}/apps/signer.lo - ${MKDIR} $(shell dirname $@) && ${LD} ${LDFLAGS} -o $@ $(filter-out ${OBJ_DIR}/db/mysql.lo,${FS_OBJ}) ${OBJ_DIR}/apps/signer.lo + ${MKDIR} $(shell dirname $@) && ${LD} ${LDFLAGS} -o $@ $(filter-out ${OBJ_DIR}/db/psql.lo, $(filter-out ${OBJ_DIR}/db/mysql.lo,${FS_OBJ})) ${OBJ_DIR}/apps/signer.lo -${DEP_DIR}/%.d: ${SRC_DIR}/%.cpp +${DEP_DIR}/%.d: ${SRC_DIR}/%.cpp ${LIB_OPENSSL} ${MKDIR} $(shell dirname $@) && $(CXX_DEP) $(CXXFLAGS) -M -MF $@ $< -${DEP_DIR}/%.d: ${SRC_DIR}/%.c +${DEP_DIR}/%.d: ${SRC_DIR}/%.c ${LIB_OPENSSL} ${MKDIR} $(shell dirname $@) && $(CC) $(CXXFLAGS) -M -MF $@ $< ${OBJ_DIR}/%.lo ${OBJ_DIR}/%.o: ${SRC_DIR}/%.c ${DEP_DIR}/%.d