From b48400b7a4da5e6776fb1ae526ebbd502b3e896b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tim-Philipp=20M=C3=BCller?= Date: Sat, 27 Apr 2013 11:46:13 +0100 Subject: [PATCH] check: set CK_TIMEOUT_MULTIPLIER on ARM https://bugzilla.gnome.org/show_bug.cgi?id=695599 --- libs/gst/check/gstcheck.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/libs/gst/check/gstcheck.c b/libs/gst/check/gstcheck.c index 3e06679..d9b5e33 100644 --- a/libs/gst/check/gstcheck.c +++ b/libs/gst/check/gstcheck.c @@ -27,6 +27,9 @@ * These macros and functions are for internal use of the unit tests found * inside the 'check' directories of various GStreamer packages. */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif #include "gstcheck.h" @@ -115,6 +118,8 @@ print_plugins (void) void gst_check_init (int *argc, char **argv[]) { + guint timeout_multiplier = 1; + gst_init (argc, argv); GST_DEBUG_CATEGORY_INIT (check_debug, "check", 0, "check regression tests"); @@ -136,6 +141,28 @@ gst_check_init (int *argc, char **argv[]) gst_check_log_critical_func, NULL); print_plugins (); + +#ifdef TARGET_CPU + GST_INFO ("target CPU: %s", TARGET_CPU); +#endif + +#ifdef HAVE_CPU_ARM + timeout_multiplier = 10; +#endif + + if (timeout_multiplier > 1) { + const gchar *tmult = g_getenv ("CK_TIMEOUT_MULTIPLIER"); + + if (tmult == NULL) { + gchar num_str[32]; + + g_snprintf (num_str, sizeof (num_str), "%d", timeout_multiplier); + GST_INFO ("slow CPU, setting CK_TIMEOUT_MULTIPLIER to %s", num_str); + g_setenv ("CK_TIMEOUT_MULTIPLIER", num_str, TRUE); + } else { + GST_INFO ("CK_TIMEOUT_MULTIPLIER already set to '%s'", tmult); + } + } } /* message checking */ -- 2.7.4