]> git.ipfire.org Git - thirdparty/strongswan.git/blame - src/libcharon/Android.mk
libhydra: Move kernel interface to libcharon
[thirdparty/strongswan.git] / src / libcharon / Android.mk
CommitLineData
1be32988
TB
1LOCAL_PATH := $(call my-dir)
2include $(CLEAR_VARS)
3
4# copy-n-paste from Makefile.am
e5d819b6 5libcharon_la_SOURCES := \
75136327
MW
6attributes/attributes.c attributes/attributes.h \
7attributes/attribute_provider.h attributes/attribute_handler.h \
8attributes/attribute_manager.c attributes/attribute_manager.h \
9attributes/mem_pool.c attributes/mem_pool.h \
d92b337f
TB
10bus/bus.c bus/bus.h \
11bus/listeners/listener.h \
088020fb 12bus/listeners/logger.h \
d92b337f 13bus/listeners/file_logger.c bus/listeners/file_logger.h \
d92b337f
TB
14config/backend_manager.c config/backend_manager.h config/backend.h \
15config/child_cfg.c config/child_cfg.h \
16config/ike_cfg.c config/ike_cfg.h \
17config/peer_cfg.c config/peer_cfg.h \
18config/proposal.c config/proposal.h \
d92b337f
TB
19control/controller.c control/controller.h \
20daemon.c daemon.h \
21encoding/generator.c encoding/generator.h \
22encoding/message.c encoding/message.h \
23encoding/parser.c encoding/parser.h \
24encoding/payloads/auth_payload.c encoding/payloads/auth_payload.h \
25encoding/payloads/cert_payload.c encoding/payloads/cert_payload.h \
26encoding/payloads/certreq_payload.c encoding/payloads/certreq_payload.h \
27encoding/payloads/configuration_attribute.c encoding/payloads/configuration_attribute.h \
28encoding/payloads/cp_payload.c encoding/payloads/cp_payload.h \
29encoding/payloads/delete_payload.c encoding/payloads/delete_payload.h \
30encoding/payloads/eap_payload.c encoding/payloads/eap_payload.h \
31encoding/payloads/encodings.c encoding/payloads/encodings.h \
147fe503 32encoding/payloads/encrypted_payload.c encoding/payloads/encrypted_payload.h \
ba0355c4 33encoding/payloads/encrypted_fragment_payload.h \
d92b337f
TB
34encoding/payloads/id_payload.c encoding/payloads/id_payload.h \
35encoding/payloads/ike_header.c encoding/payloads/ike_header.h \
36encoding/payloads/ke_payload.c encoding/payloads/ke_payload.h \
37encoding/payloads/nonce_payload.c encoding/payloads/nonce_payload.h \
38encoding/payloads/notify_payload.c encoding/payloads/notify_payload.h \
39encoding/payloads/payload.c encoding/payloads/payload.h \
40encoding/payloads/proposal_substructure.c encoding/payloads/proposal_substructure.h \
41encoding/payloads/sa_payload.c encoding/payloads/sa_payload.h \
42encoding/payloads/traffic_selector_substructure.c encoding/payloads/traffic_selector_substructure.h \
43encoding/payloads/transform_attribute.c encoding/payloads/transform_attribute.h \
44encoding/payloads/transform_substructure.c encoding/payloads/transform_substructure.h \
45encoding/payloads/ts_payload.c encoding/payloads/ts_payload.h \
46encoding/payloads/unknown_payload.c encoding/payloads/unknown_payload.h \
47encoding/payloads/vendor_id_payload.c encoding/payloads/vendor_id_payload.h \
088020fb 48encoding/payloads/hash_payload.c encoding/payloads/hash_payload.h \
8f0ab6dd 49encoding/payloads/fragment_payload.c encoding/payloads/fragment_payload.h \
8394ea2a
TB
50kernel/kernel_interface.c kernel/kernel_interface.h \
51kernel/kernel_ipsec.c kernel/kernel_ipsec.h \
52kernel/kernel_net.c kernel/kernel_net.h \
53kernel/kernel_listener.h kernel/kernel_handler.c kernel/kernel_handler.h \
cfa15a71 54network/receiver.c network/receiver.h network/sender.c network/sender.h \
5764a9b3 55network/socket.c network/socket.h \
cfa15a71 56network/socket_manager.c network/socket_manager.h \
d92b337f 57processing/jobs/acquire_job.c processing/jobs/acquire_job.h \
d92b337f
TB
58processing/jobs/delete_child_sa_job.c processing/jobs/delete_child_sa_job.h \
59processing/jobs/delete_ike_sa_job.c processing/jobs/delete_ike_sa_job.h \
60processing/jobs/migrate_job.c processing/jobs/migrate_job.h \
61processing/jobs/process_message_job.c processing/jobs/process_message_job.h \
62processing/jobs/rekey_child_sa_job.c processing/jobs/rekey_child_sa_job.h \
63processing/jobs/rekey_ike_sa_job.c processing/jobs/rekey_ike_sa_job.h \
64processing/jobs/retransmit_job.c processing/jobs/retransmit_job.h \
8497c5d1 65processing/jobs/retry_initiate_job.c processing/jobs/retry_initiate_job.h \
d92b337f
TB
66processing/jobs/send_dpd_job.c processing/jobs/send_dpd_job.h \
67processing/jobs/send_keepalive_job.c processing/jobs/send_keepalive_job.h \
56617336 68processing/jobs/start_action_job.c processing/jobs/start_action_job.h \
d92b337f
TB
69processing/jobs/roam_job.c processing/jobs/roam_job.h \
70processing/jobs/update_sa_job.c processing/jobs/update_sa_job.h \
71processing/jobs/inactivity_job.c processing/jobs/inactivity_job.h \
80a1ebb1 72processing/jobs/initiate_tasks_job.c processing/jobs/initiate_tasks_job.h \
0ac34e9e 73sa/eap/eap_method.c sa/eap/eap_method.h sa/eap/eap_inner_method.h \
088020fb
TB
74sa/eap/eap_manager.c sa/eap/eap_manager.h \
75sa/xauth/xauth_method.c sa/xauth/xauth_method.h \
76sa/xauth/xauth_manager.c sa/xauth/xauth_manager.h \
77sa/authenticator.c sa/authenticator.h \
d92b337f
TB
78sa/child_sa.c sa/child_sa.h \
79sa/ike_sa.c sa/ike_sa.h \
80sa/ike_sa_id.c sa/ike_sa_id.h \
088020fb 81sa/keymat.h sa/keymat.c \
d92b337f 82sa/ike_sa_manager.c sa/ike_sa_manager.h \
e732fb11 83sa/child_sa_manager.c sa/child_sa_manager.h \
088020fb 84sa/task_manager.h sa/task_manager.c \
088d73b7 85sa/shunt_manager.c sa/shunt_manager.h \
d92b337f 86sa/trap_manager.c sa/trap_manager.h \
088020fb
TB
87sa/task.c sa/task.h
88
e5d819b6 89libcharon_la_SOURCES += \
088020fb
TB
90sa/ikev2/keymat_v2.c sa/ikev2/keymat_v2.h \
91sa/ikev2/task_manager_v2.c sa/ikev2/task_manager_v2.h \
92sa/ikev2/authenticators/eap_authenticator.c sa/ikev2/authenticators/eap_authenticator.h \
93sa/ikev2/authenticators/psk_authenticator.c sa/ikev2/authenticators/psk_authenticator.h \
94sa/ikev2/authenticators/pubkey_authenticator.c sa/ikev2/authenticators/pubkey_authenticator.h \
95sa/ikev2/tasks/child_create.c sa/ikev2/tasks/child_create.h \
96sa/ikev2/tasks/child_delete.c sa/ikev2/tasks/child_delete.h \
97sa/ikev2/tasks/child_rekey.c sa/ikev2/tasks/child_rekey.h \
98sa/ikev2/tasks/ike_auth.c sa/ikev2/tasks/ike_auth.h \
99sa/ikev2/tasks/ike_cert_pre.c sa/ikev2/tasks/ike_cert_pre.h \
100sa/ikev2/tasks/ike_cert_post.c sa/ikev2/tasks/ike_cert_post.h \
101sa/ikev2/tasks/ike_config.c sa/ikev2/tasks/ike_config.h \
102sa/ikev2/tasks/ike_delete.c sa/ikev2/tasks/ike_delete.h \
103sa/ikev2/tasks/ike_dpd.c sa/ikev2/tasks/ike_dpd.h \
104sa/ikev2/tasks/ike_init.c sa/ikev2/tasks/ike_init.h \
105sa/ikev2/tasks/ike_natd.c sa/ikev2/tasks/ike_natd.h \
106sa/ikev2/tasks/ike_mobike.c sa/ikev2/tasks/ike_mobike.h \
107sa/ikev2/tasks/ike_rekey.c sa/ikev2/tasks/ike_rekey.h \
108sa/ikev2/tasks/ike_reauth.c sa/ikev2/tasks/ike_reauth.h \
3676023e 109sa/ikev2/tasks/ike_reauth_complete.c sa/ikev2/tasks/ike_reauth_complete.h \
088020fb
TB
110sa/ikev2/tasks/ike_auth_lifetime.c sa/ikev2/tasks/ike_auth_lifetime.h \
111sa/ikev2/tasks/ike_vendor.c sa/ikev2/tasks/ike_vendor.h
1be32988 112
e5d819b6 113libcharon_la_SOURCES += \
9866c26c
TB
114sa/ikev1/keymat_v1.c sa/ikev1/keymat_v1.h \
115sa/ikev1/task_manager_v1.c sa/ikev1/task_manager_v1.h \
116sa/ikev1/authenticators/psk_v1_authenticator.c sa/ikev1/authenticators/psk_v1_authenticator.h \
117sa/ikev1/authenticators/pubkey_v1_authenticator.c sa/ikev1/authenticators/pubkey_v1_authenticator.h \
118sa/ikev1/authenticators/hybrid_authenticator.c sa/ikev1/authenticators/hybrid_authenticator.h \
119sa/ikev1/phase1.c sa/ikev1/phase1.h \
120sa/ikev1/tasks/main_mode.c sa/ikev1/tasks/main_mode.h \
121sa/ikev1/tasks/aggressive_mode.c sa/ikev1/tasks/aggressive_mode.h \
122sa/ikev1/tasks/informational.c sa/ikev1/tasks/informational.h \
123sa/ikev1/tasks/isakmp_cert_pre.c sa/ikev1/tasks/isakmp_cert_pre.h \
124sa/ikev1/tasks/isakmp_cert_post.c sa/ikev1/tasks/isakmp_cert_post.h \
125sa/ikev1/tasks/isakmp_natd.c sa/ikev1/tasks/isakmp_natd.h \
126sa/ikev1/tasks/isakmp_vendor.c sa/ikev1/tasks/isakmp_vendor.h \
127sa/ikev1/tasks/isakmp_delete.c sa/ikev1/tasks/isakmp_delete.h \
128sa/ikev1/tasks/isakmp_dpd.c sa/ikev1/tasks/isakmp_dpd.h \
129sa/ikev1/tasks/xauth.c sa/ikev1/tasks/xauth.h \
130sa/ikev1/tasks/quick_mode.c sa/ikev1/tasks/quick_mode.h \
131sa/ikev1/tasks/quick_delete.c sa/ikev1/tasks/quick_delete.h \
132sa/ikev1/tasks/mode_config.c sa/ikev1/tasks/mode_config.h \
133processing/jobs/dpd_timeout_job.c processing/jobs/dpd_timeout_job.h \
134processing/jobs/adopt_children_job.c processing/jobs/adopt_children_job.h
135
5195416d
TB
136libcharon_la_SOURCES += \
137 bus/listeners/sys_logger.c bus/listeners/sys_logger.h
138
e5d819b6
TB
139LOCAL_SRC_FILES := $(filter %.c,$(libcharon_la_SOURCES))
140
0f5a0439 141# adding the plugin source files
1be32988 142
9804fcce
TB
143LOCAL_SRC_FILES += $(call add_plugin, android-dns)
144ifneq ($(call plugin_enabled, android-dns),)
1be32988
TB
145LOCAL_SHARED_LIBRARIES += libcutils
146endif
147
162621ed
TB
148LOCAL_SRC_FILES += $(call add_plugin, android-log)
149ifneq ($(call plugin_enabled, android-log),)
150LOCAL_LDLIBS += -llog
151endif
152
0f5a0439
TB
153LOCAL_SRC_FILES += $(call add_plugin, attr)
154
155LOCAL_SRC_FILES += $(call add_plugin, eap-aka)
156
157LOCAL_SRC_FILES += $(call add_plugin, eap-aka-3gpp2)
9b6db5cd 158ifneq ($(call plugin_enabled, eap-aka-3gpp2),)
1be32988 159LOCAL_C_INCLUDES += $(libgmp_PATH)
cf46ff68 160LOCAL_SHARED_LIBRARIES += libgmp
1be32988
TB
161endif
162
0f5a0439
TB
163LOCAL_SRC_FILES += $(call add_plugin, eap-gtc)
164
165LOCAL_SRC_FILES += $(call add_plugin, eap-identity)
166
167LOCAL_SRC_FILES += $(call add_plugin, eap-md5)
168
169LOCAL_SRC_FILES += $(call add_plugin, eap-mschapv2)
170
171LOCAL_SRC_FILES += $(call add_plugin, eap-sim)
172
d2c35874
MW
173LOCAL_SRC_FILES += $(call add_plugin, eap-simaka-sql)
174
0f5a0439
TB
175LOCAL_SRC_FILES += $(call add_plugin, eap-simaka-pseudonym)
176
177LOCAL_SRC_FILES += $(call add_plugin, eap-simaka-reauth)
178
179LOCAL_SRC_FILES += $(call add_plugin, eap-sim-file)
1be32988
TB
180
181# adding libakasim if either eap-aka or eap-sim is enabled
182ifneq ($(or $(call plugin_enabled, eap-aka), $(call plugin_enabled, eap-sim)),)
183LOCAL_C_INCLUDES += $(LOCAL_PATH)/../libsimaka/
184LOCAL_SRC_FILES += $(addprefix ../libsimaka/, \
185 simaka_message.h simaka_message.c \
186 simaka_crypto.h simaka_crypto.c \
3eff54a5
TB
187 simaka_manager.h simaka_manager.c \
188 simaka_card.h simaka_provider.h simaka_hooks.h \
1be32988
TB
189 )
190endif
191
91c0e0e3
TB
192LOCAL_SRC_FILES += $(call add_plugin, eap-tls)
193
194LOCAL_SRC_FILES += $(call add_plugin, eap-ttls)
195ifneq ($(call plugin_enabled, eap-ttls),)
196# for radius_message.h
197LOCAL_C_INCLUDES += $(LOCAL_PATH)/../libradius/
198endif
199
200LOCAL_SRC_FILES += $(call add_plugin, eap-peap)
201
46720781 202LOCAL_SRC_FILES += $(call add_plugin, eap-tnc)
e3f64a79
TB
203ifneq ($(call plugin_enabled, eap-tnc),)
204LOCAL_C_INCLUDES += $(LOCAL_PATH)/../libtnccs/ $(LOCAL_PATH)/../libtncif/
205LOCAL_SHARED_LIBRARIES += libtnccs libtncif
206endif
46720781
TB
207
208# adding libtls if any of the four plugins above is enabled
209ifneq ($(or $(call plugin_enabled, eap-tls), $(call plugin_enabled, eap-ttls), \
210 $(call plugin_enabled, eap-peap), $(call plugin_enabled, eap-tnc)),)
91c0e0e3
TB
211LOCAL_C_INCLUDES += $(LOCAL_PATH)/../libtls/
212LOCAL_SRC_FILES += $(addprefix ../libtls/, \
213 tls_protection.c tls_compression.c tls_fragmentation.c tls_alert.c \
214 tls_crypto.c tls_prf.c tls_socket.c tls_eap.c tls_cache.c tls_peer.c \
711af588 215 tls_aead_expl.c tls_aead_impl.c tls_aead_null.c tls_aead.c \
91c0e0e3
TB
216 tls_server.c tls.c \
217 )
218endif
219
0f5a0439
TB
220LOCAL_SRC_FILES += $(call add_plugin, load-tester)
221
dec9e195
TB
222LOCAL_SRC_FILES += $(call add_plugin, kernel-pfkey)
223
224LOCAL_SRC_FILES += $(call add_plugin, kernel-netlink)
225
0f5a0439
TB
226LOCAL_SRC_FILES += $(call add_plugin, socket-default)
227
228LOCAL_SRC_FILES += $(call add_plugin, socket-dynamic)
1be32988 229
635724f6
TB
230LOCAL_SRC_FILES += $(call add_plugin, stroke)
231ifneq ($(call plugin_enabled, stroke),)
232LOCAL_C_INCLUDES += $(LOCAL_PATH)/../stroke/
233endif
234
52c72573 235# build libcharon --------------------------------------------------------------
1be32988
TB
236
237LOCAL_C_INCLUDES += \
6edbe165 238 $(strongswan_PATH)/src/libhydra \
e3f64a79 239 $(strongswan_PATH)/src/libstrongswan
1be32988 240
94b48e07 241LOCAL_CFLAGS := $(strongswan_CFLAGS)
1be32988 242
52c72573 243LOCAL_MODULE := libcharon
1be32988 244
2e0b478a
TB
245LOCAL_MODULE_TAGS := optional
246
1be32988
TB
247LOCAL_ARM_MODE := arm
248
249LOCAL_PRELINK_MODULE := false
250
87c65e76 251LOCAL_SHARED_LIBRARIES += libstrongswan libhydra
1be32988 252
52c72573 253include $(BUILD_SHARED_LIBRARY)