[Spice-devel] [PATCH spice-common] Fix build in systems with Glib version older than 2.38

Christophe Fergeau cfergeau at redhat.com
Wed Mar 30 15:59:45 UTC 2016


On Wed, Mar 30, 2016 at 09:12:56AM -0300, Eduardo Lima (Etrunko) wrote:
> From: "Eduardo Lima (Etrunko)" <etrunko at redhat.com>
> 
> Tests now include functions only available in glib 2.38. To avoid
> setting the dependency bar too high, we simply put them between #ifdef
> guards.
> 
> Signed-off-by: Eduardo Lima (Etrunko) <etrunko at redhat.com>
> ---
>  tests/test-logging.c     | 4 ++++
>  tests/test-marshallers.c | 7 +++++++
>  2 files changed, 11 insertions(+)
> 
> diff --git a/tests/test-logging.c b/tests/test-logging.c
> index eed149e..69eff24 100644
> --- a/tests/test-logging.c
> +++ b/tests/test-logging.c
> @@ -43,6 +43,7 @@ LOG_OTHER_HELPER(message, MESSAGE)
>  LOG_OTHER_HELPER(warning, WARNING)
>  LOG_OTHER_HELPER(critical, CRITICAL)
>  
> +#ifdef GLIB_VERSION_2_38

Would be better as

#if GLIB_CHECK_VERSION(2,38,0)

>  /* Checks that spice_warning() aborts after changing SPICE_ABORT_LEVEL */
>  static void test_spice_abort_level(void)
>  {
> @@ -376,6 +377,7 @@ static void test_spice_g_messages_debug_all(void)
>      g_test_trap_assert_stdout("*spice_debug\n*spice_info\n*g_debug\n*g_info\n*other_debug\n*other_info\n");
>      g_test_trap_assert_stderr("*g_message\n*other_message\n");
>  }
> +#endif /* GLIB_VERSION_2_38 */
>  
>  static void handle_sigabrt(int sig)
>  {
> @@ -399,6 +401,7 @@ int main(int argc, char **argv)
>       * test cases are going to test */
>      g_log_set_always_fatal(fatal_mask & G_LOG_LEVEL_MASK);
>  
> +#ifdef GLIB_VERSION_2_38
>      g_test_add_func("/spice-common/spice-abort-level", test_spice_abort_level);
>      g_test_add_func("/spice-common/spice-abort-level-gwarning", test_spice_abort_level_g_warning);
>      g_test_add_func("/spice-common/spice-debug-level", test_spice_debug_level);
> @@ -412,6 +415,7 @@ int main(int argc, char **argv)
>      g_test_add_func("/spice-common/spice-fatal-return-if-fail", test_spice_fatal_return_if_fail);
>      g_test_add_func("/spice-common/spice-non-fatal-greturn-if-fail", test_spice_non_fatal_g_return_if_fail);
>      g_test_add_func("/spice-common/spice-fatal-warning", test_spice_fatal_warning);
> +#endif /* GLIB_VERSION_2_38 */
>  
>      return g_test_run();
>  }
> diff --git a/tests/test-marshallers.c b/tests/test-marshallers.c
> index d2c80e5..bc27b50 100644
> --- a/tests/test-marshallers.c
> +++ b/tests/test-marshallers.c
> @@ -4,6 +4,13 @@
>  #include "common/marshaller.h"
>  #include "generated_test_marshallers.h"
>  
> +#ifndef g_assert_true
> +#define g_assert_true(expr)             do { if G_LIKELY (expr) ; else \
> +                                               g_assertion_message (G_LOG_DOMAIN, __FILE__, __LINE__, G_STRFUNC, \
> +                                                                    #expr); \
> +                                           } while (0)

I'd just go with #define g_assert_true g_assert

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20160330/3f6a7e6c/attachment.sig>


More information about the Spice-devel mailing list