From: Lukas Slebodnik Date: Thu, 5 Mar 2015 10:26:46 +0000 (+0100) Subject: lib/util: Include DEBUG macro in internal header files before samba_util.h X-Git-Tag: tdb-1.3.5~664 X-Git-Url: http://git.samba.org/samba.git/?p=sfrench%2Fsamba-autobuild%2F.git;a=commitdiff_plain;h=9643a4b1ef2ada764f454ecc82aa6936217967fc lib/util: Include DEBUG macro in internal header files before samba_util.h It's best practice to include external header files before internal header files. In this case internal DEBUG macro cannot be defined and therefore samba version of debug macro will be included in header file "util/fault.h". In file included from example.c:27:0: src/util/util.h:127:0: error: "DEBUG" redefined [-Werror] #define DEBUG(level, format, ...) do { \ ^ In file included from /usr/include/samba-4.0/util/fault.h:29:0, from /usr/include/samba-4.0/samba_util.h:62, from /usr/include/samba-4.0/ndr.h:30, from example.c:24: /usr/include/samba-4.0/util/debug.h:182:0: note: this is the location of the previous definition #define DEBUG( level, body ) \ ^ CC src/providers/ad/libsss_ad_common_la-ad_domain_info.lo cc1: all warnings being treated as errors BUG: https://bugzilla.samba.org/show_bug.cgi?id=11033 Signed-off-by: Lukas Slebodnik Reviewed-by: Andreas Schneider Reviewed-by: Martin Schwenke Autobuild-User(master): Jeremy Allison Autobuild-Date(master): Wed Mar 11 18:47:22 CET 2015 on sn-devel-104 --- diff --git a/lib/util/fault.h b/lib/util/fault.h index aa10a71282e..0ac6cb9ceb5 100644 --- a/lib/util/fault.h +++ b/lib/util/fault.h @@ -25,9 +25,7 @@ #include "attr.h" -#ifndef DEBUG -#include "debug.h" -#endif /* DEBUG */ +/* Please include header file debug.h if you want to use macro SMB_ASSERT */ /** * assert macros diff --git a/lib/util/memcache.c b/lib/util/memcache.c index 50e59fc7040..2f2e77c1234 100644 --- a/lib/util/memcache.c +++ b/lib/util/memcache.c @@ -19,8 +19,8 @@ #include "replace.h" #include -#include "../lib/util/samba_util.h" #include "../lib/util/debug.h" +#include "../lib/util/samba_util.h" #include "../lib/util/dlinklist.h" #include "../lib/util/rbtree.h" #include "memcache.h" diff --git a/source3/include/includes.h b/source3/include/includes.h index 0715608c32b..b61742a9149 100644 --- a/source3/include/includes.h +++ b/source3/include/includes.h @@ -356,6 +356,9 @@ enum timestamp_set_resolution { typedef char fstring[FSTRING_LEN]; #endif +/* debug.h need to be included before samba_util.h for the macro SMB_ASSERT */ +#include "../lib/util/debug.h" + /* Lists, trees, caching, database... */ #include "../lib/util/samba_util.h" #include "../lib/util/util_net.h" @@ -371,7 +374,6 @@ typedef char fstring[FSTRING_LEN]; #include "../lib/util/data_blob.h" #include "../lib/util/time.h" -#include "../lib/util/debug.h" #include "../lib/util/debug_s3.h" #include "../libcli/util/ntstatus.h" diff --git a/source4/include/includes.h b/source4/include/includes.h index 46b158ec08f..5aabb8e670e 100644 --- a/source4/include/includes.h +++ b/source4/include/includes.h @@ -57,6 +57,8 @@ #endif #include "../lib/util/xfile.h" #include "../lib/util/attr.h" + +/* debug.h need to be included before samba_util.h for the macro SMB_ASSERT */ #include "../lib/util/debug.h" #include "../lib/util/samba_util.h"