1@AM_GIT_VERSION@
2
3bin_PROGRAMS = sipp
4
5TESTS = sipp_unittest
6
7check_PROGRAMS = $(TESTS)
8
9AM_CFLAGS=-I$(srcdir)/include -Wall -pedantic
10AM_CXXFLAGS=-I$(srcdir)/include -Wall -pedantic
11
12CLEANFILES =
13EXTRA_DIST = \
14	$(srcdir)/src/fortune.cpp \
15	$(srcdir)/LICENSE.txt \
16	$(srcdir)/README.md \
17	$(srcdir)/THANKS \
18	$(srcdir)/sipp.dtd \
19	$(srcdir)/cpplint.py
20
21if HAVE_OPENSSL
22DEFS += -DUSE_OPENSSL
23ssl_incl = \
24	include/sslcommon.h
25ssl_SOURCES = \
26	$(ssl_incl) \
27	src/sslinit.c \
28	src/sslthreadsafe.c
29endif
30
31if HAVE_PCAP
32DEFS += -DPCAPPLAY
33pcap_incl = \
34	include/prepare_pcap.h \
35	include/send_packets.h
36pcap_SOURCES = \
37	$(pcap_incl) \
38	src/prepare_pcap.c \
39	src/send_packets.c
40endif
41
42if HAVE_RTP
43DEFS += -DRTP_STREAM
44rtp_SOURCES = \
45	src/rtpstream.cpp \
46	include/rtpstream.hpp
47endif
48
49if HAVE_SCTP
50DEFS += -DUSE_SCTP
51endif
52
53if HAVE_GSL
54DEFS += -DHAVE_GSL
55endif
56
57if HAVE_EPOLL
58DEFS += -DHAVE_EPOLL
59endif
60
61common_incl = \
62	include/comp.h \
63	include/infile.hpp \
64	include/listener.hpp \
65	include/logger.hpp \
66	include/md5.h \
67	include/message.hpp \
68	include/milenage.h \
69	include/call_generation_task.hpp \
70	include/ratetask.hpp \
71	include/reporttask.hpp \
72	include/rijndael.h \
73	include/scenario.hpp \
74	include/sip_parser.hpp \
75	include/screen.hpp \
76	include/socket.hpp \
77	include/socketowner.hpp \
78	include/stat.hpp \
79	include/strings.hpp \
80	include/task.hpp \
81	include/time.hpp \
82	include/variables.hpp \
83	include/watchdog.hpp \
84	include/xp_parser.h \
85	include/actions.hpp \
86	include/call.hpp \
87	include/auth.hpp \
88	include/deadcall.hpp
89
90common_SOURCES = \
91	src/actions.cpp \
92	src/auth.cpp \
93	src/comp.c \
94	src/call.cpp \
95	src/deadcall.cpp \
96	src/infile.cpp \
97	src/listener.cpp \
98	src/logger.cpp \
99	src/md5.c \
100	src/message.cpp \
101	src/milenage.c \
102	src/call_generation_task.cpp \
103	src/ratetask.cpp \
104	src/reporttask.cpp \
105	src/rijndael.c \
106	src/scenario.cpp \
107	src/sip_parser.cpp \
108	src/screen.cpp \
109	src/socket.cpp \
110	src/socketowner.cpp \
111	src/stat.cpp \
112	src/strings.cpp \
113	src/task.cpp \
114	src/time.cpp \
115	src/variables.cpp \
116	src/watchdog.cpp \
117	src/xp_parser.c \
118	$(common_incl) \
119	$(ssl_SOURCES) \
120	$(pcap_SOURCES) \
121	$(rtp_SOURCES)
122
123sipp_SOURCES = \
124	$(common_SOURCES) \
125	src/sipp.cpp \
126	include/sipp.hpp
127
128sipp_CFLAGS = $(AM_CFLAGS) @GSL_CFLAGS@
129sipp_CXXFLAGS = $(AM_CXXFLAGS) @GSL_CXXFLAGS@
130sipp_LDADD = @LIBOBJS@ @GSL_LIBS@
131
132# call.cpp and sipp.cpp use version.h; see AM_GIT_VERSION.
133src/call.cpp: include/version.h
134src/sipp.cpp: include/version.h
135
136gtest_SOURCES = \
137	gtest/src/gtest-death-test.cc \
138	gtest/src/gtest-filepath.cc \
139	gtest/src/gtest-internal-inl.h \
140	gtest/src/gtest-port.cc \
141	gtest/src/gtest-printers.cc \
142	gtest/src/gtest-test-part.cc \
143	gtest/src/gtest-typed-test.cc \
144	gtest/src/gtest.cc \
145	gmock/src/gmock-internal-utils.cc \
146	gmock/src/gmock-matchers.cc
147
148sipp_unittest_SOURCES = \
149	$(common_SOURCES) \
150	src/sipp_unittest.cpp \
151	src/xp_parser_ut.cpp \
152	$(gtest_SOURCES)
153
154sipp_unittest_CFLAGS = $(AM_CFLAGS) -DGTEST=1 \
155	-I$(srcdir)/gtest/include \
156	-I$(srcdir)/gmock/include \
157	-I$(srcdir)/gtest \
158	-I$(srcdir)/gmock \
159	@GSL_CFLAGS@
160
161sipp_unittest_CXXFLAGS = $(AM_CXXFLAGS) -DGTEST=1 \
162	-I$(srcdir)/gtest/include \
163	-I$(srcdir)/gmock/include \
164	-I$(srcdir)/gtest \
165	-I$(srcdir)/gmock \
166	@GSL_CXXFLAGS@
167
168sipp_unittest_LDADD = @LIBOBJS@ @GSL_LIBS@
169
170if HAVE_HELP2MAN
171man_MANS = sipp.1
172CLEANFILES += $(man_MANS)
173
174sipp.1: ./sipp $(sipp_SOURCES)
175	$(HELP2MAN) --output=$@ -v "-v" --no-info \
176		--name='SIP testing tool and traffic generator' \
177		./sipp
178else
179sipp.1:
180	@echo "Warning: help2man not available, no man page is created."
181endif
182