]> git.ipfire.org Git - thirdparty/strongswan.git/blobdiff - src/libstrongswan/Makefile.am
implemented a pgp plugin providing PGP key parsing builders
[thirdparty/strongswan.git] / src / libstrongswan / Makefile.am
index fc642c6152bef4e17559799f1770d00107fbf40e..23c42f6744e7089be75a1c85e03512f0f7d9a19a 100644 (file)
 lib_LTLIBRARIES = libstrongswan.la
 
-if USE_INTEGRITY_TEST
-  libstrongswan_la_SOURCES = \
-  fips/fips_canister_start.c \
-  fips/fips.c fips/fips.h
-else
-  libstrongswan_la_SOURCES =
-endif
-
-libstrongswan_la_SOURCES += \
-credential_store.h \
+libstrongswan_la_SOURCES = \
 library.c library.h \
 chunk.c chunk.h \
 debug.c debug.h \
 enum.c enum.h \
+settings.h settings.c \
 printf_hook.c printf_hook.h \
 asn1/asn1.c asn1/asn1.h \
+asn1/asn1_parser.c asn1/asn1_parser.h \
 asn1/oid.c asn1/oid.h \
-asn1/pem.c asn1/pem.h \
-asn1/ttodata.c asn1/ttodata.h \
-crypto/ac.c crypto/ac.h \
-crypto/ca.c crypto/ca.h \
-crypto/certinfo.c crypto/certinfo.h \
-crypto/crl.c crypto/crl.h \
 crypto/crypters/crypter.c crypto/crypters/crypter.h \
-crypto/crypters/aes_cbc_crypter.c crypto/crypters/aes_cbc_crypter.h \
-crypto/crypters/des_crypter.c crypto/crypters/des_crypter.h \
-crypto/diffie_hellman.c crypto/diffie_hellman.h \
 crypto/hashers/hasher.h crypto/hashers/hasher.c \
-crypto/hashers/sha1_hasher.c crypto/hashers/sha1_hasher.h \
-crypto/hashers/sha2_hasher.c crypto/hashers/sha2_hasher.h \
-crypto/hashers/md5_hasher.c  crypto/hashers/md5_hasher.h \
-crypto/hmac.c crypto/hmac.h \
-crypto/ietf_attr_list.c crypto/ietf_attr_list.h \
-crypto/ocsp.c crypto/ocsp.h \
-crypto/pkcs7.c crypto/pkcs7.h \
 crypto/pkcs9.c crypto/pkcs9.h \
-crypto/prfs/fips_prf.c crypto/prfs/fips_prf.h \
-crypto/prfs/hmac_prf.c crypto/prfs/hmac_prf.h \
+crypto/proposal/proposal_keywords.c crypto/proposal/proposal_keywords.h \
 crypto/prfs/prf.c crypto/prfs/prf.h \
+crypto/rngs/rng.c crypto/rngs/rng.h \
 crypto/prf_plus.h crypto/prf_plus.c \
-crypto/rsa/rsa_private_key.c crypto/rsa/rsa_private_key.h \
-crypto/rsa/rsa_public_key.h  crypto/rsa/rsa_public_key.c \
-crypto/signers/hmac_signer.c crypto/signers/hmac_signer.h \
 crypto/signers/signer.c crypto/signers/signer.h \
-crypto/x509.c crypto/x509.h \
-utils/fetcher.c utils/fetcher.h \
+crypto/crypto_factory.c crypto/crypto_factory.h \
+crypto/crypto_tester.c crypto/crypto_tester.h \
+crypto/diffie_hellman.c crypto/diffie_hellman.h \
+crypto/transform.c crypto/transform.h \
+credentials/credential_factory.c credentials/credential_factory.h \
+credentials/builder.c credentials/builder.h \
+credentials/keys/private_key.c credentials/keys/private_key.h \
+credentials/keys/public_key.c credentials/keys/public_key.h \
+credentials/keys/shared_key.c credentials/keys/shared_key.h \
+credentials/certificates/certificate.c credentials/certificates/certificate.h \
+credentials/certificates/x509.h credentials/certificates/x509.c \
+credentials/certificates/ac.h \
+credentials/certificates/crl.h credentials/certificates/crl.c \
+credentials/certificates/ocsp_request.h \
+credentials/certificates/ocsp_response.h credentials/certificates/ocsp_response.c \
+database/database.h database/database_factory.h database/database_factory.c \
+fetcher/fetcher.h fetcher/fetcher_manager.h fetcher/fetcher_manager.c \
+pgp/pgp.c pgp/pgp.h \
+utils.h utils.c \
 utils/host.c utils/host.h \
 utils/identification.c utils/identification.h \
 utils/iterator.h \
-utils/leak_detective.c utils/leak_detective.h \
 utils/lexparser.c utils/lexparser.h \
 utils/linked_list.c utils/linked_list.h \
+utils/hashtable.c utils/hashtable.h \
 utils/enumerator.c utils/enumerator.h \
 utils/optionsfrom.c utils/optionsfrom.h \
-utils/randomizer.c utils/randomizer.h
+utils/mutex.c utils/mutex.h \
+utils/backtrace.c utils/backtrace.h \
+plugins/plugin_loader.c plugins/plugin_loader.h plugins/plugin.h
+
+libstrongswan_la_LIBADD = -lpthread $(DLLIB) $(BTLIB) $(SOCKLIB)
+
+INCLUDES = -I$(top_srcdir)/src/libstrongswan
+AM_CFLAGS = \
+-DIPSEC_DIR=\"${ipsecdir}\" \
+-DIPSEC_PLUGINDIR=\"${plugindir}\"
+
+if USE_LEAK_DETECTIVE
+  AM_CFLAGS += -DLEAK_DETECTIVE
+  libstrongswan_la_SOURCES += \
+    utils/leak_detective.c utils/leak_detective.h
+endif
+
+if USE_LOCK_PROFILER
+  AM_CFLAGS += -DLOCK_PROFILER
+endif
 
 if USE_INTEGRITY_TEST
+  AM_CFLAGS += -DINTEGRITY_TEST
   libstrongswan_la_SOURCES += \
-  fips/fips_canister_end.c
+    integrity_checker.c integrity_checker.h
 endif
 
-libstrongswan_la_LIBADD = -lgmp -lpthread
+if USE_VSTR
+  libstrongswan_la_LIBADD += -lvstr
+endif
 
-INCLUDES = -I$(top_srcdir)/src/libstrongswan
+EXTRA_DIST = \
+asn1/oid.txt asn1/oid.pl \
+crypto/proposal/proposal_keywords.txt
 
-if USE_LEAK_DETECTIVE
-  libstrongswan_la_LIBADD += -ldl
-  AM_CFLAGS = -DLEAK_DETECTIVE
+BUILT_SOURCES = \
+$(srcdir)/asn1/oid.c $(srcdir)/asn1/oid.h \
+$(srcdir)/crypto/proposal/proposal_keywords.c
+
+MAINTAINERCLEANFILES = \
+$(srcdir)/asn1/oid.c $(srcdir)/asn1/oid.h \
+$(srcdir)/crypto/proposal/proposal_keywords.c
+
+$(srcdir)/asn1/oid.c : $(srcdir)/asn1/oid.pl $(srcdir)/asn1/oid.txt
+               (cd $(srcdir)/asn1/ && $(PERL) oid.pl)
+
+$(srcdir)/asn1/oid.h : $(srcdir)/asn1/oid.pl $(srcdir)/asn1/oid.txt
+               (cd $(srcdir)/asn1/ && $(PERL) oid.pl)
+
+$(srcdir)/crypto/proposal/proposal_keywords.c: $(srcdir)/crypto/proposal/proposal_keywords.txt \
+                                                                                               $(srcdir)/crypto/proposal/proposal_keywords.h
+               $(GPERF) -N proposal_get_token -m 10 -C -G -c -t -D < \
+                                                                                               $(srcdir)/crypto/proposal/proposal_keywords.txt > $@
+
+
+# build plugins with their own Makefile
+#######################################
+
+SUBDIRS = .
+
+if USE_AES
+  SUBDIRS += plugins/aes
 endif
 
-if USE_LIBCURL
-  libstrongswan_la_LIBADD += -lcurl
+if USE_DES
+  SUBDIRS += plugins/des
 endif
 
-if USE_LIBLDAP
-  libstrongswan_la_LIBADD += -lldap -llber
+if USE_BLOWFISH
+  SUBDIRS += plugins/blowfish
 endif
 
-EXTRA_DIST = asn1/oid.txt asn1/oid.pl
-BUILT_SOURCES = asn1/oid.c asn1/oid.h
-MAINTAINERCLEANFILES = asn1/oid.c asn1/oid.h
+if USE_MD4
+  SUBDIRS += plugins/md4
+endif
 
-asn1/oid.c :   asn1/oid.txt asn1/oid.pl
-               cd asn1 && $(PERL) oid.pl
+if USE_MD5
+  SUBDIRS += plugins/md5
+endif
 
-asn1/oid.h :   asn1/oid.txt asn1/oid.pl
-               cd asn1 && $(PERL) oid.pl
+if USE_SHA1
+  SUBDIRS += plugins/sha1
+endif
 
-if USE_INTEGRITY_TEST
-# build fips_signer which in turn builds fips_signature.h
-#########################################################
-noinst_PROGRAMS = fips_signer
-fips_signer_SOURCES = fips/fips_signer.c
-fips_signer_LDADD = libstrongswan.la
+if USE_SHA2
+  SUBDIRS += plugins/sha2
+endif
+
+if USE_FIPS_PRF
+  SUBDIRS += plugins/fips_prf
+endif
 
-BUILT_SOURCES += fips_signature.h
-CLEANFILES = fips_signature.h fips_signer
+if USE_GMP
+  SUBDIRS += plugins/gmp
+endif
+
+if USE_RANDOM
+  SUBDIRS += plugins/random
+endif
+
+if USE_HMAC
+  SUBDIRS += plugins/hmac
+endif
+
+if USE_XCBC
+  SUBDIRS += plugins/xcbc
+endif
+
+if USE_X509
+  SUBDIRS += plugins/x509
+endif
+
+if USE_PUBKEY
+  SUBDIRS += plugins/pubkey
+endif
+
+if USE_PKCS1
+  SUBDIRS += plugins/pkcs1
+endif
+
+if USE_PGP
+  SUBDIRS += plugins/pgp
+endif
+
+if USE_PEM
+  SUBDIRS += plugins/pem
+endif
+
+if USE_CURL
+  SUBDIRS += plugins/curl
+endif
+
+if USE_LDAP
+  SUBDIRS += plugins/ldap
+endif
+
+if USE_MYSQL
+  SUBDIRS += plugins/mysql
+endif
+
+if USE_SQLITE
+  SUBDIRS += plugins/sqlite
+endif
+
+if USE_PADLOCK
+  SUBDIRS += plugins/padlock
+endif
+
+if USE_OPENSSL
+  SUBDIRS += plugins/openssl
+endif
+
+if USE_GCRYPT
+  SUBDIRS += plugins/gcrypt
+endif
+
+if USE_AGENT
+  SUBDIRS += plugins/agent
+endif
 
-fips_signature.h : fips_signer
-                  ./fips_signer
+if USE_TEST_VECTORS
+  SUBDIRS += plugins/test_vectors
 endif