support of PKCS#10 certificate request parsing
[strongswan.git] / src / libstrongswan / Makefile.am
1 lib_LTLIBRARIES = libstrongswan.la
2
3 libstrongswan_la_SOURCES = \
4 library.c library.h \
5 chunk.c chunk.h \
6 debug.c debug.h \
7 enum.c enum.h \
8 settings.h settings.c \
9 printf_hook.c printf_hook.h \
10 asn1/asn1.c asn1/asn1.h \
11 asn1/asn1_parser.c asn1/asn1_parser.h \
12 asn1/oid.c asn1/oid.h \
13 crypto/crypters/crypter.c crypto/crypters/crypter.h \
14 crypto/hashers/hasher.h crypto/hashers/hasher.c \
15 crypto/pkcs9.c crypto/pkcs9.h \
16 crypto/proposal/proposal_keywords.c crypto/proposal/proposal_keywords.h \
17 crypto/prfs/prf.c crypto/prfs/prf.h \
18 crypto/rngs/rng.c crypto/rngs/rng.h \
19 crypto/prf_plus.h crypto/prf_plus.c \
20 crypto/signers/signer.c crypto/signers/signer.h \
21 crypto/crypto_factory.c crypto/crypto_factory.h \
22 crypto/crypto_tester.c crypto/crypto_tester.h \
23 crypto/diffie_hellman.c crypto/diffie_hellman.h \
24 crypto/transform.c crypto/transform.h \
25 credentials/credential_factory.c credentials/credential_factory.h \
26 credentials/builder.c credentials/builder.h \
27 credentials/keys/key_encoding.c credentials/keys/key_encoding.h \
28 credentials/keys/private_key.c credentials/keys/private_key.h \
29 credentials/keys/public_key.c credentials/keys/public_key.h \
30 credentials/keys/shared_key.c credentials/keys/shared_key.h \
31 credentials/certificates/certificate.c credentials/certificates/certificate.h \
32 credentials/certificates/x509.h credentials/certificates/x509.c \
33 credentials/certificates/ac.h \
34 credentials/certificates/crl.h credentials/certificates/crl.c \
35 credentials/certificates/pkcs10.h \
36 credentials/certificates/ocsp_request.h \
37 credentials/certificates/ocsp_response.h credentials/certificates/ocsp_response.c \
38 database/database.h database/database_factory.h database/database_factory.c \
39 fetcher/fetcher.h fetcher/fetcher_manager.h fetcher/fetcher_manager.c \
40 utils.h utils.c \
41 utils/host.c utils/host.h \
42 utils/identification.c utils/identification.h \
43 utils/iterator.h \
44 utils/lexparser.c utils/lexparser.h \
45 utils/linked_list.c utils/linked_list.h \
46 utils/hashtable.c utils/hashtable.h \
47 utils/enumerator.c utils/enumerator.h \
48 utils/optionsfrom.c utils/optionsfrom.h \
49 utils/mutex.c utils/mutex.h \
50 utils/backtrace.c utils/backtrace.h \
51 plugins/plugin_loader.c plugins/plugin_loader.h plugins/plugin.h
52
53 libstrongswan_la_LIBADD = -lpthread $(DLLIB) $(BTLIB) $(SOCKLIB) $(RTLIB)
54
55 INCLUDES = -I$(top_srcdir)/src/libstrongswan
56 AM_CFLAGS = \
57 -DIPSEC_DIR=\"${ipsecdir}\" \
58 -DPLUGINDIR=\"${plugindir}\" \
59 -DSTRONGSWAN_CONF=\"${strongswan_conf}\"
60
61 if USE_LEAK_DETECTIVE
62   AM_CFLAGS += -DLEAK_DETECTIVE
63   libstrongswan_la_SOURCES += \
64     utils/leak_detective.c utils/leak_detective.h
65 endif
66
67 if USE_LOCK_PROFILER
68   AM_CFLAGS += -DLOCK_PROFILER
69 endif
70
71 if USE_INTEGRITY_TEST
72   AM_CFLAGS += -DINTEGRITY_TEST
73   libstrongswan_la_SOURCES += \
74     integrity_checker.c integrity_checker.h
75 endif
76
77 if USE_VSTR
78   libstrongswan_la_LIBADD += -lvstr
79 endif
80
81 EXTRA_DIST = \
82 asn1/oid.txt asn1/oid.pl \
83 crypto/proposal/proposal_keywords.txt
84
85 BUILT_SOURCES = \
86 $(srcdir)/asn1/oid.c $(srcdir)/asn1/oid.h \
87 $(srcdir)/crypto/proposal/proposal_keywords.c
88
89 MAINTAINERCLEANFILES = \
90 $(srcdir)/asn1/oid.c $(srcdir)/asn1/oid.h \
91 $(srcdir)/crypto/proposal/proposal_keywords.c
92
93 $(srcdir)/asn1/oid.c :  $(srcdir)/asn1/oid.pl $(srcdir)/asn1/oid.txt
94                 (cd $(srcdir)/asn1/ && $(PERL) oid.pl)
95
96 $(srcdir)/asn1/oid.h :  $(srcdir)/asn1/oid.pl $(srcdir)/asn1/oid.txt
97                 (cd $(srcdir)/asn1/ && $(PERL) oid.pl)
98
99 $(srcdir)/crypto/proposal/proposal_keywords.c:  $(srcdir)/crypto/proposal/proposal_keywords.txt \
100                                                                                                 $(srcdir)/crypto/proposal/proposal_keywords.h
101                 $(GPERF) -N proposal_get_token -m 10 -C -G -c -t -D < \
102                                                                                                 $(srcdir)/crypto/proposal/proposal_keywords.txt > $@
103
104
105 # build plugins with their own Makefile
106 #######################################
107
108 SUBDIRS = .
109
110 if USE_AES
111   SUBDIRS += plugins/aes
112 endif
113
114 if USE_DES
115   SUBDIRS += plugins/des
116 endif
117
118 if USE_BLOWFISH
119   SUBDIRS += plugins/blowfish
120 endif
121
122 if USE_MD4
123   SUBDIRS += plugins/md4
124 endif
125
126 if USE_MD5
127   SUBDIRS += plugins/md5
128 endif
129
130 if USE_SHA1
131   SUBDIRS += plugins/sha1
132 endif
133
134 if USE_SHA2
135   SUBDIRS += plugins/sha2
136 endif
137
138 if USE_FIPS_PRF
139   SUBDIRS += plugins/fips_prf
140 endif
141
142 if USE_GMP
143   SUBDIRS += plugins/gmp
144 endif
145
146 if USE_RANDOM
147   SUBDIRS += plugins/random
148 endif
149
150 if USE_HMAC
151   SUBDIRS += plugins/hmac
152 endif
153
154 if USE_XCBC
155   SUBDIRS += plugins/xcbc
156 endif
157
158 if USE_X509
159   SUBDIRS += plugins/x509
160 endif
161
162 if USE_PUBKEY
163   SUBDIRS += plugins/pubkey
164 endif
165
166 if USE_PKCS1
167   SUBDIRS += plugins/pkcs1
168 endif
169
170 if USE_PGP
171   SUBDIRS += plugins/pgp
172 endif
173
174 if USE_DNSKEY
175   SUBDIRS += plugins/dnskey
176 endif
177
178 if USE_PEM
179   SUBDIRS += plugins/pem
180 endif
181
182 if USE_CURL
183   SUBDIRS += plugins/curl
184 endif
185
186 if USE_LDAP
187   SUBDIRS += plugins/ldap
188 endif
189
190 if USE_MYSQL
191   SUBDIRS += plugins/mysql
192 endif
193
194 if USE_SQLITE
195   SUBDIRS += plugins/sqlite
196 endif
197
198 if USE_PADLOCK
199   SUBDIRS += plugins/padlock
200 endif
201
202 if USE_OPENSSL
203   SUBDIRS += plugins/openssl
204 endif
205
206 if USE_GCRYPT
207   SUBDIRS += plugins/gcrypt
208 endif
209
210 if USE_AGENT
211   SUBDIRS += plugins/agent
212 endif
213
214 if USE_TEST_VECTORS
215   SUBDIRS += plugins/test_vectors
216 endif