kernel-netlink: Simplify rt_entry_t initialization
[strongswan.git] / Android.mk
1 LOCAL_PATH := $(call my-dir)
2 include $(CLEAR_VARS)
3
4 # the executables that should be installed on the final system have to be added
5 # to PRODUCT_PACKAGES in
6 # build/target/product/core.mk
7 # possible executables are
8 # starter - allows to control and configure the daemon from the command line
9 # charon - the IKE daemon
10 # scepclient - SCEP client
11
12 # if you enable starter or scepclient (see above) uncomment the proper
13 # lines here
14 # strongswan_BUILD_STARTER := true
15 # strongswan_BUILD_SCEPCLIENT := true
16
17 # this is the list of plugins that are built into libstrongswan and charon
18 # also these plugins are loaded by default (if not changed in strongswan.conf)
19 strongswan_CHARON_PLUGINS := android-log openssl fips-prf random nonce pubkey \
20 pkcs1 pkcs8 pem xcbc hmac kernel-netlink socket-default android-dns \
21 stroke eap-identity eap-mschapv2 eap-md5 eap-gtc
22
23 ifneq ($(strongswan_BUILD_SCEPCLIENT),)
24 # plugins loaded by scepclient
25 strongswan_SCEPCLIENT_PLUGINS := openssl curl fips-prf random pkcs1 pkcs7 pem
26 endif
27
28 strongswan_STARTER_PLUGINS := kernel-netlink
29
30 # list of all plugins - used to enable them with the function below
31 strongswan_PLUGINS := $(sort $(strongswan_CHARON_PLUGINS) \
32 $(strongswan_STARTER_PLUGINS) \
33 $(strongswan_SCEPCLIENT_PLUGINS))
34
35 include $(LOCAL_PATH)/Android.common.mk
36
37 # includes
38 strongswan_PATH := $(LOCAL_PATH)
39 libcurl_PATH := external/strongswan-support/libcurl/include
40 libgmp_PATH := external/strongswan-support/gmp
41 openssl_PATH := external/openssl/include
42
43 # some definitions
44 strongswan_DIR := "/system/bin"
45 strongswan_SBINDIR := "/system/bin"
46 strongswan_PIDDIR := "/data/misc/vpn"
47 strongswan_PLUGINDIR := "$(strongswan_IPSEC_DIR)/ipsec"
48 strongswan_CONFDIR := "/system/etc"
49 strongswan_STRONGSWAN_CONF := "$(strongswan_CONFDIR)/strongswan.conf"
50
51 # CFLAGS (partially from a configure run using droid-gcc)
52 strongswan_CFLAGS := \
53 -Wno-format \
54 -Wno-pointer-sign \
55 -Wno-pointer-arith \
56 -Wno-sign-compare \
57 -Wno-strict-aliasing \
58 -DHAVE___BOOL \
59 -DHAVE_STDBOOL_H \
60 -DHAVE_ALLOCA_H \
61 -DHAVE_ALLOCA \
62 -DHAVE_CLOCK_GETTIME \
63 -DHAVE_DLADDR \
64 -DHAVE_PRCTL \
65 -DHAVE_LINUX_UDP_H \
66 -DHAVE_STRUCT_SADB_X_POLICY_SADB_X_POLICY_PRIORITY \
67 -DHAVE_IPSEC_MODE_BEET \
68 -DHAVE_IPSEC_DIR_FWD \
69 -DOPENSSL_NO_ENGINE \
70 -DCONFIG_H_INCLUDED \
71 -DCAPABILITIES \
72 -DCAPABILITIES_NATIVE \
73 -DMONOLITHIC \
74 -DUSE_IKEV1 \
75 -DUSE_IKEV2 \
76 -DUSE_BUILTIN_PRINTF \
77 -DDEBUG \
78 -DROUTING_TABLE=0 \
79 -DROUTING_TABLE_PRIO=220 \
80 -DVERSION=\"$(strongswan_VERSION)\" \
81 -DPLUGINDIR=\"$(strongswan_PLUGINDIR)\" \
82 -DIPSEC_DIR=\"$(strongswan_DIR)\" \
83 -DIPSEC_PIDDIR=\"$(strongswan_PIDDIR)\" \
84 -DIPSEC_CONFDIR=\"$(strongswan_CONFDIR)\" \
85 -DSTRONGSWAN_CONF=\"$(strongswan_STRONGSWAN_CONF)\" \
86 -DDEV_RANDOM=\"/dev/random\" \
87 -DDEV_URANDOM=\"/dev/urandom\"
88
89 # only for Android 2.0+
90 strongswan_CFLAGS += \
91 -DHAVE_IN6ADDR_ANY
92
93 strongswan_BUILD := \
94 charon \
95 libcharon \
96 libstrongswan \
97 libtncif \
98 libtnccs \
99 libimcv \
100 libtpmtss
101
102 ifneq ($(strongswan_BUILD_STARTER),)
103 strongswan_BUILD += \
104 starter \
105 stroke \
106 ipsec
107 endif
108
109 ifneq ($(strongswan_BUILD_SCEPCLIENT),)
110 strongswan_BUILD += \
111 scepclient
112 endif
113
114 include $(addprefix $(LOCAL_PATH)/src/,$(addsuffix /Android.mk, \
115 $(sort $(strongswan_BUILD))))