commit:     6116ba2ccceddcef38f6aea7165bdb0d8ca736e8
Author:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
AuthorDate: Sat Mar 27 21:35:56 2021 +0000
Commit:     Matt Turner <mattst88 <AT> gentoo <DOT> org>
CommitDate: Sat Mar 27 21:47:04 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6116ba2c

dev-libs/libgweather: Version bump to 40.0

Signed-off-by: Matt Turner <mattst88 <AT> gentoo.org>

 dev-libs/libgweather/Manifest                      |   1 +
 .../files/40.0-autoskip-network-test.patch         |  29 ++++++
 dev-libs/libgweather/files/40.0-meson-tweaks.patch | 109 +++++++++++++++++++++
 dev-libs/libgweather/files/40.0-tests-locale.patch |  55 +++++++++++
 dev-libs/libgweather/libgweather-40.0.ebuild       |  70 +++++++++++++
 5 files changed, 264 insertions(+)

diff --git a/dev-libs/libgweather/Manifest b/dev-libs/libgweather/Manifest
index f833821c1a2..c0343643d81 100644
--- a/dev-libs/libgweather/Manifest
+++ b/dev-libs/libgweather/Manifest
@@ -1,2 +1,3 @@
 DIST libgweather-3.36.1.tar.xz 2702144 BLAKE2B 
bd867461b64ef81607695ae1a3796d2b096129a9a60721c5fcb20d8c35859c0b76a985e9393c23b311f7c0fdec3e691618eab83a826b483c427287906d575251
 SHA512 
6c7090b0b6dfac61e73a398d34329cd706080a007694ceb3d47700b4f444982f8ca989dd6dfaefe85b79ffd5af9c423be4bf1bd8491ac0ba6bd15c150d97b26d
 DIST libgweather-3.36.2.tar.xz 2707976 BLAKE2B 
0051e1fe9dccef44ff6fe46bdf8e6b23c9a772ed000daf3a0349e064819d0f17f3f7d902f9c860f0d186a67fc6c5a27b31a8b20b4fec7e738221a58830216ca5
 SHA512 
58012931382d87b10ace79f6e2337a9244a0877a8bc241bad5da6368f6d8eaa815f88bee25cfd49b12baa4b2399a407b905f1cf0afb98f649fda6b0dc9f61f01
+DIST libgweather-40.0.tar.xz 2704404 BLAKE2B 
27bc69c350ae91a07307d75b5ea1d03bb251f51bf87d5d54861965b61d7ed825ab708466cbe9d961c4f544b8b17ca6ed37b723c003ce2c1ef020270d6812c61d
 SHA512 
72e295246bf03550039a70bd4bf5b8f06357a6b70e04308c197fba309e406d410a97d128d849d97a29a6a114faa1ef5452e6632870b7ea45223a0c305c228cc1

diff --git a/dev-libs/libgweather/files/40.0-autoskip-network-test.patch 
b/dev-libs/libgweather/files/40.0-autoskip-network-test.patch
new file mode 100644
index 00000000000..def65382613
--- /dev/null
+++ b/dev-libs/libgweather/files/40.0-autoskip-network-test.patch
@@ -0,0 +1,29 @@
+From 1d0ae284635ef1975a581b4d73ab497ccbd4532f Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <l...@gentoo.org>
+Date: Sun, 30 Aug 2020 10:35:13 +0300
+Subject: [PATCH 2/2] tests: Skip metar tests when METAR_SOURCES couldn't be
+ resolved
+
+---
+ libgweather/test_libgweather.c | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/libgweather/test_libgweather.c b/libgweather/test_libgweather.c
+index ee13dc7b..7ffaac41 100644
+--- a/libgweather/test_libgweather.c
++++ b/libgweather/test_libgweather.c
+@@ -438,6 +438,11 @@ test_metar_weather_stations (void)
+         g_test_message ("SSL/TLS failure, please check your glib-networking 
installation");
+         g_test_failed ();
+         return;
++    } else if (msg->status_code == SOUP_STATUS_CANT_RESOLVE) {
++        g_test_skip ("Could not resolve " METAR_SOURCES " - network 
sandboxed?");
++        g_object_unref (session);
++        g_object_unref (msg);
++        return;
+     }
+     g_assert_cmpint (msg->status_code, >=, 200);
+     g_assert_cmpint (msg->status_code, <, 300);
+-- 
+2.26.2
+

diff --git a/dev-libs/libgweather/files/40.0-meson-tweaks.patch 
b/dev-libs/libgweather/files/40.0-meson-tweaks.patch
new file mode 100644
index 00000000000..aa56c592890
--- /dev/null
+++ b/dev-libs/libgweather/files/40.0-meson-tweaks.patch
@@ -0,0 +1,109 @@
+From bbf17eac53c128904190ef2d74176b0717d7d907 Mon Sep 17 00:00:00 2001
+From: Mart Raudsepp <l...@gentoo.org>
+Date: Sat, 23 Feb 2019 12:21:01 +0200
+Subject: [PATCH] build: Provide introspection option and don't build manual
+ tests
+
+---
+ libgweather/meson.build | 21 ++++++++++++++-------
+ meson.build             |  4 ++++
+ meson_options.txt       |  2 ++
+ 3 files changed, 20 insertions(+), 7 deletions(-)
+
+diff --git a/libgweather/meson.build b/libgweather/meson.build
+index 26f067e6..8f0f9047 100644
+--- a/libgweather/meson.build
++++ b/libgweather/meson.build
+@@ -74,6 +74,15 @@ lib_libgweather = shared_library('gweather-3',
+   install: true,
+ )
+ 
++libgweather_dep = declare_dependency(
++  sources: [gweather_enum_types[1]],
++  dependencies: deps_libgweather,
++  link_with: lib_libgweather,
++  include_directories: root_inc,
++)
++
++if get_option('introspection')
++
+ gweather_gir = gnome.generate_gir(lib_libgweather,
+   sources: introspection_sources,
+   dependencies: deps_libgweather,
+@@ -91,13 +100,6 @@ gweather_gir = gnome.generate_gir(lib_libgweather,
+   install: true,
+ )
+ 
+-libgweather_dep = declare_dependency(
+-  sources: [gweather_enum_types[1], gweather_gir],
+-  dependencies: deps_libgweather,
+-  link_with: lib_libgweather,
+-  include_directories: root_inc,
+-)
+-
+ if enable_vala
+   gnome.generate_vapi('gweather-3.0',
+     sources: gweather_gir[0],
+@@ -106,11 +108,13 @@ if enable_vala
+     install: true
+   )
+ endif
++endif
+ 
+ test_cargs = ['-DTEST_LOCATIONS="@0@"'.format(locations_bin.full_path()),
+               '-DSCHEMASDIR="@0@/schemas"'.format(meson.source_root()),
+               '-DSCHEMAS_BUILDDIR="@0@/schemas"'.format(meson.build_root())]
+ 
++if false
+ executable('test_locations',
+   ['test_locations.c'],
+   c_args: test_cargs,
+@@ -121,6 +125,7 @@ executable('test_locations_utc',
+   c_args: test_cargs,
+   dependencies: libgweather_dep,
+   install: false)
++endif
+ 
+ exe = executable('test_libgweather',
+   ['test_libgweather.c'],
+@@ -129,6 +134,7 @@ exe = executable('test_libgweather',
+   install: false)
+ test('test_libgweather', exe, depends: [locations_bin])
+ 
++if false
+ executable('test_metar',
+   ['test_metar.c', gweather_c_sources],
+   c_args: test_cargs,
+@@ -144,3 +150,4 @@ executable('test_weather',
+   c_args: test_cargs,
+   dependencies: libgweather_dep,
+   install: false)
++endif
+diff --git a/meson.build b/meson.build
+index 87f9a7d8..48ff0ca2 100644
+--- a/meson.build
++++ b/meson.build
+@@ -104,6 +104,10 @@ else
+   enable_vala = enable_vala != 'false'
+ endif
+ 
++if enable_vala and not get_option('introspection')
++  error('Vala bindings require introspection support')
++endif
++
+ root_inc = include_directories('.')
+ 
+ subdir('data')
+diff --git a/meson_options.txt b/meson_options.txt
+index 19b2c6a7..bf4c5175 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -8,3 +8,5 @@ option('enable_vala', type: 'combo', choices : ['true', 
'false', 'auto'], value
+        description: 'Install vala bindings')
+ option('gtk_doc', type: 'boolean', value: false,
+        description: 'Whether to generate the API reference')
++option('introspection', type: 'boolean', value: true,
++       description: 'generate GObject Introspection data')
+-- 
+2.26.2
+

diff --git a/dev-libs/libgweather/files/40.0-tests-locale.patch 
b/dev-libs/libgweather/files/40.0-tests-locale.patch
new file mode 100644
index 00000000000..ea1f6020152
--- /dev/null
+++ b/dev-libs/libgweather/files/40.0-tests-locale.patch
@@ -0,0 +1,55 @@
+From 6b2801a8195990fdf5166b62f62ddfbad55f11e4 Mon Sep 17 00:00:00 2001
+From: Emmanuele Bassi <eba...@gnome.org>
+Date: Mon, 9 Mar 2020 12:21:57 +0000
+Subject: [PATCH 1/2] Do not run local-dependent tests with missing locales
+
+Not everyone has all the locales installed all the time, so let's check
+if a locale is available before using it.
+---
+ libgweather/test_libgweather.c | 12 +++++++++++-
+ 1 file changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/libgweather/test_libgweather.c b/libgweather/test_libgweather.c
+index b10c1f16..ee13dc7b 100644
+--- a/libgweather/test_libgweather.c
++++ b/libgweather/test_libgweather.c
+@@ -678,6 +678,7 @@ test_location_names (void)
+ {
+     g_autoptr(GWeatherLocation) world = NULL;
+     g_autoptr(GWeatherLocation) brussels = NULL;
++    char *old_locale;
+ 
+     world = gweather_location_get_world ();
+     g_assert_nonnull (world);
+@@ -689,10 +690,19 @@ test_location_names (void)
+     g_assert_cmpstr (gweather_location_get_english_name (brussels), ==, 
"Brussels");
+     gweather_location_unref (brussels);
+ 
++    old_locale = g_strdup (setlocale (LC_ALL, NULL));
+     setlocale (LC_ALL, "fr_FR.UTF-8");
+ 
+     g_clear_pointer (&world, gweather_location_unref);
+     g_clear_pointer (&brussels, gweather_location_unref);
++    if (strstr (setlocale (LC_ALL, NULL), "fr_FR.UTF-8") == NULL)
++      {
++        g_test_skip ("locale fr_FR.UTF-8 not available, skipping localization 
tests");
++        setlocale (LC_ALL, old_locale);
++        g_free (old_locale);
++        return;
++      }
++
+     _gweather_location_reset_world ();
+ 
+     world = gweather_location_get_world ();
+@@ -705,7 +715,7 @@ test_location_names (void)
+     g_assert_cmpstr (gweather_location_get_english_name (brussels), ==, 
"Brussels");
+     gweather_location_unref (brussels);
+ 
+-    setlocale (LC_ALL, "");
++    setlocale (LC_ALL, old_locale);
+     g_clear_pointer (&world, gweather_location_unref);
+     g_clear_pointer (&brussels, gweather_location_unref);
+     _gweather_location_reset_world ();
+-- 
+2.26.2
+

diff --git a/dev-libs/libgweather/libgweather-40.0.ebuild 
b/dev-libs/libgweather/libgweather-40.0.ebuild
new file mode 100644
index 00000000000..46454d5c78d
--- /dev/null
+++ b/dev-libs/libgweather/libgweather-40.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+VALA_USE_DEPEND="vapigen"
+
+inherit gnome.org gnome2-utils meson vala xdg
+
+DESCRIPTION="Location and timezone database and weather-lookup library"
+HOMEPAGE="https://wiki.gnome.org/Projects/LibGWeather";
+
+LICENSE="GPL-2+"
+SLOT="2/3-16-2" # subslot = 3-(libgweather-3 soname suffix) w/ temporary -2 
suffix for silent ABI break after 3.28 without soname bump as per distro-list
+
+IUSE="glade gtk-doc +introspection +vala"
+REQUIRED_USE="vala? ( introspection )"
+
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux 
~x86-linux ~x86-solaris"
+
+RDEPEND="
+       >=dev-libs/glib-2.44.0:2
+       >=x11-libs/gtk+-3.13.5:3[introspection?]
+       >=net-libs/libsoup-2.44:2.4
+       >=dev-libs/libxml2-2.6.0:2
+       sci-geosciences/geocode-glib
+       >=sys-libs/timezone-data-2010k
+
+       glade? ( >=dev-util/glade-3.16:3.10 )
+       introspection? ( >=dev-libs/gobject-introspection-1.54:= )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       dev-util/glib-utils
+       gtk-doc? ( >=dev-util/gtk-doc-1.11
+               app-text/docbook-xml-dtd:4.3 )
+       >=sys-devel/gettext-0.19.8
+       virtual/pkgconfig
+       $(vala_depend)
+"
+
+PATCHES=(
+       "${FILESDIR}"/40.0-meson-tweaks.patch # Provide introspection 
optionality and don't build tests that aren't ran automatically
+       "${FILESDIR}"/40.0-tests-locale.patch # Don't fail tests when a locale 
is not present, https://gitlab.gnome.org/GNOME/libgweather/-/merge_requests/58
+       "${FILESDIR}"/40.0-autoskip-network-test.patch
+)
+
+src_prepare() {
+       xdg_src_prepare
+       vala_src_prepare
+}
+
+src_configure() {
+       local emesonargs=(
+               $(meson_use glade glade_catalog)
+               $(meson_use vala enable_vala)
+               $(meson_use gtk-doc gtk_doc)
+               $(meson_use introspection)
+       )
+       meson_src_configure
+}
+
+pkg_postinst() {
+       xdg_pkg_postinst
+       gnome2_schemas_update
+}
+
+pkg_postrm() {
+       xdg_pkg_postrm
+       gnome2_schemas_update
+}

Reply via email to