diff options
author | Ludovic Courtès <ludo@gnu.org> | 2013-01-16 23:01:24 +0100 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2013-01-19 22:20:47 +0100 |
commit | 943f33a3263af38c69a2eb60440fe10602104607 (patch) | |
tree | 7786acdae26e1d815771f1a4ecce0639c412cda4 /gnu/packages/patches | |
parent | 3889a82ef889004bb0835c54e8dc8b23a4a6758f (diff) | |
download | guix-943f33a3263af38c69a2eb60440fe10602104607.tar.gz |
distro: glib: Run the test suite; add DBus.
* distro/packages/glib.scm: Rename to... * gnu/packages/glib.scm: ... this. Update module declaration accordingly. (dbus): New variable. (glib): Change version number to 2.34.3, and adjust URL accordingly. Add a "doc" output. Add #:configure-flags, #:patches, and #:phases arguments. Add DBUS as an input, as well a three patches. * Makefile.am (MODULES): Adjust to file renaming. (dist_patch_DATA): Add `glib-tests-timezone.patch', `glib-tests-homedir.patch', and `glib-tests-desktop.patch'.
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/glib-tests-desktop.patch | 87 | ||||
-rw-r--r-- | gnu/packages/patches/glib-tests-homedir.patch | 59 | ||||
-rw-r--r-- | gnu/packages/patches/glib-tests-timezone.patch | 41 |
3 files changed, 187 insertions, 0 deletions
diff --git a/gnu/packages/patches/glib-tests-desktop.patch b/gnu/packages/patches/glib-tests-desktop.patch new file mode 100644 index 0000000000..85f2b06c9a --- /dev/null +++ b/gnu/packages/patches/glib-tests-desktop.patch @@ -0,0 +1,87 @@ +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[]) + + g_test_add_func ("/appinfo/basic", test_basic); + g_test_add_func ("/appinfo/text", test_text); +- g_test_add_func ("/appinfo/launch", test_launch); + 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/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); + +--- 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 +@@ -207,13 +207,6 @@ main (int argc, char *argv[]) + + g_test_init (&argc, &argv, NULL); + +- g_test_add_func ("/contenttype/guess", test_guess); +- g_test_add_func ("/contenttype/unknown", test_unknown); +- g_test_add_func ("/contenttype/subtype", test_subtype); +- g_test_add_func ("/contenttype/list", test_list); +- g_test_add_func ("/contenttype/executable", test_executable); +- g_test_add_func ("/contenttype/description", test_description); +- g_test_add_func ("/contenttype/icon", test_icon); + + 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, + 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 (); + + +----------------------------- +The hunk below removes tests that depend on `gdbus-testserver.py', +because that script depends on python-gobject. + +--- glib-2.34.3/gio/tests/Makefile.in 2012-11-26 20:08:54.000000000 +0100 ++++ glib-2.34.3/gio/tests/Makefile.in 2013-01-17 23:09:44.000000000 +0100 +@@ -60,15 +60,8 @@ DIST_COMMON = $(srcdir)/Makefile.am $(sr + noinst_PROGRAMS = $(am__EXEEXT_6) $(am__EXEEXT_8) + @HAVE_DBUS_DAEMON_TRUE@am__append_1 = \ + @HAVE_DBUS_DAEMON_TRUE@ actions \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-connection \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-connection-loss \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-connection-slow \ + @HAVE_DBUS_DAEMON_TRUE@ gdbus-names \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-proxy \ + @HAVE_DBUS_DAEMON_TRUE@ gdbus-proxy-threads \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-proxy-well-known-name \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-introspection \ +-@HAVE_DBUS_DAEMON_TRUE@ gdbus-threading \ + @HAVE_DBUS_DAEMON_TRUE@ gdbus-export \ + @HAVE_DBUS_DAEMON_TRUE@ gdbus-error \ + @HAVE_DBUS_DAEMON_TRUE@ gdbus-bz627724 \ + + +The test below depends on the availability /etc/passwd to dbus-daemon. + +--- glib-2.34.3/gio/tests/gdbus-auth.c 2013-01-19 14:32:14.000000000 +0100 ++++ glib-2.34.3/gio/tests/gdbus-auth.c 2013-01-19 14:32:20.000000000 +0100 +@@ -264,6 +264,7 @@ main (int argc, + { + gint ret; + ++ exit (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 new file mode 100644 index 0000000000..9232ca5e77 --- /dev/null +++ b/gnu/packages/patches/glib-tests-homedir.patch @@ -0,0 +1,59 @@ +`g_get_home_dir' looks at /etc/passwd first, which fails in chroot builds. +The gdbus tests use it to lookup .dbus-keyrings, so they cannot run in our +chroot build environment. Thus, disable them. + +--- glib-2.34.3/gio/tests/gdbus-connection-flush.c 2013-01-16 17:29:46.000000000 +0100 ++++ glib-2.34.3/gio/tests/gdbus-connection-flush.c 2013-01-16 17:29:47.000000000 +0100 +@@ -373,10 +373,6 @@ main (int argc, + g_type_init (); + g_test_init (&argc, &argv, NULL); + +- g_test_add ("/gdbus/connection/flush/busy", Fixture, NULL, +- setup, test_flush_busy, teardown); +- g_test_add ("/gdbus/connection/flush/idle", Fixture, NULL, +- setup, test_flush_idle, teardown); + + ret = g_test_run(); + +--- glib-2.34.3/gio/tests/gdbus-peer.c 2013-01-16 17:38:09.000000000 +0100 ++++ glib-2.34.3/gio/tests/gdbus-peer.c 2013-01-16 17:38:12.000000000 +0100 +@@ -1828,11 +1828,6 @@ main (int argc, + + g_test_add_func ("/gdbus/peer-to-peer", test_peer); + g_test_add_func ("/gdbus/delayed-message-processing", delayed_message_processing); +- g_test_add_func ("/gdbus/nonce-tcp", test_nonce_tcp); +- g_test_add_func ("/gdbus/tcp-anonymous", test_tcp_anonymous); +- g_test_add_func ("/gdbus/credentials", test_credentials); +- g_test_add_func ("/gdbus/overflow", test_overflow); +- g_test_add_func ("/gdbus/codegen-peer-to-peer", codegen_test_peer); + + 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 (); + 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(); + } + +--- glib-2.34.3/gio/tests/gdbus-non-socket.c 2013-01-16 18:13:25.000000000 +0100 ++++ glib-2.34.3/gio/tests/gdbus-non-socket.c 2013-01-16 18:13:27.000000000 +0100 +@@ -294,7 +294,6 @@ main (int argc, + g_type_init (); + g_test_init (&argc, &argv, NULL); + +- g_test_add_func ("/gdbus/non-socket", test_non_socket); + + ret = g_test_run(); + + diff --git a/gnu/packages/patches/glib-tests-timezone.patch b/gnu/packages/patches/glib-tests-timezone.patch new file mode 100644 index 0000000000..4b335c7ffb --- /dev/null +++ b/gnu/packages/patches/glib-tests-timezone.patch @@ -0,0 +1,41 @@ +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 (); |