2003-06-05 09:14:21 +02:00
|
|
|
# Copyright (C) 1998, 1999, 2000, 2001, 2002,
|
2010-04-14 16:39:16 +02:00
|
|
|
# 2003, 2006, 2010 Free Software Foundation, Inc.
|
2003-06-05 09:14:21 +02:00
|
|
|
#
|
|
|
|
# This file is part of GnuPG.
|
|
|
|
#
|
|
|
|
# GnuPG is free software; you can redistribute it and/or modify
|
|
|
|
# it under the terms of the GNU General Public License as published by
|
2007-07-04 21:49:40 +02:00
|
|
|
# the Free Software Foundation; either version 3 of the License, or
|
2003-06-05 09:14:21 +02:00
|
|
|
# (at your option) any later version.
|
2011-02-04 12:57:53 +01:00
|
|
|
#
|
2003-06-05 09:14:21 +02:00
|
|
|
# GnuPG is distributed in the hope that it will be useful,
|
|
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
# GNU General Public License for more details.
|
2011-02-04 12:57:53 +01:00
|
|
|
#
|
2003-06-05 09:14:21 +02:00
|
|
|
# You should have received a copy of the GNU General Public License
|
2016-11-05 12:02:19 +01:00
|
|
|
# along with this program; if not, see <https://www.gnu.org/licenses/>.
|
2003-06-05 09:14:21 +02:00
|
|
|
|
|
|
|
## Process this file with automake to produce Makefile.in
|
|
|
|
|
2017-04-17 16:51:55 +02:00
|
|
|
EXTRA_DIST = distsigkey.gpg \
|
2015-10-05 19:48:47 +02:00
|
|
|
ChangeLog-2011 gpg-w32info.rc \
|
2015-11-17 12:55:42 +01:00
|
|
|
gpg.w32-manifest.in test.c t-keydb-keyring.kbx \
|
2017-03-20 10:30:08 +01:00
|
|
|
t-keydb-get-keyblock.gpg t-stutter-data.asc \
|
|
|
|
all-tests.scm
|
2004-02-12 10:28:52 +01:00
|
|
|
|
2017-03-07 12:21:23 +01:00
|
|
|
AM_CPPFLAGS =
|
2004-02-12 10:28:52 +01:00
|
|
|
|
|
|
|
include $(top_srcdir)/am/cmacros.am
|
|
|
|
|
g10: Add TOFU support.
* configure.ac: Check for sqlite3.
(SQLITE3_CFLAGS): AC_SUBST it.
(SQLITE3_LIBS): Likewise.
* g10/Makefile.am (AM_CFLAGS): Add $(SQLITE3_CFLAGS).
(gpg2_SOURCES): Add tofu.h and tofu.c.
(gpg2_LDADD): Add $(SQLITE3_LIBS).
* g10/tofu.c: New file.
* g10/tofu.h: New file.
* g10/options.h (trust_model): Define TM_TOFU and TM_TOFU_PGP.
(tofu_db_format): Define.
* g10/packet.h (PKT_signature): Add fields digest and digest_len.
* g10/gpg.c: Include "tofu.h".
(cmd_and_opt_values): Declare aTOFUPolicy, oTOFUDefaultPolicy,
oTOFUDBFormat.
(opts): Add them.
(parse_trust_model): Recognize the tofu and tofu+pgp trust models.
(parse_tofu_policy): New function.
(parse_tofu_db_format): New function.
(main): Initialize opt.tofu_default_policy and opt.tofu_db_format.
Handle aTOFUPolicy, oTOFUDefaultPolicy and oTOFUDBFormat.
* g10/mainproc.c (do_check_sig): If the signature is good, copy the
hash to SIG->DIGEST and set SIG->DIGEST_LEN appropriately.
* g10/trustdb.h (get_validity): Add arguments sig and may_ask. Update
callers.
(tdb_get_validity_core): Add arguments sig and may_ask. Update
callers.
* g10/trust.c (get_validity) Add arguments sig and may_ask. Pass them
to tdb_get_validity_core.
* g10/trustdb.c: Include "tofu.h".
(trust_model_string): Handle TM_TOFU and TM_TOFU_PGP.
(tdb_get_validity_core): Add arguments sig and may_ask. If
OPT.TRUST_MODEL is TM_TOFU or TM_TOFU_PGP, compute the TOFU trust
level. Combine it with the computed PGP trust level, if appropriate.
* g10/keyedit.c: Include "tofu.h".
(show_key_with_all_names_colon): If the trust mode is tofu or
tofu+pgp, then show the trust policy.
* g10/keylist.c: Include "tofu.h".
(public_key_list): Also show the PGP stats if the trust model is
TM_TOFU_PGP.
(list_keyblock_colon): If the trust mode is tofu or
tofu+pgp, then show the trust policy.
* g10/pkclist.c: Include "tofu.h".
* g10/gpgv.c (get_validity): Add arguments sig and may_ask.
(enum tofu_policy): Define.
(tofu_get_policy): New stub.
(tofu_policy_str): Likewise.
* g10/test-stubs.c (get_validity): Add arguments sig and may_ask.
(enum tofu_policy): Define.
(tofu_get_policy): New stub.
(tofu_policy_str): Likewise.
* doc/DETAILS: Describe the TOFU Policy field.
* doc/gpg.texi: Document --tofu-set-policy, --trust-model=tofu,
--trust-model=tofu+pgp, --tofu-default-policy and --tofu-db-format.
* tests/openpgp/Makefile.am (TESTS): Add tofu.test.
(TEST_FILES): Add tofu-keys.asc, tofu-keys-secret.asc,
tofu-2183839A-1.txt, tofu-BC15C85A-1.txt and tofu-EE37CF96-1.txt.
(CLEANFILES): Add tofu.db.
(clean-local): Add tofu.d.
* tests/openpgp/tofu.test: New file.
* tests/openpgp/tofu-2183839A-1.txt: New file.
* tests/openpgp/tofu-BC15C85A-1.txt: New file.
* tests/openpgp/tofu-EE37CF96-1.txt: New file.
* tests/openpgp/tofu-keys.asc: New file.
* tests/openpgp/tofu-keys-secret.asc: New file.
--
Signed-off-by: Neal H. Walfield <neal@g10code.com>.
2015-10-18 18:44:05 +02:00
|
|
|
AM_CFLAGS = $(SQLITE3_CFLAGS) $(LIBGCRYPT_CFLAGS) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_CFLAGS) $(NPTH_CFLAGS) $(GPG_ERROR_CFLAGS)
|
2004-02-12 10:28:52 +01:00
|
|
|
|
2020-04-03 08:30:08 +02:00
|
|
|
needed_libs = ../kbx/libkeybox.a $(libcommonpth) ../regexp/libregexp.a
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2016-04-04 17:42:24 +02:00
|
|
|
# Because there are no program specific transform macros we need to
|
2016-04-21 09:18:10 +02:00
|
|
|
# work around that to allow installing gpg as gpg2.
|
2016-04-04 17:42:24 +02:00
|
|
|
gpg2_hack_list = gpg gpgv
|
|
|
|
if USE_GPG2_HACK
|
|
|
|
gpg2_hack_uninst = gpg2 gpgv2
|
|
|
|
use_gpg2_hack = yes
|
|
|
|
else
|
|
|
|
gpg2_hack_uninst = $(gpg2_hack_list)
|
|
|
|
use_gpg2_hack = no
|
|
|
|
endif
|
|
|
|
|
|
|
|
# NB: We use noinst_ for gpg and gpgv so that we can install them with
|
|
|
|
# the install-hook target under the name gpg2/gpgv2.
|
|
|
|
noinst_PROGRAMS = gpg
|
2010-04-14 16:39:16 +02:00
|
|
|
if !HAVE_W32CE_SYSTEM
|
2016-04-04 17:42:24 +02:00
|
|
|
noinst_PROGRAMS += gpgv
|
2010-04-14 16:39:16 +02:00
|
|
|
endif
|
2016-04-05 15:24:56 +02:00
|
|
|
noinst_PROGRAMS += $(module_tests)
|
2020-08-20 10:54:17 +02:00
|
|
|
if DISABLE_TESTS
|
|
|
|
TESTS =
|
|
|
|
else
|
2008-12-11 18:44:52 +01:00
|
|
|
TESTS = $(module_tests)
|
2020-08-20 10:54:17 +02:00
|
|
|
endif
|
2017-03-22 12:40:42 +01:00
|
|
|
TESTS_ENVIRONMENT = \
|
|
|
|
abs_top_srcdir=$(abs_top_srcdir)
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2006-10-23 16:02:13 +02:00
|
|
|
if ENABLE_BZIP2_SUPPORT
|
|
|
|
bzip2_source = compress-bz2.c
|
|
|
|
else
|
|
|
|
bzip2_source =
|
|
|
|
endif
|
|
|
|
|
2014-02-07 13:46:36 +01:00
|
|
|
if ENABLE_CARD_SUPPORT
|
|
|
|
card_source = card-util.c
|
|
|
|
else
|
|
|
|
card_source =
|
|
|
|
endif
|
|
|
|
|
gpg: Allow building without any trust model support.
* configure.ac: Add option --disable-trust-models
(NO_TRUST_MODELS): New ac_define and am_conditional.
* g10/Makefile.am (trust_source): New.
(gpg2_SOURCES): Factor some files out to above. Add trust.c.
* g10/gpg.c [NO_TRUST_MODELS]: Disable options --export-ownertrust,
--import-ownertrust, --update-trustdb, --check-trustdb, --fix-trustdb,
--list-trustdb, --trustdb-name, --auto-check-trustdb,
--no-auto-check-trustdb, and --force-ownertrust.
(parse_trust_model) [NO_TRUST_MODELS]: Do not build.
(main) [NO_TRUST_MODELS]: Set trust_model to always and exclude all
trustdb related option code.
* g10/keyedit.c (cmds) [NO_TRUST_MODELS]: Remove menu items "trust",
"enable", and "disable".
* g10/keylist.c (public_key_list) [NO_TRUST_MODELS]: Do not print
"tru" record.
* g10/trust.c: New.
* g10/trustdb.c (struct key_item): Move to trustdb.h.
(register_trusted_keyid): Rename to tdb_register_trusted_keyid.
(register_trusted_key): Rename to tdb_register_trusted_key.
(trust_letter, uid_trust_string_fixed, trust_value_to_string)
(string_to_trust_value, get_ownertrust_with_min, get_ownertrust_info)
(get_ownertrust_string, get_validity_info, get_validity_string)
(clean_sigs_from_uid, clean_uid_from_key, clean_key): Move to trust.c.
(mark_usable_uid_certs): Move to trust.c and make global.
(is_in_klist): Move as inline to trustdb.h.
(trustdb_check_or_update): Rename to tdb_check_or_update
(revalidation_mark): Rename to tdb_revalidation_mark.
(get_ownertrust): Rename to tdb_get_ownertrust.
(get_min_ownertrust): Rename to tdb_get_min_ownertrust.
(update_ownertrust): Rename to tdb_update_ownertrust.
(clear_ownertrusts): Rename to tdb_clear_ownertrusts.
(cache_disabled_value): Rename to tdb_cache_disabled_value.
(check_trustdb_stale): Rename to tdb_check_trustdb_stale.
(get_validity): Rename to tdb_get_validity_core, add arg MAIN_PK and
factor some code out to ...
* trust.c (get_validity): ...new.
(check_or_update_trustdb): New wrapper.
(revalidation_mark): New wrapper.
(get_ownertrust): New wrapper.
(get_ownertrust_with_min): New wrapper.
(update_ownertrust): New wrapper.
(clear_ownertrusts): New wrapper.
(cache_disabled_value): New wrapper.
(check_trustdb_stale): New wrapper.
* tests/openpgp/defs.inc (opt_always): New. Use in all tests instead
of --always-trust.
2014-02-10 17:05:54 +01:00
|
|
|
if NO_TRUST_MODELS
|
|
|
|
trust_source =
|
|
|
|
else
|
|
|
|
trust_source = trustdb.c trustdb.h tdbdump.c tdbio.c tdbio.h
|
|
|
|
endif
|
|
|
|
|
2015-10-20 17:32:23 +02:00
|
|
|
if USE_TOFU
|
2017-07-06 13:52:24 +02:00
|
|
|
tofu_source = tofu.h tofu.c gpgsql.c gpgsql.h
|
2015-10-20 17:32:23 +02:00
|
|
|
else
|
|
|
|
tofu_source =
|
|
|
|
endif
|
|
|
|
|
gpg: Allow building without any trust model support.
* configure.ac: Add option --disable-trust-models
(NO_TRUST_MODELS): New ac_define and am_conditional.
* g10/Makefile.am (trust_source): New.
(gpg2_SOURCES): Factor some files out to above. Add trust.c.
* g10/gpg.c [NO_TRUST_MODELS]: Disable options --export-ownertrust,
--import-ownertrust, --update-trustdb, --check-trustdb, --fix-trustdb,
--list-trustdb, --trustdb-name, --auto-check-trustdb,
--no-auto-check-trustdb, and --force-ownertrust.
(parse_trust_model) [NO_TRUST_MODELS]: Do not build.
(main) [NO_TRUST_MODELS]: Set trust_model to always and exclude all
trustdb related option code.
* g10/keyedit.c (cmds) [NO_TRUST_MODELS]: Remove menu items "trust",
"enable", and "disable".
* g10/keylist.c (public_key_list) [NO_TRUST_MODELS]: Do not print
"tru" record.
* g10/trust.c: New.
* g10/trustdb.c (struct key_item): Move to trustdb.h.
(register_trusted_keyid): Rename to tdb_register_trusted_keyid.
(register_trusted_key): Rename to tdb_register_trusted_key.
(trust_letter, uid_trust_string_fixed, trust_value_to_string)
(string_to_trust_value, get_ownertrust_with_min, get_ownertrust_info)
(get_ownertrust_string, get_validity_info, get_validity_string)
(clean_sigs_from_uid, clean_uid_from_key, clean_key): Move to trust.c.
(mark_usable_uid_certs): Move to trust.c and make global.
(is_in_klist): Move as inline to trustdb.h.
(trustdb_check_or_update): Rename to tdb_check_or_update
(revalidation_mark): Rename to tdb_revalidation_mark.
(get_ownertrust): Rename to tdb_get_ownertrust.
(get_min_ownertrust): Rename to tdb_get_min_ownertrust.
(update_ownertrust): Rename to tdb_update_ownertrust.
(clear_ownertrusts): Rename to tdb_clear_ownertrusts.
(cache_disabled_value): Rename to tdb_cache_disabled_value.
(check_trustdb_stale): Rename to tdb_check_trustdb_stale.
(get_validity): Rename to tdb_get_validity_core, add arg MAIN_PK and
factor some code out to ...
* trust.c (get_validity): ...new.
(check_or_update_trustdb): New wrapper.
(revalidation_mark): New wrapper.
(get_ownertrust): New wrapper.
(get_ownertrust_with_min): New wrapper.
(update_ownertrust): New wrapper.
(clear_ownertrusts): New wrapper.
(cache_disabled_value): New wrapper.
(check_trustdb_stale): New wrapper.
* tests/openpgp/defs.inc (opt_always): New. Use in all tests instead
of --always-trust.
2014-02-10 17:05:54 +01:00
|
|
|
|
2013-04-25 13:00:16 +02:00
|
|
|
if HAVE_W32_SYSTEM
|
|
|
|
resource_objs += gpg-w32info.o
|
2015-02-03 19:11:44 +01:00
|
|
|
|
|
|
|
gpg-w32info.o : gpg.w32-manifest
|
|
|
|
|
2013-04-25 13:00:16 +02:00
|
|
|
endif
|
2006-10-23 16:02:13 +02:00
|
|
|
|
2003-06-05 09:14:21 +02:00
|
|
|
common_source = \
|
2006-04-19 13:26:11 +02:00
|
|
|
gpg.h \
|
gpg: Remove cipher.h and put algo ids into a common file.
* common/openpgpdefs.h (cipher_algo_t, pubkey_algo_t, digest_algo_t)
(compress_algo_t): New.
* agent/gpg-agent.c: Remove ../g10/cipher.h. Add openpgpdefs.h.
* g10/cipher.h (DEK): Move to ...
* g10/dek.h: new file.
* g10/cipher.h (is_RSA, is_ELGAMAL, is_DSA)
(PUBKEY_MAX_NPKEY, PUBKEY_MAX_NSKEY, PUBKEY_MAX_NSIG, PUBKEY_MAX_NENC)
(PUBKEY_USAGE_SIG, PUBKEY_USAGE_ENC, PUBKEY_USAGE_CERT)
(PUBKEY_USAGE_AUTH, PUBKEY_USAGE_NONE): Move to
* g10/packet.h: here.
* g10/cipher.h: Remove. Remove from all files.
* g10/filter.h, g10/packet.h: Include dek.h.
* g10/Makefile.am (common_source): Remove cipher.h. Add dek.h.
Signed-off-by: Werner Koch <wk@gnupg.org>
2014-01-29 20:35:05 +01:00
|
|
|
dek.h \
|
2003-06-05 09:14:21 +02:00
|
|
|
build-packet.c \
|
|
|
|
compress.c \
|
2006-10-23 16:02:13 +02:00
|
|
|
$(bzip2_source) \
|
2003-06-05 09:14:21 +02:00
|
|
|
filter.h \
|
|
|
|
free-packet.c \
|
|
|
|
getkey.c \
|
2019-02-19 08:14:41 +01:00
|
|
|
expand-group.c \
|
2019-09-09 14:34:09 +02:00
|
|
|
keydb.h \
|
|
|
|
keydb-private.h \
|
|
|
|
call-keyboxd.c \
|
|
|
|
keydb.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
keyring.c keyring.h \
|
|
|
|
seskey.c \
|
|
|
|
kbnode.c \
|
|
|
|
main.h \
|
|
|
|
mainproc.c \
|
|
|
|
armor.c \
|
|
|
|
mdfilter.c \
|
|
|
|
textfilter.c \
|
|
|
|
progress.c \
|
|
|
|
misc.c \
|
2008-12-12 09:54:50 +01:00
|
|
|
rmd160.c rmd160.h \
|
2003-06-05 09:14:21 +02:00
|
|
|
options.h \
|
|
|
|
openfile.c \
|
|
|
|
keyid.c \
|
|
|
|
packet.h \
|
|
|
|
parse-packet.c \
|
2007-11-19 17:03:50 +01:00
|
|
|
cpr.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
plaintext.c \
|
|
|
|
sig-check.c \
|
|
|
|
keylist.c \
|
2011-01-06 02:33:17 +01:00
|
|
|
pkglue.c pkglue.h \
|
2019-04-13 11:48:58 +02:00
|
|
|
objcache.c objcache.h \
|
2011-01-06 02:33:17 +01:00
|
|
|
ecdh.c
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2016-03-02 16:00:44 +01:00
|
|
|
gpg_sources = server.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
$(common_source) \
|
|
|
|
pkclist.c \
|
|
|
|
skclist.c \
|
|
|
|
pubkey-enc.c \
|
|
|
|
passphrase.c \
|
2009-10-02 16:57:55 +02:00
|
|
|
decrypt.c \
|
|
|
|
decrypt-data.c \
|
2018-02-27 13:57:24 +01:00
|
|
|
cipher-cfb.c \
|
2018-01-10 17:33:50 +01:00
|
|
|
cipher-aead.c \
|
2009-09-28 16:37:48 +02:00
|
|
|
encrypt.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
sign.c \
|
|
|
|
verify.c \
|
|
|
|
revoke.c \
|
|
|
|
dearmor.c \
|
|
|
|
import.c \
|
|
|
|
export.c \
|
2014-06-05 11:19:59 +02:00
|
|
|
migrate.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
delkey.c \
|
|
|
|
keygen.c \
|
|
|
|
helptext.c \
|
|
|
|
keyserver.c \
|
|
|
|
keyserver-internal.h \
|
2011-01-10 14:30:17 +01:00
|
|
|
call-dirmngr.c call-dirmngr.h \
|
2003-06-05 09:14:21 +02:00
|
|
|
photoid.c photoid.h \
|
2003-06-05 09:14:21 +02:00
|
|
|
call-agent.c call-agent.h \
|
2015-10-20 17:32:23 +02:00
|
|
|
trust.c $(trust_source) $(tofu_source) \
|
2014-02-07 13:46:36 +01:00
|
|
|
$(card_source) \
|
2017-06-13 15:34:03 +02:00
|
|
|
exec.c exec.h \
|
2018-07-06 11:40:16 +02:00
|
|
|
key-clean.c key-clean.h \
|
2017-06-13 15:34:03 +02:00
|
|
|
key-check.c key-check.h
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2016-04-04 17:42:24 +02:00
|
|
|
gpg_SOURCES = gpg.c \
|
2017-06-13 15:27:43 +02:00
|
|
|
keyedit.c keyedit.h \
|
2016-03-02 16:00:44 +01:00
|
|
|
$(gpg_sources)
|
|
|
|
|
2016-04-04 17:42:24 +02:00
|
|
|
gpgv_SOURCES = gpgv.c \
|
2003-06-05 09:14:21 +02:00
|
|
|
$(common_source) \
|
2016-04-06 11:34:11 +02:00
|
|
|
verify.c
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2006-09-21 15:30:45 +02:00
|
|
|
LDADD = $(needed_libs) ../common/libgpgrl.a \
|
2015-04-23 15:42:56 +02:00
|
|
|
$(ZLIBS) $(LIBINTL) $(CAPLIBS) $(NETLIBS)
|
2016-04-04 17:42:24 +02:00
|
|
|
gpg_LDADD = $(LDADD) $(SQLITE3_LIBS) $(LIBGCRYPT_LIBS) $(LIBREADLINE) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_LIBS) $(NPTH_LIBS) $(GPG_ERROR_LIBS) \
|
2013-04-25 13:00:16 +02:00
|
|
|
$(LIBICONV) $(resource_objs) $(extra_sys_libs)
|
2016-04-04 17:42:24 +02:00
|
|
|
gpg_LDFLAGS = $(extra_bin_ldflags)
|
|
|
|
gpgv_LDADD = $(LDADD) $(LIBGCRYPT_LIBS) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_LIBS) $(NPTH_LIBS) $(GPG_ERROR_LIBS) \
|
2013-04-25 13:00:16 +02:00
|
|
|
$(LIBICONV) $(resource_objs) $(extra_sys_libs)
|
2016-04-04 17:42:24 +02:00
|
|
|
gpgv_LDFLAGS = $(extra_bin_ldflags)
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2016-03-02 16:00:44 +01:00
|
|
|
|
2011-02-04 12:57:53 +01:00
|
|
|
t_common_ldadd =
|
2016-03-08 14:08:15 +01:00
|
|
|
module_tests = t-rmd160 t-keydb t-keydb-get-keyblock t-stutter
|
2008-12-11 18:44:52 +01:00
|
|
|
t_rmd160_SOURCES = t-rmd160.c rmd160.c
|
|
|
|
t_rmd160_LDADD = $(t_common_ldadd)
|
2015-09-02 15:07:06 +02:00
|
|
|
t_keydb_SOURCES = t-keydb.c test-stubs.c $(common_source)
|
2019-09-09 14:34:09 +02:00
|
|
|
t_keydb_LDADD = $(LDADD) $(LIBGCRYPT_LIBS) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_LIBS) $(NPTH_LIBS) $(GPG_ERROR_LIBS) \
|
2015-09-02 15:07:06 +02:00
|
|
|
$(LIBICONV) $(t_common_ldadd)
|
2015-11-17 12:55:42 +01:00
|
|
|
t_keydb_get_keyblock_SOURCES = t-keydb-get-keyblock.c test-stubs.c \
|
|
|
|
$(common_source)
|
2019-09-09 14:34:09 +02:00
|
|
|
t_keydb_get_keyblock_LDADD = $(LDADD) $(LIBGCRYPT_LIBS) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_LIBS) $(NPTH_LIBS) $(GPG_ERROR_LIBS) \
|
2015-11-17 12:55:42 +01:00
|
|
|
$(LIBICONV) $(t_common_ldadd)
|
2016-03-08 14:08:15 +01:00
|
|
|
t_stutter_SOURCES = t-stutter.c test-stubs.c \
|
|
|
|
$(common_source)
|
2019-09-09 14:34:09 +02:00
|
|
|
t_stutter_LDADD = $(LDADD) $(LIBGCRYPT_LIBS) \
|
2019-09-10 16:05:54 +02:00
|
|
|
$(LIBASSUAN_LIBS) $(NPTH_LIBS) $(GPG_ERROR_LIBS) \
|
2016-03-08 14:08:15 +01:00
|
|
|
$(LIBICONV) $(t_common_ldadd)
|
2008-12-11 18:44:52 +01:00
|
|
|
|
|
|
|
|
2006-09-21 15:30:45 +02:00
|
|
|
$(PROGRAMS): $(needed_libs) ../common/libgpgrl.a
|
2003-06-05 09:14:21 +02:00
|
|
|
|
2016-04-04 17:42:24 +02:00
|
|
|
# NB: To install gpg and gpgv we use this -hook. This code has to
|
|
|
|
# duplicate most of the automake generated install-binPROGRAMS target
|
|
|
|
# so that directories are created and the transform feature works.
|
|
|
|
install-exec-hook:
|
|
|
|
@echo "running install-exec-hook"; \
|
|
|
|
echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
|
|
|
|
$(MKDIR_P) "$(DESTDIR)$(bindir)"; \
|
|
|
|
for p in $(gpg2_hack_list); do \
|
|
|
|
echo "$$p$(EXEEXT) $$p$(EXEEXT)"; done | \
|
|
|
|
sed 's/$(EXEEXT)$$//' | \
|
|
|
|
while read p p1; do if test -f $$p \
|
|
|
|
; then echo "$$p"; echo "$$p"; else :; fi; \
|
|
|
|
done | \
|
|
|
|
sed -e 'p;s,.*/,,;n;h' \
|
|
|
|
-e 's|.*|.|' \
|
|
|
|
-e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
|
|
|
|
sed 'N;N;N;s,\n, ,g' | \
|
|
|
|
$(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
|
|
|
|
{ d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
|
|
|
|
if ($$2 == $$4) files[d] = files[d] " " $$1; \
|
|
|
|
else { print "f", $$3 "/" $$4, $$1; } } \
|
|
|
|
END { for (d in files) print "f", d, files[d] }' | \
|
|
|
|
while read type dir files; do \
|
|
|
|
for f in $$files; do \
|
|
|
|
if test $(use_gpg2_hack) = yes ; \
|
|
|
|
then f2=`echo "$${f}" | sed 's/$(EXEEXT)$$//'`2$(EXEEXT); \
|
|
|
|
else f2="$${f}" ;\
|
|
|
|
fi ; \
|
|
|
|
echo "$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) \
|
|
|
|
$${f} '$(DESTDIR)$(bindir)/$${f2}'"; \
|
|
|
|
$(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) \
|
|
|
|
$${f} "$(DESTDIR)$(bindir)/$${f2}"; \
|
|
|
|
done; \
|
|
|
|
done
|
|
|
|
|
|
|
|
|
2003-06-05 09:14:21 +02:00
|
|
|
install-data-local:
|
|
|
|
$(mkinstalldirs) $(DESTDIR)$(pkgdatadir)
|
2014-08-18 16:38:13 +02:00
|
|
|
$(INSTALL_DATA) $(srcdir)/distsigkey.gpg \
|
|
|
|
$(DESTDIR)$(pkgdatadir)/distsigkey.gpg
|
2003-08-05 19:11:04 +02:00
|
|
|
|
2016-04-04 17:42:24 +02:00
|
|
|
# NB: For uninstalling gpg and gpgv we use -local because there is
|
|
|
|
# no need for a specific order the targets need to be run.
|
2009-09-03 22:51:55 +02:00
|
|
|
uninstall-local:
|
2014-08-18 16:38:13 +02:00
|
|
|
-@rm $(DESTDIR)$(pkgdatadir)/distsigkey.gpg
|
2016-04-04 17:42:24 +02:00
|
|
|
-@files=`for p in $(gpg2_hack_uninst); do echo "$$p"; done | \
|
|
|
|
sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
|
|
|
|
-e 's/$$/$(EXEEXT)/' \
|
|
|
|
`; \
|
|
|
|
echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
|
|
|
|
cd "$(DESTDIR)$(bindir)" && rm -f $$files
|