1 # Makefile for common gnupg modules
2 # Copyright (C) 2001, 2003, 2007, 2010 Free Software Foundation, Inc.
4 # This file is part of GnuPG.
6 # GnuPG is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # GnuPG is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, see <http://www.gnu.org/licenses/>.
19 ## Process this file with automake to produce Makefile.in
21 EXTRA_DIST = mkstrtable.awk exaudit.awk exstatus.awk ChangeLog-2011 \
22 audit-events.h status-codes.h ChangeLog.jnlib \
23 ChangeLog-2011.include w32info-rc.h.in gnupg.ico tls-ca.pem
25 noinst_LIBRARIES = libcommon.a libcommonpth.a libgpgrl.a \
26 libcommontls.a libcommontlsnpth.a
28 noinst_LIBRARIES += libsimple-pwquery.a
30 noinst_PROGRAMS = $(module_tests) $(module_maint_tests)
31 TESTS = $(module_tests)
33 BUILT_SOURCES = audit-events.h status-codes.h
35 MAINTAINERCLEANFILES = audit-events.h status-codes.h
39 AM_CFLAGS = $(LIBGCRYPT_CFLAGS) $(LIBASSUAN_CFLAGS) $(KSBA_CFLAGS)
41 include $(top_srcdir)/am/cmacros.am
46 util.h i18n.c i18n.h \
47 types.h host2net.h dynload.h w32help.h \
48 mapstrings.c stringhelp.c stringhelp.h \
50 utf8conv.c utf8conv.h \
51 argparse.c argparse.h \
54 mischelp.c mischelp.h \
64 sysutils.c sysutils.h \
68 b64enc.c b64dec.c zb32.c \
71 mbox-util.c mbox-util.h \
78 asshelp.c asshelp2.c asshelp.h \
84 session-env.c session-env.h \
87 ssh-utils.c ssh-utils.h \
93 common_sources += w32-reg.c w32-afunix.c w32-afunix.h
96 # Sources possible requiring a TLS library are put into a separate
102 # To make the code easier to read we have split home some code into
103 # separate source files.
106 common_sources += exechelp-w32ce.c
108 common_sources += exechelp-w32.c
111 common_sources += exechelp-posix.c
114 # Sources only useful without NPTH.
115 without_npth_sources = \
116 get-passphrase.c get-passphrase.h
119 libcommon_a_SOURCES = $(common_sources) $(without_npth_sources)
121 libcommon_a_SOURCES += srv.c
123 libcommon_a_CFLAGS = $(AM_CFLAGS) $(LIBASSUAN_CFLAGS) -DWITHOUT_NPTH=1
125 libcommonpth_a_SOURCES = $(common_sources)
127 libcommonpth_a_SOURCES += srv.c
129 libcommonpth_a_CFLAGS = $(AM_CFLAGS) $(LIBASSUAN_CFLAGS) $(NPTH_CFLAGS)
131 libcommontls_a_SOURCES = $(tls_sources)
132 libcommontls_a_CFLAGS = $(AM_CFLAGS) $(LIBGNUTLS_CFLAGS) -DWITHOUT_NPTH=1
134 libcommontlsnpth_a_SOURCES = $(tls_sources)
135 libcommontlsnpth_a_CFLAGS = $(AM_CFLAGS) $(LIBGNUTLS_CFLAGS) $(NPTH_CFLAGS)
137 if !HAVE_W32CE_SYSTEM
138 libsimple_pwquery_a_SOURCES = \
139 simple-pwquery.c simple-pwquery.h asshelp.c asshelp.h
140 libsimple_pwquery_a_CFLAGS = $(AM_CFLAGS) $(LIBASSUAN_CFLAGS)
143 libgpgrl_a_SOURCES = \
147 # Note: Due to the dependency on Makefile, the file will always be
148 # rebuilt, so we allow this only in maintainer mode.
150 # Create the audit-events.h include file from audit.h
151 # Note: We create the target file in the source directory because it
152 # is a distributed built source. If we would not do that we may end
153 # up with two files and then it is not clear which version of the
154 # files will be picked up.
155 audit-events.h: Makefile.am mkstrtable.awk exaudit.awk audit.h
156 $(AWK) -f $(srcdir)/exaudit.awk $(srcdir)/audit.h \
157 | $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=3 -v nogettext=1 \
158 -v namespace=eventstr_ > $(srcdir)/audit-events.h
160 # Create the status-codes.h include file from status.h
161 status-codes.h: Makefile.am mkstrtable.awk exstatus.awk status.h
162 $(AWK) -f $(srcdir)/exstatus.awk $(srcdir)/status.h \
163 | $(AWK) -f $(srcdir)/mkstrtable.awk -v textidx=3 -v nogettext=1 \
164 -v namespace=statusstr_ > $(srcdir)/status-codes.h
170 module_tests = t-stringhelp t-timestuff \
171 t-convert t-percent t-gettime t-sysutils t-sexputil \
172 t-session-env t-openpgp-oid t-ssh-utils \
173 t-mapstrings t-zb32 t-mbox-util t-iobuf
174 if !HAVE_W32CE_SYSTEM
175 module_tests += t-exechelp
178 module_tests += t-w32-reg
182 module_maint_tests = t-helpfile t-b64 t-http
187 t_extra_src = t-support.h
189 t_common_cflags = $(KSBA_CFLAGS) $(LIBGCRYPT_CFLAGS) \
190 $(LIBASSUAN_CFLAGS) $(GPG_ERROR_CFLAGS)
191 t_common_ldadd = libcommon.a \
192 $(LIBGCRYPT_LIBS) $(LIBASSUAN_LIBS) $(GPG_ERROR_LIBS) \
193 $(LIBINTL) $(LIBICONV)
197 t_stringhelp_SOURCES = t-stringhelp.c $(t_extra_src)
198 t_stringhelp_LDADD = $(t_common_ldadd)
200 t_timestuff_SOURCES = t-timestuff.c $(t_extra_src)
201 t_timestuff_LDADD = $(t_common_ldadd)
203 t_convert_LDADD = $(t_common_ldadd)
204 t_percent_LDADD = $(t_common_ldadd)
205 t_gettime_LDADD = $(t_common_ldadd)
206 t_sysutils_LDADD = $(t_common_ldadd)
207 t_helpfile_LDADD = $(t_common_ldadd)
208 t_sexputil_LDADD = $(t_common_ldadd)
209 t_b64_LDADD = $(t_common_ldadd)
210 t_exechelp_LDADD = $(t_common_ldadd)
211 t_session_env_LDADD = $(t_common_ldadd)
212 t_openpgp_oid_LDADD = $(t_common_ldadd)
213 t_ssh_utils_LDADD = $(t_common_ldadd)
214 t_mapstrings_LDADD = $(t_common_ldadd)
215 t_zb32_LDADD = $(t_common_ldadd)
216 t_mbox_util_LDADD = $(t_common_ldadd)
217 t_iobuf_LDADD = $(t_common_ldadd)
219 # System specific test
221 t_w32_reg_SOURCES = t-w32-reg.c $(t_extra_src)
222 t_w32_reg_LDADD = $(t_common_ldadd)
226 t_http_SOURCES = t-http.c
227 t_http_CFLAGS = $(t_common_cflags) $(NTBTLS_CFLAGS) $(LIBGNUTLS_CFLAGS)
228 t_http_LDADD = libcommontls.a $(t_common_ldadd) \
229 $(NTBTLS_LIBS) $(LIBGNUTLS_LIBS) $(DNSLIBS)
231 # All programs should depend on the created libs.
232 $(PROGRAMS) : libcommon.a libcommonpth.a libcommontls.a libcommontlsnpth.a