diff options
author | Werner Koch <[email protected]> | 2020-02-10 15:37:34 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2020-02-10 15:50:47 +0000 |
commit | 6aff8a132815a84bab69401c1e7de96ec549fbf2 (patch) | |
tree | 00e313097a522fc1956bed6f45a5361422b561ae /common/util.h | |
parent | gpg: Make really sure that --verify-files always returns an error. (diff) | |
download | gnupg-6aff8a132815a84bab69401c1e7de96ec549fbf2.tar.gz gnupg-6aff8a132815a84bab69401c1e7de96ec549fbf2.zip |
build: Always use EXTERN_UNLESS_MAIN_MODULE pattern.
* common/util.h (EXTERN_UNLESS_MAIN_MODULE): Add the definion only
here but now without the Norcroft-C. Change all other places where it
gets defined.
* common/iobuf.h (iobuf_debug_mode): Declare unconditionally as
extern.
* common/iobuf.c (iobuf_debug_mode): Define it here.
* agent/gpg-agent.c (INCLUDED_BY_MAIN_MODULE): Define here and also in
all main modules of all other programs.
* g10/main.h: Put util.h before the local header files.
--
This change is required for use with gcc/ld's LTO feature which does
not allow common blocks. Further gcc 10 will make -fno-common the
default and thus this chnage is always needed. What a pitty.
Co-authored-by: Tomáš Mráz
GnuPG-bug-id: 4831
Signed-off-by: Werner Koch <[email protected]>
(cherry picked from commit 21d9bd8b87a9f793a106095e3838eb71825189d7)
- Applied respective chnages also to gpg-card and keyboxd.
Signed-off-by: Werner Koch <[email protected]>
Diffstat (limited to 'common/util.h')
-rw-r--r-- | common/util.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/common/util.h b/common/util.h index 8ad805832..a6bab2415 100644 --- a/common/util.h +++ b/common/util.h @@ -48,6 +48,14 @@ #define GPG_ERR_KEYBOXD 317 #endif /*GPG_ERROR_VERSION_NUMBER*/ +#ifndef EXTERN_UNLESS_MAIN_MODULE +# if !defined (INCLUDED_BY_MAIN_MODULE) +# define EXTERN_UNLESS_MAIN_MODULE extern +# else +# define EXTERN_UNLESS_MAIN_MODULE +# endif +#endif + /* Hash function used with libksba. */ #define HASH_FNC ((void (*)(void *, const void*,size_t))gcry_md_write) |