diff options
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/glib.scm | 31 | ||||
-rw-r--r-- | gnu/packages/patches/glib-tests-desktop.patch | 27 | ||||
-rw-r--r-- | gnu/packages/patches/glib-tests-homedir.patch | 24 | ||||
-rw-r--r-- | gnu/packages/patches/glib-tests-timezone.patch | 41 |
4 files changed, 49 insertions, 74 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index f951fe7b71..2e8f40a6b1 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -33,7 +33,8 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (gnu packages bash)) (define-public dbus (package @@ -74,14 +75,14 @@ shared NFS home directories.") (define-public glib (package (name "glib") - (version "2.34.3") + (version "2.37.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/2.34/" name "-" version ".tar.xz")) (sha256 - (base32 "19sq4rhl2vr8ikjvl8qh51vr38yqfhbkb3imi2s6ac5rgkwcnpw5")))) + (base32 "1lp705q0g9jlfj24x8fpgjh7awmmara5iyj9kz5lhd49sr9s813k")))) (build-system gnu-build-system) (outputs '("out" ; everything "doc")) ; 20 MiB of GTK-Doc reference @@ -94,9 +95,9 @@ shared NFS home directories.") ("zlib" ,zlib) ("perl" ,perl) ; needed by GIO tests ("dbus" ,dbus) ; for GDBus tests + ("bash" ,bash) + ("tzdata" ,tzdata) ; for tests/gdatetime.c - ("patch/tests-tzdata" - ,(search-patch "glib-tests-timezone.patch")) ("patch/tests-homedir" ,(search-patch "glib-tests-homedir.patch")) ("patch/tests-desktop" @@ -104,17 +105,31 @@ shared NFS home directories.") ("patch/tests-prlimit" ,(search-patch "glib-tests-prlimit.patch")))) (arguments - '(#:patches (list (assoc-ref %build-inputs "patch/tests-tzdata") - (assoc-ref %build-inputs "patch/tests-homedir") + '(#:patches (list (assoc-ref %build-inputs "patch/tests-homedir") (assoc-ref %build-inputs "patch/tests-desktop") (assoc-ref %build-inputs "patch/tests-prlimit")) #:phases (alist-cons-before 'build 'pre-build (lambda* (#:key inputs outputs #:allow-other-keys) + ;; For tests/gdatetime.c. + (setenv "TZDIR" + (string-append (assoc-ref inputs "tzdata") + "/share/zoneinfo")) + + ;; Some tests want write access there. + (setenv "XDG_CACHE_HOME" (getcwd)) + (substitute* '("glib/gspawn.c" "glib/tests/utils.c" "tests/spawn-test.c") - (("/bin/sh") (which "sh")))) + (("/bin/sh") + (string-append (assoc-ref inputs "bash") "/bin/sh"))) + + ;; Honor $(TESTS_ENVIRONMENT). + (substitute* (find-files "." "^Makefile(\\.in)?$") + (("^GTESTER[[:blank:]]*=(.*)$" _ rest) + (string-append "GTESTER = $(TESTS_ENVIRONMENT) " + rest)))) %standard-phases) ;; Note: `--docdir' and `--htmldir' are not honored, so work around it. diff --git a/gnu/packages/patches/glib-tests-desktop.patch b/gnu/packages/patches/glib-tests-desktop.patch index 85f2b06c9a..a92662886e 100644 --- a/gnu/packages/patches/glib-tests-desktop.patch +++ b/gnu/packages/patches/glib-tests-desktop.patch @@ -1,9 +1,9 @@ Some GLib tests expect desktop things, such as an xterm, a MIME database, the `update-desktop-database' program, which we don't provide. ---- glib-2.34.3/gio/tests/appinfo.c 2013-01-16 18:20:00.000000000 +0100 -+++ glib-2.34.3/gio/tests/appinfo.c 2013-01-16 18:20:06.000000000 +0100 -@@ -384,14 +384,09 @@ main (int argc, char *argv[]) +--- glib-2.37.1/gio/tests/appinfo.c 2013-06-07 23:44:44.000000000 +0200 ++++ glib-2.37.1/gio/tests/appinfo.c 2013-06-07 23:44:56.000000000 +0200 +@@ -497,16 +497,10 @@ main (int argc, char *argv[]) g_test_add_func ("/appinfo/basic", test_basic); g_test_add_func ("/appinfo/text", test_text); @@ -11,12 +11,15 @@ database, the `update-desktop-database' program, which we don't provide. g_test_add_func ("/appinfo/show-in", test_show_in); g_test_add_func ("/appinfo/commandline", test_commandline); - g_test_add_func ("/appinfo/launch-context", test_launch_context); +- g_test_add_func ("/appinfo/launch-context-signals", test_launch_context_signals); g_test_add_func ("/appinfo/tryexec", test_tryexec); - g_test_add_func ("/appinfo/associations", test_associations); g_test_add_func ("/appinfo/environment", test_environment); - g_test_add_func ("/appinfo/startup-wm-class", test_startup_wm_class); - g_test_add_func ("/appinfo/supported-types", test_supported_types); g_test_add_func ("/appinfo/from-keyfile", test_from_keyfile); + + return g_test_run (); --- glib-2.34.3/gio/tests/contenttype.c 2013-01-16 21:22:29.000000000 +0100 +++ glib-2.34.3/gio/tests/contenttype.c 2013-01-16 21:22:33.000000000 +0100 @@ -35,18 +38,16 @@ database, the `update-desktop-database' program, which we don't provide. return g_test_run (); } ---- glib-2.34.3/gio/tests/desktop-app-info.c 2013-01-16 21:30:00.000000000 +0100 -+++ glib-2.34.3/gio/tests/desktop-app-info.c 2013-01-16 21:30:02.000000000 +0100 -@@ -363,9 +363,5 @@ main (int argc, +--- glib-2.37.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:28.000000000 +0200 ++++ glib-2.37.1/gio/tests/desktop-app-info.c 2013-06-07 23:46:32.000000000 +0200 +@@ -385,6 +385,7 @@ main (int argc, g_setenv ("XDG_DATA_HOME", basedir, TRUE); cleanup_subdirs (basedir); -- g_test_add_func ("/desktop-app-info/delete", test_delete); -- g_test_add_func ("/desktop-app-info/default", test_default); -- g_test_add_func ("/desktop-app-info/fallback", test_fallback); -- g_test_add_func ("/desktop-app-info/lastused", test_last_used); - - result = g_test_run (); ++ return 0; + g_test_add_func ("/desktop-app-info/delete", test_delete); + g_test_add_func ("/desktop-app-info/default", test_default); + g_test_add_func ("/desktop-app-info/fallback", test_fallback); ----------------------------- @@ -81,7 +82,7 @@ The test below depends on the availability /etc/passwd to dbus-daemon. { gint ret; -+ exit (0); ++ return 0; setlocale (LC_ALL, "C"); g_type_init (); diff --git a/gnu/packages/patches/glib-tests-homedir.patch b/gnu/packages/patches/glib-tests-homedir.patch index 9232ca5e77..cb9538ef8c 100644 --- a/gnu/packages/patches/glib-tests-homedir.patch +++ b/gnu/packages/patches/glib-tests-homedir.patch @@ -29,21 +29,21 @@ chroot build environment. Thus, disable them. ret = g_test_run(); ---- glib-2.34.3/gio/tests/gdbus-exit-on-close.c 2013-01-16 17:49:25.000000000 +0100 -+++ glib-2.34.3/gio/tests/gdbus-exit-on-close.c 2013-01-16 17:49:30.000000000 +0100 -@@ -206,13 +206,6 @@ main (int argc, - g_type_init (); +--- glib-2.37.1/gio/tests/gdbus-exit-on-close.c 2013-06-07 23:41:34.000000000 +0200 ++++ glib-2.37.1/gio/tests/gdbus-exit-on-close.c 2013-06-07 23:41:40.000000000 +0200 +@@ -211,6 +211,7 @@ main (int argc, + g_test_init (&argc, &argv, NULL); -- for (i = 0; cases[i].name != NULL; i++) -- { -- gchar *name = g_strdup_printf ("/gdbus/exit-on-close/%s", cases[i].name); -- -- g_test_add_data_func (name, &cases[i], test_exit_on_close); -- g_free (name); -- } ++ return g_test_run(); + for (i = 0; cases[i].name != NULL; i++) + { + gchar *name; +@@ -224,5 +225,4 @@ main (int argc, + g_free (name); + } - return g_test_run(); +- return g_test_run(); } --- glib-2.34.3/gio/tests/gdbus-non-socket.c 2013-01-16 18:13:25.000000000 +0100 diff --git a/gnu/packages/patches/glib-tests-timezone.patch b/gnu/packages/patches/glib-tests-timezone.patch deleted file mode 100644 index 4b335c7ffb..0000000000 --- a/gnu/packages/patches/glib-tests-timezone.patch +++ /dev/null @@ -1,41 +0,0 @@ -Since glibc 2.17 doesn't install timezone data by default (see -http://thread.gmane.org/gmane.comp.lib.glibc.alpha/17516), and since we -don't have that around, shamelessly skip this test. - ---- glib-2.34.3/glib/tests/gdatetime.c 2013-01-16 15:47:57.000000000 +0100 -+++ glib-2.34.3/glib/tests/gdatetime.c 2013-01-16 15:47:58.000000000 +0100 -@@ -186,14 +186,6 @@ test_GDateTime_equal (void) - g_assert (g_date_time_equal (dt1, dt2)); - g_date_time_unref (dt1); - -- /* America/Recife is in UTC-0300 */ -- tz = g_time_zone_new ("America/Recife"); -- dt1 = g_date_time_new (tz, 2010, 5, 24, 8, 0, 0); -- g_time_zone_unref (tz); -- g_assert_cmpint (g_date_time_get_utc_offset (dt1) / G_USEC_PER_SEC, ==, (-3 * 3600)); -- g_assert (g_date_time_equal (dt1, dt2)); -- g_date_time_unref (dt1); -- g_date_time_unref (dt2); - } - - static void -@@ -608,7 +608,6 @@ test_GDateTime_new_full (void) - g_assert_cmpint (8, ==, g_date_time_get_hour (dt)); - g_assert_cmpint (4, ==, g_date_time_get_minute (dt)); - g_assert_cmpint (0, ==, g_date_time_get_second (dt)); -- g_assert_cmpstr ("BRT", ==, g_date_time_get_timezone_abbreviation (dt)); - g_assert (!g_date_time_is_daylight_savings (dt)); - g_date_time_unref (dt); - } -@@ -1354,11 +1354,8 @@ main (gint argc, - g_test_add_func ("/GDateTime/to_timeval", test_GDateTime_to_timeval); - g_test_add_func ("/GDateTime/to_utc", test_GDateTime_to_utc); - g_test_add_func ("/GDateTime/now_utc", test_GDateTime_now_utc); -- g_test_add_func ("/GDateTime/dst", test_GDateTime_dst); - g_test_add_func ("/GDateTime/test_z", test_z); - g_test_add_func ("/GDateTime/test-all-dates", test_all_dates); -- g_test_add_func ("/GTimeZone/find-interval", test_find_interval); -- g_test_add_func ("/GTimeZone/adjust-time", test_adjust_time); - g_test_add_func ("/GTimeZone/no-header", test_no_header); - - return g_test_run (); |