[ovs-dev] [PATCH 2/3] Add BUILD_MESSAGE() macro

Jarno Rajahalme jrajahalme at nicira.com
Fri Aug 8 16:13:42 UTC 2014


Acked-by: Jarno Rajahalme <jrajahalme at nicira.com>

Sent from my iPhone

> On Aug 7, 2014, at 6:15 PM, Daniele Di Proietto <ddiproietto at vmware.com> wrote:
> 
> This commit introduces the BUILD_MESSAGE() macro. It uses _Pragma("message"),
> with compilers that support that, to output a warning-like compile-time message
> without blocking the compilation.
> 
> Used by next commit.
> 
> Signed-off-by: Daniele Di Proietto <ddiproietto at vmware.com>
> ---
> configure.ac      |  1 +
> lib/compiler.h    | 10 ++++++++++
> m4/openvswitch.m4 |  9 +++++++++
> 3 files changed, 20 insertions(+)
> 
> diff --git a/configure.ac b/configure.ac
> index 971c7b3..97b5cd9 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -120,6 +120,7 @@ AC_ARG_VAR(KARCH, [Kernel Architecture String])
> AC_SUBST(KARCH)
> OVS_CHECK_LINUX
> OVS_CHECK_DPDK
> +OVS_CHECK_PRAGMA_MESSAGE
> 
> AC_CONFIG_FILES(Makefile)
> AC_CONFIG_FILES(datapath/Makefile)
> diff --git a/lib/compiler.h b/lib/compiler.h
> index cfe9066..50a4739 100644
> --- a/lib/compiler.h
> +++ b/lib/compiler.h
> @@ -220,4 +220,14 @@
> #define OVS_PREFETCH_WRITE(addr)
> #endif
> 
> +/* Output a message (not an error) while compiling without failing the
> + * compilation process */
> +#if HAVE_PRAGMA_MESSAGE
> +#define DO_PRAGMA(x) _Pragma(#x)
> +#define BUILD_MESSAGE(x) \
> +    DO_PRAGMA(message(x))
> +#else
> +#define BUILD_MESSAGE(x)
> +#endif
> +
> #endif /* compiler.h */
> diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
> index 26b8058..8d6ec27 100644
> --- a/m4/openvswitch.m4
> +++ b/m4/openvswitch.m4
> @@ -429,3 +429,12 @@ dnl OVS_CHECK_INCLUDE_NEXT
> AC_DEFUN([OVS_CHECK_INCLUDE_NEXT],
>   [AC_REQUIRE([gl_CHECK_NEXT_HEADERS])
>    gl_CHECK_NEXT_HEADERS([$1])])
> +
> +dnl OVS_CHECK_PRAGMA_MESSAGE
> +AC_DEFUN([OVS_CHECK_PRAGMA_MESSAGE],
> +  [AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
> +   [[_Pragma("message(\"Checking for pragma message\")")
> +   ]])],
> +     [AC_DEFINE(HAVE_PRAGMA_MESSAGE,1,[Define if compiler supports #pragma
> +     message directive])])
> +  ])
> -- 
> 2.0.1
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev



More information about the dev mailing list