fix build failure with glib 2.67

Based on a patch from Michael J Gruber [1].  As of glib 2.67 (more
specifically [2]), including "gmime-extra.h" inside an extern "C"
block causes build failures, because glib is using C++ features.

Observing that "gmime-extra.h" is no longer needed in
notmuch-private.h, which can simply delete that include, but
we have to correspondingly move the includes which might include
it (in particular crypto.h) out of the extern "C" block also.

This seems less fragile than only moving gmime-extra, and relying on
preprocessor sentinels to keep the deeper includes from happening.

Move to the include to the outside of the extern block.

[1]: id:aee618a3d41f7889a7449aa16893e992325a909a.1613055071.git.git@grubix.eu
[2]: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1715
This commit is contained in:
David Bremner 2021-02-15 16:43:50 -04:00
parent 1692fe7aa8
commit 6db8b422d9

View file

@ -31,6 +31,12 @@
#include "notmuch.h" #include "notmuch.h"
#include "xutil.h"
#include "error_util.h"
#include "string-util.h"
#include "crypto.h"
#include "repair.h"
NOTMUCH_BEGIN_DECLS NOTMUCH_BEGIN_DECLS
#include <stdlib.h> #include <stdlib.h>
@ -47,14 +53,6 @@ NOTMUCH_BEGIN_DECLS
#include <talloc.h> #include <talloc.h>
#include "gmime-extra.h"
#include "xutil.h"
#include "error_util.h"
#include "string-util.h"
#include "crypto.h"
#include "repair.h"
#ifdef DEBUG #ifdef DEBUG
# define DEBUG_DATABASE_SANITY 1 # define DEBUG_DATABASE_SANITY 1
# define DEBUG_THREADING 1 # define DEBUG_THREADING 1