lib/util: Include DEBUG macro in internal header files before samba_util.h
authorLukas Slebodnik <lslebodn@redhat.com>
Thu, 5 Mar 2015 10:26:46 +0000 (11:26 +0100)
committerJeremy Allison <jra@samba.org>
Wed, 11 Mar 2015 17:47:22 +0000 (18:47 +0100)
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 <lslebodn@redhat.com>
Reviewed-by: Andreas Schneider <asn@samba.org>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Wed Mar 11 18:47:22 CET 2015 on sn-devel-104

lib/util/fault.h
lib/util/memcache.c
source3/include/includes.h
source4/include/includes.h

index aa10a71282e921973c51ba2f86375f652e912ada..0ac6cb9ceb5a428fe130a339ac0c9e9f7f27b298 100644 (file)
@@ -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
index 50e59fc7040719b3491bba3e0deff4ca2e608257..2f2e77c1234b85b05d6e365b32f3ef2fd9c33eef 100644 (file)
@@ -19,8 +19,8 @@
 
 #include "replace.h"
 #include <talloc.h>
-#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"
index 0715608c32b523625848119d721a3052d828c360..b61742a91491d7a81c888a551a6db84507cacb56 100644 (file)
@@ -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"
index 46b158ec08f88964df4d5473e6101431c25fae65..5aabb8e670e945dc209fc72893700e1ab0941b06 100644 (file)
@@ -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"