1#
2#  OpenVPN -- An application to securely tunnel IP networks
3#             over a single UDP port, with support for SSL/TLS-based
4#             session authentication and key exchange,
5#             packet encryption, packet authentication, and
6#             packet compression.
7#
8#  Copyright (C) 2002-2010 OpenVPN Technologies, Inc. <sales@openvpn.net>
9#  Copyright (C) 2006-2012 Alon Bar-Lev <alon.barlev@gmail.com>
10#
11
12include $(top_srcdir)/build/ltrc.inc
13
14MAINTAINERCLEANFILES = \
15	$(srcdir)/Makefile.in
16
17EXTRA_DIST = \
18	openvpn.vcxproj \
19	openvpn.vcxproj.filters
20
21INCLUDES = \
22	-I$(top_srcdir)/include \
23	-I$(top_srcdir)/src/compat
24
25AM_CFLAGS = \
26	$(TAP_CFLAGS) \
27	$(OPTIONAL_CRYPTO_CFLAGS) \
28	$(OPTIONAL_LZO_CFLAGS) \
29	$(OPTIONAL_PKCS11_HELPER_CFLAGS)
30if WIN32
31# we want unicode entry point but not the macro
32AM_CFLAGS += -municode -UUNICODE
33endif
34
35sbin_PROGRAMS = openvpn
36
37openvpn_SOURCES = \
38	base64.c base64.h \
39	basic.h \
40	buffer.c buffer.h \
41	circ_list.h \
42	clinat.c clinat.h \
43	common.h \
44	crypto.c crypto.h crypto_backend.h \
45	crypto_openssl.c crypto_openssl.h \
46	crypto_polarssl.c crypto_polarssl.h \
47	dhcp.c dhcp.h \
48	errlevel.h \
49	error.c error.h \
50	event.c event.h \
51	fdmisc.c fdmisc.h \
52	forward.c forward.h forward-inline.h \
53	fragment.c fragment.h \
54	gremlin.c gremlin.h \
55	helper.c helper.h \
56	httpdigest.c httpdigest.h \
57	lladdr.c lladdr.h \
58	init.c init.h \
59	integer.h \
60	interval.c interval.h \
61	list.c list.h \
62	lzo.c lzo.h \
63	manage.c manage.h \
64	mbuf.c mbuf.h \
65	memdbg.h \
66	misc.c misc.h \
67	platform.c platform.h \
68	console.c console.h \
69	mroute.c mroute.h \
70	mss.c mss.h \
71	mstats.c mstats.h \
72	mtcp.c mtcp.h \
73	mtu.c mtu.h \
74	mudp.c mudp.h \
75	multi.c multi.h \
76	ntlm.c ntlm.h \
77	occ.c occ.h occ-inline.h \
78	pkcs11.c pkcs11.h pkcs11_backend.h \
79	pkcs11_openssl.c \
80	pkcs11_polarssl.c \
81	openvpn.c openvpn.h \
82	options.c options.h \
83	otime.c otime.h \
84	packet_id.c packet_id.h \
85	perf.c perf.h \
86	pf.c pf.h pf-inline.h \
87	ping.c ping.h ping-inline.h \
88	plugin.c plugin.h \
89	pool.c pool.h \
90	proto.c proto.h \
91	proxy.c proxy.h \
92	ps.c ps.h \
93	push.c push.h \
94	pushlist.h \
95	reliable.c reliable.h \
96	route.c route.h \
97	schedule.c schedule.h \
98	session_id.c session_id.h \
99	shaper.c shaper.h \
100	sig.c sig.h \
101	socket.c socket.h \
102	socks.c socks.h \
103	ssl.c ssl.h  ssl_backend.h \
104	ssl_openssl.c ssl_openssl.h \
105	ssl_polarssl.c ssl_polarssl.h \
106	ssl_common.h \
107	ssl_verify.c ssl_verify.h ssl_verify_backend.h \
108	ssl_verify_openssl.c ssl_verify_openssl.h \
109	ssl_verify_polarssl.c ssl_verify_polarssl.h \
110	status.c status.h \
111	syshead.h \
112	tun.c tun.h \
113	win32.h win32.c \
114	cryptoapi.h cryptoapi.c
115openvpn_LDADD = \
116	$(top_builddir)/src/compat/libcompat.la \
117	$(SOCKETS_LIBS) \
118	$(OPTIONAL_LZO_LIBS) \
119	$(OPTIONAL_PKCS11_HELPER_LIBS) \
120	$(OPTIONAL_CRYPTO_LIBS) \
121	$(OPTIONAL_SELINUX_LIBS) \
122	$(OPTIONAL_DL_LIBS)
123if WIN32
124openvpn_SOURCES += openvpn_win32_resources.rc
125openvpn_LDADD += -lgdi32 -lws2_32 -lwininet -lcrypt32 -liphlpapi -lwinmm
126endif
127