add a compatible memrchr() function if the platform does not support it (e.g. old...
[strongswan.git] / src / libstrongswan / Makefile.am
1 lib_LTLIBRARIES = libstrongswan.la
2
3 if USE_INTEGRITY_TEST
4   libstrongswan_la_SOURCES = \
5   fips/fips_canister_start.c \
6   fips/fips.c fips/fips.h
7 else
8   libstrongswan_la_SOURCES =
9 endif
10
11 libstrongswan_la_SOURCES += \
12 library.c library.h \
13 chunk.c chunk.h \
14 debug.c debug.h \
15 enum.c enum.h \
16 settings.h settings.c \
17 printf_hook.c printf_hook.h \
18 asn1/asn1.c asn1/asn1.h \
19 asn1/asn1_parser.c asn1/asn1_parser.h \
20 asn1/oid.c asn1/oid.h \
21 asn1/pem.c asn1/pem.h \
22 crypto/crypters/crypter.c crypto/crypters/crypter.h \
23 crypto/hashers/hasher.h crypto/hashers/hasher.c \
24 crypto/pkcs9.c crypto/pkcs9.h \
25 crypto/prfs/prf.c crypto/prfs/prf.h \
26 crypto/rngs/rng.c crypto/rngs/rng.h \
27 crypto/prf_plus.h crypto/prf_plus.c \
28 crypto/signers/signer.c crypto/signers/signer.h \
29 crypto/diffie_hellman.c crypto/diffie_hellman.h \
30 crypto/crypto_factory.c crypto/crypto_factory.h \
31 credentials/credential_factory.c credentials/credential_factory.h \
32 credentials/builder.c credentials/builder.h \
33 credentials/keys/private_key.c credentials/keys/private_key.h \
34 credentials/keys/public_key.c credentials/keys/public_key.h \
35 credentials/keys/shared_key.c credentials/keys/shared_key.h \
36 credentials/certificates/certificate.c credentials/certificates/certificate.h \
37 credentials/certificates/x509.h credentials/certificates/x509.c \
38 credentials/certificates/ac.h \
39 credentials/certificates/crl.h credentials/certificates/crl.c \
40 credentials/certificates/ocsp_request.h \
41 credentials/certificates/ocsp_response.h credentials/certificates/ocsp_response.c \
42 fetcher/fetcher.h fetcher/fetcher_manager.h fetcher/fetcher_manager.c \
43 database/database.h database/database_factory.h database/database_factory.c \
44 utils.h utils.c \
45 utils/host.c utils/host.h \
46 utils/identification.c utils/identification.h \
47 utils/iterator.h \
48 utils/lexparser.c utils/lexparser.h \
49 utils/linked_list.c utils/linked_list.h \
50 utils/memrchr.c \
51 utils/hashtable.c utils/hashtable.h \
52 utils/enumerator.c utils/enumerator.h \
53 utils/optionsfrom.c utils/optionsfrom.h \
54 utils/mutex.c utils/mutex.h \
55 utils/backtrace.c utils/backtrace.h \
56 plugins/plugin_loader.c plugins/plugin_loader.h plugins/plugin.h
57
58 libstrongswan_la_LIBADD = -lpthread -ldl
59
60 INCLUDES = -I$(top_srcdir)/src/libstrongswan
61 AM_CFLAGS = -DIPSEC_DIR=\"${ipsecdir}\" \
62                         -DIPSEC_PLUGINDIR=\"${plugindir}\"
63
64 if USE_LEAK_DETECTIVE
65   AM_CFLAGS += -DLEAK_DETECTIVE
66   libstrongswan_la_SOURCES += utils/leak_detective.c utils/leak_detective.h
67 endif
68
69 if USE_LOCK_PROFILER
70   AM_CFLAGS += -DLOCK_PROFILER
71 endif
72
73 if USE_INTEGRITY_TEST
74   libstrongswan_la_SOURCES += \
75   fips/fips_canister_end.c
76 endif
77
78 EXTRA_DIST = asn1/oid.txt asn1/oid.pl
79 BUILT_SOURCES = asn1/oid.c asn1/oid.h
80 MAINTAINERCLEANFILES = asn1/oid.c asn1/oid.h
81
82 asn1/oid.c :    asn1/oid.pl asn1/oid.txt
83                 (cd `dirname $<` && $(PERL) `basename $<`)
84
85 asn1/oid.h :    asn1/oid.pl asn1/oid.txt
86                 (cd `dirname $<` && $(PERL) `basename $<`)
87
88
89 # build plugins with their own Makefile
90 #######################################
91
92 SUBDIRS = .
93
94 if USE_AES
95   SUBDIRS += plugins/aes
96 endif
97
98 if USE_DES
99   SUBDIRS += plugins/des
100 endif
101
102 if USE_MD5
103   SUBDIRS += plugins/md5
104 endif
105
106 if USE_SHA1
107   SUBDIRS += plugins/sha1
108 endif
109
110 if USE_SHA2
111   SUBDIRS += plugins/sha2
112 endif
113
114 if USE_FIPS_PRF
115   SUBDIRS += plugins/fips_prf
116 endif
117
118 if USE_GMP
119   SUBDIRS += plugins/gmp
120 endif
121
122 if USE_RANDOM
123   SUBDIRS += plugins/random
124 endif
125
126 if USE_HMAC
127   SUBDIRS += plugins/hmac
128 endif
129
130 if USE_XCBC
131   SUBDIRS += plugins/xcbc
132 endif
133
134 if USE_X509
135   SUBDIRS += plugins/x509
136 endif
137
138 if USE_PUBKEY
139   SUBDIRS += plugins/pubkey
140 endif
141
142 if USE_CURL
143   SUBDIRS += plugins/curl
144 endif
145
146 if USE_LDAP
147   SUBDIRS += plugins/ldap
148 endif
149
150 if USE_MYSQL
151   SUBDIRS += plugins/mysql
152 endif
153
154 if USE_SQLITE
155   SUBDIRS += plugins/sqlite
156 endif
157
158 if USE_PADLOCK
159   SUBDIRS += plugins/padlock
160 endif
161
162 if USE_OPENSSL
163   SUBDIRS += plugins/openssl
164 endif
165
166 if USE_AGENT
167   SUBDIRS += plugins/agent
168 endif
169
170 if USE_INTEGRITY_TEST
171   SUBDIRS += fips
172 endif