public inbox for b.a.t.m.a.n@lists.open-mesh.org
 help / color / mirror / Atom feed
* [B.A.T.M.A.N.] [PATCH maint] batman-adv: Only use compat.h for kernel builds
@ 2018-02-26 12:51 Sven Eckelmann
  2018-02-26 16:35 ` Simon Wunderlich
  0 siblings, 1 reply; 2+ messages in thread
From: Sven Eckelmann @ 2018-02-26 12:51 UTC (permalink / raw)
  To: b.a.t.m.a.n

The compat.h will be included by default via the -include gcc parameter.
This is done by appending the incude information to NOSTDINC_FLAGS in the
Makefile. But Debian decided [1] that this NOSTDINC_FLAGS must also be used
when not compiling kernel sources. This for example happens when the
gcc-version.sh script is executed. This results in error messages like

  In file included from <command-line>:0:0:
  /usr/src//batman-adv/build/../compat.h:25:52: fatal error: linux/version.h: No such file or directory
   #include <linux/version.h> /* LINUX_VERSION_CODE */
                                                      ^
  compilation terminated.
  In file included from <command-line>:0:0:
  /usr/src//batman-adv/build/../compat.h:25:52: fatal error: linux/version.h: No such file or directory
   #include <linux/version.h> /* LINUX_VERSION_CODE */
                                                      ^
  compilation terminated.
  /usr/src/linux-headers-4.14.0-0.bpo.3-common/scripts/gcc-version.sh: line 32: printf: #: invalid number
  /usr/src/linux-headers-4.14.0-0.bpo.3-common/scripts/gcc-version.sh: line 32: printf: #: invalid number
  /bin/sh: 1: [: 0001: unexpected operator

This can be avoided by disabling the compat.h whenever the preprocessor
define __KERNEL__ is not set.

[1] https://patchwork.kernel.org/patch/5238591/

Signed-off-by: Sven Eckelmann <sven@narfation.org>
---
 compat.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/compat.h b/compat.h
index c10ad589..759829f9 100644
--- a/compat.h
+++ b/compat.h
@@ -21,6 +21,8 @@
 #ifndef _NET_BATMAN_ADV_COMPAT_H_
 #define _NET_BATMAN_ADV_COMPAT_H_
 
+#ifdef __KERNEL__
+
 #include <linux/version.h>	/* LINUX_VERSION_CODE */
 #include <linux/kconfig.h>
 #include <generated/autoconf.h>
@@ -159,4 +161,6 @@ static int __batadv_interface_kill_vid(struct net_device *dev, __be16 proto,\
 
 #endif /* < KERNEL_VERSION(4, 15, 0) */
 
+#endif /* __KERNEL__ */
+
 #endif /* _NET_BATMAN_ADV_COMPAT_H_ */
-- 
2.11.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-02-26 16:35 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-26 12:51 [B.A.T.M.A.N.] [PATCH maint] batman-adv: Only use compat.h for kernel builds Sven Eckelmann
2018-02-26 16:35 ` Simon Wunderlich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox