]> git.stg.codes - stg.git/blob - tests/Makefile
Fix build on Darwin.
[stg.git] / tests / Makefile
1 INCS = -I . \
2        -I ../include \
3        -I ../stglibs/common.lib/include \
4        -I ../stglibs/conffiles.lib/include \
5        -I ../stglibs/logger.lib/include \
6        -I ../stglibs/scriptexecuter.lib/include \
7        -I ../stglibs/crypto.lib/include \
8        -I ../projects/stargazer
9 DEFS = -DLINUX \
10        -DUSE_ABSTRACT_SETTINGS
11 CFLAGS += -g3 -Wall -W -Wextra -Wno-unused-function $(INCS) $(DEFS)
12 CXXFLAGS += $(CFLAGS)
13 LIBS = -lpthread
14 PROG = tests
15
16 SOURCES = main.cpp \
17           test_raw_ip.cpp \
18           test_admin_conf.cpp \
19           test_tariff.cpp \
20           test_conffiles.cpp \
21           test_fee_charge_rules.cpp \
22           test_reconnect_on_tariff_change.cpp \
23           test_disable_session_log.cpp \
24           test_filter_params_log.cpp \
25           test_crypto.cpp \
26           test_bfstream.cpp \
27           ../projects/stargazer/tariff_impl.cpp \
28           ../projects/stargazer/user_impl.cpp \
29           ../projects/stargazer/user_property.cpp \
30           ../stglibs/conffiles.lib/conffiles.cpp \
31           ../stglibs/common.lib/common.cpp \
32           ../stglibs/common.lib/strptime.cpp \
33           ../stglibs/logger.lib/logger.cpp \
34           ../stglibs/scriptexecuter.lib/scriptexecuter.cpp \
35           ../stglibs/crypto.lib/bfstream.cpp \
36           ../stglibs/crypto.lib/blowfish.c
37
38 .PHONY: all clean
39
40 all: $(PROG)
41
42 $(PROG): $(addsuffix .o,$(basename $(SOURCES)))
43         $(CXX) $(LDFLAGS) $^ $(LIBS) -o $@
44
45 clean:
46         rm -f $(addsuffix .o,$(basename $(SOURCES))) $(addsuffix .d,$(SOURCES)) $(PROG)
47
48 ifneq ($(MAKECMDGOALS),distclean)
49 ifneq ($(MAKECMDGOALS),clean)
50 -include $(addsuffix .d,$(SOURCES))
51 endif
52 endif
53
54 %.cpp.d: %.cpp
55         @$(CXX) -MM $(CXXFLAGS) $< > $@.$$$$; \
56         sed 's,\($*\).o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
57         rm -f $@.$$$$
58
59 %.c.d: %.c
60         @$(CC) -MM $(CFLAGS) $< > $@.$$$$; \
61         sed 's,\($*\).o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
62         rm -f $@.$$$$