]> git.ipfire.org Git - people/ms/strongswan.git/blame - src/libcharon/Makefile.am
Users of PLUGINS depend on config.status, rebuilding them if plugin configuration...
[people/ms/strongswan.git] / src / libcharon / Makefile.am
CommitLineData
bd3f8ea3 1lib_LTLIBRARIES = libcharon.la
f2c2d395 2
bd3f8ea3 3libcharon_la_SOURCES = \
47f50278 4bus/bus.c bus/bus.h \
a3ee331b 5bus/listeners/listener.h \
47f50278 6bus/listeners/file_logger.c bus/listeners/file_logger.h \
e0fe7651 7bus/listeners/sys_logger.c bus/listeners/sys_logger.h \
552cc11b 8config/backend_manager.c config/backend_manager.h config/backend.h \
e0fe7651 9config/child_cfg.c config/child_cfg.h \
e0fe7651
MW
10config/ike_cfg.c config/ike_cfg.h \
11config/peer_cfg.c config/peer_cfg.h \
433cb51b 12config/proposal.c config/proposal.h \
a44bb934 13config/auth_cfg.c config/auth_cfg.h \
552cc11b 14control/controller.c control/controller.h \
e0fe7651
MW
15daemon.c daemon.h \
16encoding/generator.c encoding/generator.h \
17encoding/message.c encoding/message.h \
18encoding/parser.c encoding/parser.h \
19encoding/payloads/auth_payload.c encoding/payloads/auth_payload.h \
20encoding/payloads/cert_payload.c encoding/payloads/cert_payload.h \
21encoding/payloads/certreq_payload.c encoding/payloads/certreq_payload.h \
22encoding/payloads/configuration_attribute.c encoding/payloads/configuration_attribute.h \
23encoding/payloads/cp_payload.c encoding/payloads/cp_payload.h \
24encoding/payloads/delete_payload.c encoding/payloads/delete_payload.h \
25encoding/payloads/eap_payload.c encoding/payloads/eap_payload.h \
26encoding/payloads/encodings.c encoding/payloads/encodings.h \
27encoding/payloads/encryption_payload.c encoding/payloads/encryption_payload.h \
28encoding/payloads/id_payload.c encoding/payloads/id_payload.h \
29encoding/payloads/ike_header.c encoding/payloads/ike_header.h \
30encoding/payloads/ke_payload.c encoding/payloads/ke_payload.h \
31encoding/payloads/nonce_payload.c encoding/payloads/nonce_payload.h \
32encoding/payloads/notify_payload.c encoding/payloads/notify_payload.h \
33encoding/payloads/payload.c encoding/payloads/payload.h \
34encoding/payloads/proposal_substructure.c encoding/payloads/proposal_substructure.h \
35encoding/payloads/sa_payload.c encoding/payloads/sa_payload.h \
36encoding/payloads/traffic_selector_substructure.c encoding/payloads/traffic_selector_substructure.h \
37encoding/payloads/transform_attribute.c encoding/payloads/transform_attribute.h \
38encoding/payloads/transform_substructure.c encoding/payloads/transform_substructure.h \
39encoding/payloads/ts_payload.c encoding/payloads/ts_payload.h \
40encoding/payloads/unknown_payload.c encoding/payloads/unknown_payload.h \
41encoding/payloads/vendor_id_payload.c encoding/payloads/vendor_id_payload.h \
42kernel/kernel_interface.c kernel/kernel_interface.h \
a341a68f
TB
43kernel/kernel_ipsec.c kernel/kernel_ipsec.h \
44kernel/kernel_net.h \
e0fe7651
MW
45network/packet.c network/packet.h \
46network/receiver.c network/receiver.h \
47network/sender.c network/sender.h \
dab05604 48network/socket_manager.c network/socket_manager.h network/socket.h \
9fe1a1ca 49processing/jobs/job.h \
e0fe7651 50processing/jobs/acquire_job.c processing/jobs/acquire_job.h \
9fe1a1ca 51processing/jobs/callback_job.c processing/jobs/callback_job.h \
e0fe7651
MW
52processing/jobs/delete_child_sa_job.c processing/jobs/delete_child_sa_job.h \
53processing/jobs/delete_ike_sa_job.c processing/jobs/delete_ike_sa_job.h \
ef6d339c 54processing/jobs/migrate_job.c processing/jobs/migrate_job.h \
e0fe7651
MW
55processing/jobs/process_message_job.c processing/jobs/process_message_job.h \
56processing/jobs/rekey_child_sa_job.c processing/jobs/rekey_child_sa_job.h \
57processing/jobs/rekey_ike_sa_job.c processing/jobs/rekey_ike_sa_job.h \
58processing/jobs/retransmit_job.c processing/jobs/retransmit_job.h \
e0fe7651
MW
59processing/jobs/send_dpd_job.c processing/jobs/send_dpd_job.h \
60processing/jobs/send_keepalive_job.c processing/jobs/send_keepalive_job.h \
17d92e97 61processing/jobs/roam_job.c processing/jobs/roam_job.h \
aa9a3006 62processing/jobs/update_sa_job.c processing/jobs/update_sa_job.h \
aa9eeb5d 63processing/jobs/inactivity_job.c processing/jobs/inactivity_job.h \
e0fe7651 64processing/scheduler.c processing/scheduler.h \
9fe1a1ca 65processing/processor.c processing/processor.h \
e0fe7651
MW
66sa/authenticators/authenticator.c sa/authenticators/authenticator.h \
67sa/authenticators/eap_authenticator.c sa/authenticators/eap_authenticator.h \
68sa/authenticators/eap/eap_method.c sa/authenticators/eap/eap_method.h \
552cc11b 69sa/authenticators/eap/eap_manager.c sa/authenticators/eap/eap_manager.h \
79a87846 70sa/authenticators/eap/sim_manager.c sa/authenticators/eap/sim_manager.h \
e0fe7651 71sa/authenticators/psk_authenticator.c sa/authenticators/psk_authenticator.h \
ea0823df 72sa/authenticators/pubkey_authenticator.c sa/authenticators/pubkey_authenticator.h \
e0fe7651
MW
73sa/child_sa.c sa/child_sa.h \
74sa/ike_sa.c sa/ike_sa.h \
75sa/ike_sa_id.c sa/ike_sa_id.h \
76sa/ike_sa_manager.c sa/ike_sa_manager.h \
77sa/task_manager.c sa/task_manager.h \
6a4ff35c 78sa/keymat.c sa/keymat.h \
eb8ed130 79sa/trap_manager.c sa/trap_manager.h \
e0fe7651
MW
80sa/tasks/child_create.c sa/tasks/child_create.h \
81sa/tasks/child_delete.c sa/tasks/child_delete.h \
82sa/tasks/child_rekey.c sa/tasks/child_rekey.h \
c60c7694 83sa/tasks/ike_auth.c sa/tasks/ike_auth.h \
552cc11b
MW
84sa/tasks/ike_cert_pre.c sa/tasks/ike_cert_pre.h \
85sa/tasks/ike_cert_post.c sa/tasks/ike_cert_post.h \
e0fe7651 86sa/tasks/ike_config.c sa/tasks/ike_config.h \
c60c7694
MW
87sa/tasks/ike_delete.c sa/tasks/ike_delete.h \
88sa/tasks/ike_dpd.c sa/tasks/ike_dpd.h \
e0fe7651
MW
89sa/tasks/ike_init.c sa/tasks/ike_init.h \
90sa/tasks/ike_natd.c sa/tasks/ike_natd.h \
17d92e97 91sa/tasks/ike_mobike.c sa/tasks/ike_mobike.h \
e0fe7651 92sa/tasks/ike_rekey.c sa/tasks/ike_rekey.h \
26424f03 93sa/tasks/ike_reauth.c sa/tasks/ike_reauth.h \
7805ad30 94sa/tasks/ike_auth_lifetime.c sa/tasks/ike_auth_lifetime.h \
a5a0bcaa 95sa/tasks/ike_vendor.c sa/tasks/ike_vendor.h \
552cc11b
MW
96sa/tasks/task.c sa/tasks/task.h \
97credentials/credential_manager.c credentials/credential_manager.h \
a44bb934 98credentials/sets/auth_cfg_wrapper.c credentials/sets/auth_cfg_wrapper.h \
48acfe98 99credentials/sets/ocsp_response_wrapper.c credentials/sets/ocsp_response_wrapper.h \
dfd5cdcb 100credentials/sets/cert_cache.c credentials/sets/cert_cache.h \
552cc11b 101credentials/credential_set.h
f2c2d395 102
b0e78903
MW
103daemon.lo : $(top_srcdir)/config.status
104
58f86d0f
TB
105INCLUDES = \
106 -I${linux_headers} \
107 -I$(top_srcdir)/src/libstrongswan \
108 -I$(top_srcdir)/src/libhydra \
109 -I$(top_srcdir)/src/libcharon
110
bd3f8ea3 111AM_CFLAGS = \
58f86d0f
TB
112 -DIPSEC_DIR=\"${ipsecdir}\" \
113 -DIPSEC_PIDDIR=\"${piddir}\"
114
78060ba0 115libcharon_la_LIBADD = -lm $(PTHREADLIB) $(DLLIB) $(SOCKLIB)
6b9290ff 116
1be32988
TB
117EXTRA_DIST = Android.mk
118
6b9290ff
MW
119# compile options
120#################
121
dc04b7c7 122if USE_ME
bd3f8ea3 123 libcharon_la_SOURCES += encoding/payloads/endpoint_notify.c encoding/payloads/endpoint_notify.h \
d5cc1758
TB
124 processing/jobs/initiate_mediation_job.c processing/jobs/initiate_mediation_job.h \
125 processing/jobs/mediation_job.c processing/jobs/mediation_job.h \
126 sa/connect_manager.c sa/connect_manager.h \
127 sa/mediation_manager.c sa/mediation_manager.h \
dc04b7c7 128 sa/tasks/ike_me.c sa/tasks/ike_me.h
d5cc1758 129endif
04a7b6d8 130
eb3e2705 131if USE_CAPABILITIES
bd3f8ea3 132 libcharon_la_LIBADD += -lcap
6ec60bb9 133endif
eb3e2705 134
552cc11b
MW
135# build optional plugins
136########################
a84fb01b 137
bd3f8ea3 138if MONOLITHIC
6ec60bb9 139SUBDIRS =
bd3f8ea3
TB
140else
141SUBDIRS = .
142endif
143
75dc0192 144PLUGINS = ${libstrongswan_plugins} ${libhydra_plugins}
a84fb01b 145
b76b867c 146if USE_LOAD_TESTER
0fd6e955
MW
147 SUBDIRS += plugins/load_tester
148 PLUGINS += load-tester
6ec60bb9
TB
149if MONOLITHIC
150 libcharon_la_LIBADD += plugins/load_tester/libstrongswan-load-tester.la
151endif
0fd6e955
MW
152endif
153
1adaa02b
TB
154if USE_KERNEL_PFKEY
155 SUBDIRS += plugins/kernel_pfkey
156 PLUGINS += kernel-pfkey
6ec60bb9
TB
157if MONOLITHIC
158 libcharon_la_LIBADD += plugins/kernel_pfkey/libstrongswan-kernel-pfkey.la
159endif
1adaa02b
TB
160endif
161
d24a74c5
TB
162if USE_KERNEL_PFROUTE
163 SUBDIRS += plugins/kernel_pfroute
164 PLUGINS += kernel-pfroute
6ec60bb9
TB
165if MONOLITHIC
166 libcharon_la_LIBADD += plugins/kernel_pfroute/libstrongswan-kernel-pfroute.la
167endif
d24a74c5
TB
168endif
169
ea625fab
TB
170if USE_KERNEL_KLIPS
171 SUBDIRS += plugins/kernel_klips
172 PLUGINS += kernel-klips
6ec60bb9
TB
173if MONOLITHIC
174 libcharon_la_LIBADD += plugins/kernel_klips/libstrongswan-kernel-klips.la
175endif
ea625fab
TB
176endif
177
09d7ef26 178if USE_KERNEL_NETLINK
507f26f6
TB
179 SUBDIRS += plugins/kernel_netlink
180 PLUGINS += kernel-netlink
6ec60bb9
TB
181if MONOLITHIC
182 libcharon_la_LIBADD += plugins/kernel_netlink/libstrongswan-kernel-netlink.la
183endif
09d7ef26 184endif
507f26f6 185
dab05604
MW
186if USE_SOCKET_DEFAULT
187 SUBDIRS += plugins/socket_default
188 PLUGINS += socket-default
6ec60bb9
TB
189if MONOLITHIC
190 libcharon_la_LIBADD += plugins/socket_default/libstrongswan-socket-default.la
191endif
dab05604
MW
192endif
193
194if USE_SOCKET_RAW
195 SUBDIRS += plugins/socket_raw
196 PLUGINS += socket-raw
6ec60bb9
TB
197if MONOLITHIC
198 libcharon_la_LIBADD += plugins/socket_raw/libstrongswan-socket-raw.la
199endif
dab05604
MW
200endif
201
9ed1bb48
MW
202if USE_SOCKET_DYNAMIC
203 SUBDIRS += plugins/socket_dynamic
204 PLUGINS += socket-dynamic
6ec60bb9
TB
205if MONOLITHIC
206 libcharon_la_LIBADD += plugins/socket_dynamic/libstrongswan-socket-dynamic.la
207endif
9ed1bb48
MW
208endif
209
0d7b48a3
MW
210if USE_FARP
211 SUBDIRS += plugins/farp
212 PLUGINS += farp
213if MONOLITHIC
214 libcharon_la_LIBADD += plugins/farp/libstrongswan-farp.la
215endif
216endif
217
552cc11b
MW
218if USE_STROKE
219 SUBDIRS += plugins/stroke
1ba62b55 220 PLUGINS += stroke
6ec60bb9
TB
221if MONOLITHIC
222 libcharon_la_LIBADD += plugins/stroke/libstrongswan-stroke.la
223endif
a84fb01b
MW
224endif
225
6b9290ff
MW
226if USE_SMP
227 SUBDIRS += plugins/smp
da1bc5e8 228 PLUGINS += smp
6ec60bb9
TB
229if MONOLITHIC
230 libcharon_la_LIBADD += plugins/smp/libstrongswan-smp.la
231endif
4b403e76
MW
232endif
233
552cc11b
MW
234if USE_SQL
235 SUBDIRS += plugins/sql
1ba62b55 236 PLUGINS += sql
6ec60bb9
TB
237if MONOLITHIC
238 libcharon_la_LIBADD += plugins/sql/libstrongswan-sql.la
239endif
cbfb2aff 240endif
a84fb01b 241
ad3af574
MW
242if USE_UPDOWN
243 SUBDIRS += plugins/updown
244 PLUGINS += updown
6ec60bb9
TB
245if MONOLITHIC
246 libcharon_la_LIBADD += plugins/updown/libstrongswan-updown.la
247endif
ad3af574
MW
248endif
249
552cc11b
MW
250if USE_EAP_IDENTITY
251 SUBDIRS += plugins/eap_identity
c4d53fe0 252 PLUGINS += eap-identity
6ec60bb9
TB
253if MONOLITHIC
254 libcharon_la_LIBADD += plugins/eap_identity/libstrongswan-eap-identity.la
255endif
8f561d44
MW
256endif
257
552cc11b
MW
258if USE_EAP_SIM
259 SUBDIRS += plugins/eap_sim
c4d53fe0 260 PLUGINS += eap-sim
6ec60bb9
TB
261if MONOLITHIC
262 libcharon_la_LIBADD += plugins/eap_sim/libstrongswan-eap-sim.la
263endif
552cc11b 264endif
a84fb01b 265
79a87846
MW
266if USE_EAP_SIM_FILE
267 SUBDIRS += plugins/eap_sim_file
c4d53fe0 268 PLUGINS += eap-sim-file
6ec60bb9
TB
269if MONOLITHIC
270 libcharon_la_LIBADD += plugins/eap_sim_file/libstrongswan-eap-sim-file.la
271endif
79a87846
MW
272endif
273
edcb2dd3
MW
274if USE_EAP_SIMAKA_PSEUDONYM
275 SUBDIRS += plugins/eap_simaka_pseudonym
276 PLUGINS += eap-simaka-pseudonym
6ec60bb9
TB
277if MONOLITHIC
278 libcharon_la_LIBADD += plugins/eap_simaka_pseudonym/libstrongswan-eap-simaka-pseudonym.la
279endif
edcb2dd3
MW
280endif
281
282if USE_EAP_SIMAKA_REAUTH
283 SUBDIRS += plugins/eap_simaka_reauth
284 PLUGINS += eap-simaka-reauth
6ec60bb9
TB
285if MONOLITHIC
286 libcharon_la_LIBADD += plugins/eap_simaka_reauth/libstrongswan-eap-simaka-reauth.la
edcb2dd3 287endif
1caa265c
MW
288endif
289
552cc11b
MW
290if USE_EAP_AKA
291 SUBDIRS += plugins/eap_aka
c4d53fe0 292 PLUGINS += eap-aka
6ec60bb9
TB
293if MONOLITHIC
294 libcharon_la_LIBADD += plugins/eap_aka/libstrongswan-eap-aka.la
295endif
a84fb01b
MW
296endif
297
47208157
MW
298if USE_EAP_AKA_3GPP2
299 SUBDIRS += plugins/eap_aka_3gpp2
c4d53fe0 300 PLUGINS += eap-aka-3gpp2
6ec60bb9
TB
301if MONOLITHIC
302 libcharon_la_LIBADD += plugins/eap_aka_3gpp2/libstrongswan-eap-aka-3gpp2.la
303endif
304endif
305
306if USE_SIMAKA
307if MONOLITHIC
308 # otherwise this library is linked to both the eap_aka and the eap_sim plugin
309 libcharon_la_LIBADD += $(top_builddir)/src/libsimaka/libsimaka.la
310endif
311endif
312
313if USE_EAP_MD5
314 SUBDIRS += plugins/eap_md5
315 PLUGINS += eap-md5
316if MONOLITHIC
317 libcharon_la_LIBADD += plugins/eap_md5/libstrongswan-eap-md5.la
318endif
319endif
320
321if USE_EAP_GTC
322 SUBDIRS += plugins/eap_gtc
323 PLUGINS += eap-gtc
324if MONOLITHIC
325 libcharon_la_LIBADD += plugins/eap_gtc/libstrongswan-eap-gtc.la
326endif
47208157
MW
327endif
328
f98cdf7a
TB
329if USE_EAP_MSCHAPV2
330 SUBDIRS += plugins/eap_mschapv2
c4d53fe0 331 PLUGINS += eap-mschapv2
6ec60bb9
TB
332if MONOLITHIC
333 libcharon_la_LIBADD += plugins/eap_mschapv2/libstrongswan-eap-mschapv2.la
334endif
f98cdf7a
TB
335endif
336
4a6b84a9
MW
337if USE_EAP_RADIUS
338 SUBDIRS += plugins/eap_radius
c4d53fe0 339 PLUGINS += eap-radius
6ec60bb9
TB
340if MONOLITHIC
341 libcharon_la_LIBADD += plugins/eap_radius/libstrongswan-eap-radius.la
342endif
4a6b84a9
MW
343endif
344
5b7ec6d4
MW
345if USE_MEDSRV
346 SUBDIRS += plugins/medsrv
1ba62b55 347 PLUGINS += medsrv
6ec60bb9
TB
348if MONOLITHIC
349 libcharon_la_LIBADD += plugins/medsrv/libstrongswan-medsrv.la
350endif
78703918
AS
351endif
352
782db7ed
MW
353if USE_MEDCLI
354 SUBDIRS += plugins/medcli
1ba62b55 355 PLUGINS += medcli
6ec60bb9
TB
356if MONOLITHIC
357 libcharon_la_LIBADD += plugins/medcli/libstrongswan-medcli.la
358endif
782db7ed
MW
359endif
360
6dbce9c8
MW
361if USE_NM
362 SUBDIRS += plugins/nm
363 PLUGINS += nm
6ec60bb9
TB
364if MONOLITHIC
365 libcharon_la_LIBADD += plugins/nm/libstrongswan-nm.la
366endif
6dbce9c8
MW
367endif
368
beaa048e
MW
369if USE_DHCP
370 SUBDIRS += plugins/dhcp
371 PLUGINS += dhcp
372if MONOLITHIC
373 libcharon_la_LIBADD += plugins/dhcp/libstrongswan-dhcp.la
374endif
375endif
376
4819ec6a
AS
377if USE_RESOLVE
378 SUBDIRS += plugins/resolve
379 PLUGINS += resolve
6ec60bb9
TB
380if MONOLITHIC
381 libcharon_la_LIBADD += plugins/resolve/libstrongswan-resolve.la
382endif
568ced95
MW
383endif
384
55699f03
MW
385if USE_ANDROID
386 SUBDIRS += plugins/android
387 PLUGINS += android
6ec60bb9
TB
388if MONOLITHIC
389 libcharon_la_LIBADD += plugins/android/libstrongswan-android.la
390endif
55699f03
MW
391endif
392
29a46aac
MW
393if USE_HA
394 SUBDIRS += plugins/ha
395 PLUGINS += ha
396if MONOLITHIC
397 libcharon_la_LIBADD += plugins/ha/libstrongswan-ha.la
398endif
399endif
400
61c46386 401if USE_UCI
364fca2c
MW
402 SUBDIRS += plugins/uci
403 PLUGINS += uci
6ec60bb9
TB
404if MONOLITHIC
405 libcharon_la_LIBADD += plugins/uci/libstrongswan-uci.la
406endif
61c46386
MW
407endif
408
6b64fe26
MW
409if USE_UNIT_TESTS
410 SUBDIRS += plugins/unit_tester
411 PLUGINS += unit-tester
6ec60bb9
TB
412if MONOLITHIC
413 libcharon_la_LIBADD += plugins/unit_tester/libstrongswan-unit-tester.la
414endif
6b64fe26
MW
415endif
416
1ba62b55
MW
417AM_CFLAGS += -DPLUGINS=\""${PLUGINS}\""
418