updated makefiles
[gnutls.git] / lib / Makefile.am
blob51474bae99d4a80eb87009e433e824938b19cb0f
1 ## Process this file with automake to produce Makefile.in
2 # Copyright (C) 2000-2012 Free Software Foundation, Inc.
4 # Author: Nikos Mavrogiannopoulos
6 # This file is part of GnuTLS.
8 # The GnuTLS is free software; you can redistribute it and/or
9 # modify it under the terms of the GNU Lesser General Public License
10 # as published by the Free Software Foundation; either version 3 of
11 # the License, or (at your option) any later version.
13 # The GnuTLS is distributed in the hope that it will be
14 # useful, but WITHOUT ANY WARRANTY; without even the implied warranty
15 # of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 # Lesser General Public License for more details.
18 # You should have received a copy of the GNU Lesser General Public License
19 # along with this program.  If not, see <http://www.gnu.org/licenses/>
21 ACLOCAL_AMFLAGS = -I ../m4 -I ../gl/m4
23 SUBDIRS = includes x509 accelerated auth ext algorithms extras
24 if ENABLE_MINITASN1
25 SUBDIRS += minitasn1
26 endif
28 localedir = $(datadir)/locale
30 AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS)
31 AM_CPPFLAGS = \
32         -DLOCALEDIR=\"$(localedir)\"            \
33         -I$(srcdir)/../gl                       \
34         -I$(builddir)/../gl                     \
35         -I$(builddir)/includes                  \
36         -I$(builddir)/x509                      \
37         -I$(srcdir)/includes                    \
38         -I$(builddir)/includes                  \
39         -I$(srcdir)/x509                        \
40         $(LIBTASN1_CFLAGS)                      \
41         $(P11_KIT_CFLAGS)
43 if ENABLE_OPENPGP
44 SUBDIRS += opencdk
45 SUBDIRS += openpgp
46 AM_CPPFLAGS += -I$(srcdir)/opencdk
47 endif
49 if ENABLE_MINITASN1
50 AM_CPPFLAGS += -I$(srcdir)/minitasn1
51 endif
53 # Pkg-config script.
54 pkgconfigdir = $(libdir)/pkgconfig
55 pkgconfig_DATA = gnutls.pc
56 DISTCLEANFILES = $(pkgconfig_DATA)
58 lib_LTLIBRARIES = libgnutls.la
60 SRP_COBJECTS = gnutls_srp.c
62 PSK_COBJECTS = gnutls_psk.c
64 COBJECTS = gnutls_record.c gnutls_compress.c debug.c gnutls_cipher.c    \
65         gnutls_mbuffers.c gnutls_buffers.c gnutls_handshake.c           \
66         gnutls_num.c gnutls_errors.c gnutls_dh.c gnutls_kx.c            \
67         gnutls_priority.c gnutls_hash_int.c gnutls_cipher_int.c         \
68         gnutls_session.c gnutls_db.c x509_b64.c gnutls_extensions.c     \
69         gnutls_auth.c gnutls_v2_compat.c gnutls_datum.c                 \
70         gnutls_session_pack.c gnutls_mpi.c gnutls_pk.c gnutls_cert.c    \
71         gnutls_global.c gnutls_constate.c gnutls_anon_cred.c            \
72         $(srcdir)/pkix_asn1_tab.c                               \
73         $(srcdir)/gnutls_asn1_tab.c                             \
74         gnutls_mem.c gnutls_ui.c                                        \
75         gnutls_sig.c gnutls_ecc.c gnutls_dh_primes.c gnutls_alert.c     \
76         system.c gnutls_str.c gnutls_state.c gnutls_x509.c              \
77         gnutls_rsa_export.c gnutls_helper.c gnutls_supplemental.c       \
78         random.c crypto-api.c gnutls_privkey.c gnutls_pcert.c           \
79         gnutls_pubkey.c locks.c hash.c gnutls_dtls.c system_override.c  \
80         crypto-backend.c verify-tofu.c
82 if ENABLE_PKCS11
83 COBJECTS += pkcs11.c pkcs11_privkey.c pkcs11_write.c pkcs11_secret.c
84 endif
86 if ENABLE_NETTLE
87 SUBDIRS += nettle
88 endif
90 HFILES = abstract_int.h debug.h gnutls_compress.h gnutls_cipher.h       \
91         gnutls_buffers.h gnutls_errors.h gnutls_int.h gnutls_dtls.h     \
92         gnutls_handshake.h gnutls_num.h algorithms.h            \
93         gnutls_dh.h gnutls_kx.h gnutls_hash_int.h gnutls_cipher_int.h   \
94         gnutls_db.h gnutls_auth.h gnutls_extensions.h   \
95         x509_b64.h gnutls_v2_compat.h gnutls_datum.h \
96         gnutls_mpi.h gnutls_pk.h gnutls_record.h                \
97         gnutls_constate.h gnutls_global.h gnutls_sig.h gnutls_mem.h     \
98         gnutls_session_pack.h gnutls_str.h gnutls_str_array.h           \
99         gnutls_state.h gnutls_x509.h crypto-backend.h                   \
100         gnutls_rsa_export.h gnutls_srp.h auth/srp.h auth/srp_passwd.h   \
101         gnutls_helper.h gnutls_supplemental.h crypto.h random.h system.h\
102         locks.h gnutls_mbuffers.h hash.h gnutls_ecc.h
104 if ENABLE_PKCS11
105 HFILES += pkcs11_int.h
106 endif
108 # Separate so we can create the documentation
110 libgnutls_la_SOURCES = $(HFILES) $(COBJECTS) $(SRP_COBJECTS)    \
111         $(PSK_COBJECTS) \
112         gnutls.asn pkix.asn libgnutls.map
114 libgnutls_la_LDFLAGS = -no-undefined \
115         -version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
117 libgnutls_la_LIBADD = ../gl/libgnu.la x509/libgnutls_x509.la \
118         accelerated/libaccelerated.la ext/libgnutls_ext.la \
119         auth/libgnutls_auth.la algorithms/libgnutls_alg.la \
120         extras/libgnutls_extras.la \
121         $(LTLIBZ)  $(LTLIBINTL) $(LIBSOCKET) $(LTLIBDL) \
122         $(LTLIBPTHREAD) $(P11_KIT_LIBS) $(LIB_SELECT)
124 if ENABLE_OPENPGP
125 libgnutls_la_LIBADD += openpgp/libgnutls_openpgp.la
126 libgnutls_la_LIBADD += opencdk/libminiopencdk.la
127 endif
129 if HAVE_LD_VERSION_SCRIPT
130 libgnutls_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libgnutls.map
131 else
132 libgnutls_la_LDFLAGS += -export-symbols-regex '^(gnutls|_gnutls).*'
133 endif
135 if ENABLE_MINITASN1
136 libgnutls_la_LIBADD += minitasn1/libminitasn1.la
137 else
138 libgnutls_la_LDFLAGS += $(LIBTASN1_LIBS)
139 endif
141 if ENABLE_NETTLE
142 libgnutls_la_LDFLAGS += $(LTLIBNETTLE)
143 libgnutls_la_LIBADD += nettle/libcrypto.la
144 endif
146 if WINDOWS
147 libgnutls_la_LDFLAGS += -lcrypt32
148 endif
150 if HAVE_LD_OUTPUT_DEF
151 libgnutls_la_LDFLAGS += -Wl,--output-def,libgnutls-$(DLL_VERSION).def
152 libgnutls-$(DLL_VERSION).def: libgnutls.la
153 defexecdir = $(bindir)
154 defexec_DATA = libgnutls-$(DLL_VERSION).def
155 DISTCLEANFILES += $(defexec_DATA)
156 endif
158 # C++ library
160 if ENABLE_CXX
161 libgnutlsxx_la_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_builddir)/includes -I$(srcdir)/includes
163 AM_CXXFLAGS = \
164         -I$(srcdir)/includes    \
165         -I$(builddir)/includes  
167 lib_LTLIBRARIES += libgnutlsxx.la
169 libgnutlsxx_la_SOURCES = gnutlsxx.cpp libgnutlsxx.map
171 libgnutlsxx_la_LDFLAGS = -no-undefined \
172         -version-info $(CXX_LT_CURRENT):$(CXX_LT_REVISION):$(CXX_LT_AGE)
174 libgnutlsxx_la_LIBADD = libgnutls.la
176 if HAVE_LD_VERSION_SCRIPT
177 libgnutlsxx_la_LDFLAGS += -Wl,--version-script=$(srcdir)/libgnutlsxx.map
178 endif
179 endif
181 pkix_asn1_tab.c: $(srcdir)/pkix.asn
182         -asn1Parser $(srcdir)/pkix.asn pkix_asn1_tab.c
184 gnutls_asn1_tab.c: $(srcdir)/gnutls.asn
185         -asn1Parser $(srcdir)/gnutls.asn gnutls_asn1_tab.c