mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
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 <wk@gnupg.org>
This commit is contained in:
parent
49151255f3
commit
21d9bd8b87
28 changed files with 35 additions and 18 deletions
|
@ -32,7 +32,6 @@
|
|||
#include "../common/session-env.h"
|
||||
#include "../common/strlist.h"
|
||||
|
||||
|
||||
/* Debug values and macros. */
|
||||
#define DBG_MOUNT_VALUE 1 /* Debug mount or device stuff. */
|
||||
#define DBG_CRYPTO_VALUE 4 /* Debug low level crypto. */
|
||||
|
@ -48,6 +47,7 @@
|
|||
/* A large struct named "opt" to keep global flags. Note that this
|
||||
struct is used by g13 and g13-syshelp and thus some fields may only
|
||||
make sense for one of them. */
|
||||
EXTERN_UNLESS_MAIN_MODULE
|
||||
struct
|
||||
{
|
||||
unsigned int debug; /* Debug flags (DBG_foo_VALUE). */
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#endif
|
||||
#include <unistd.h>
|
||||
|
||||
#define INCLUDED_BY_MAIN_MODULE 1
|
||||
#include "g13-syshelp.h"
|
||||
|
||||
#include <gcrypt.h>
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#include <fcntl.h>
|
||||
#include <npth.h>
|
||||
|
||||
#define INCLUDED_BY_MAIN_MODULE 1
|
||||
#include "g13.h"
|
||||
|
||||
#include <gcrypt.h>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue