summaryrefslogtreecommitdiff
path: root/recipes/glib-networking.recipe
diff options
context:
space:
mode:
authorNirbheek Chauhan <nirbheek@centricular.com>2018-05-20 10:31:17 +0530
committerNirbheek Chauhan <nirbheek@centricular.com>2018-05-22 12:09:50 +0530
commit5ff24813075ea2a746226bf479358811ddd40d05 (patch)
tree68aa54119f8499aa292a8d0ad4f990db3d950238 /recipes/glib-networking.recipe
parent85950cbb16048f85d2ba9c41bbf7136125afe97f (diff)
Port glib and glib-networking recipes to meson
Also, always use gnutls system trust for glib-networking. This is backported from latest master, and we should fix our gnutls config to work with this. Porting it in early so we have some time to deal with this before the next glib-networking stable release. Tested on fedora linux, cross-win32/64, cross-android-universal, darwin, cross-ios-universal, and windows/mingw.
Diffstat (limited to 'recipes/glib-networking.recipe')
-rw-r--r--recipes/glib-networking.recipe36
1 files changed, 12 insertions, 24 deletions
diff --git a/recipes/glib-networking.recipe b/recipes/glib-networking.recipe
index ee30ccb8..24476df1 100644
--- a/recipes/glib-networking.recipe
+++ b/recipes/glib-networking.recipe
@@ -4,35 +4,23 @@ from cerbero.utils.shell import which
class Recipe(recipe.Recipe):
name = 'glib-networking'
- version = '2.54.1'
+ version = '2.56.0'
licenses = [License.LGPLv2Plus]
stype = SourceType.TARBALL
- url = 'http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.54/glib-networking-%(version)s.tar.xz'
- autoreconf = True
- configure_options = "--without-ca-certificates --enable-more-warnings"
+ btype = BuildType.MESON
+ url = 'http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.56/glib-networking-%(version)s.tar.xz'
+ meson_options = {'ca_certificates_path': '', 'libproxy_support': 'false',
+ 'gnome_proxy_support': 'false', 'pkcs11_support': 'false'}
deps = ['glib', 'gnutls']
- patches = ['glib-networking/0001-Add-support-for-static-modules.patch',
- 'glib-networking/0002-Get-the-CA-certificate-path-from-the-environment-var.patch',
- 'glib-networking/0003-gnutls-Use-db-relative-to-libglib-2.0-if-needed.patch',
- 'glib-networking/0004-gtlsbackend-gnutls-Get-anchor-file-relative-to-libgi.patch']
+ patches = [name + '/0001-Fix-building-tls-plugin-without-pkcs11.patch',
+ # XXX: This patch may require changes to gnutls's system trust
+ # since we can no longer set the certificate path in glib-networking
+ name + '/0001-Use-the-GnuTLS-system-trust-by-default.patch',
+ name + '/0006-meson-Only-run-gio-querymodules-if-it-s-found.patch']
files_misc = ['lib/gio/modules/libgiognutls%(mext)s']
files_lang = ['glib-networking']
def prepare(self):
- querymodule_path = os.path.join(self.config.prefix, 'bin', 'gio-querymodules')
- if self.config.target_platform in [Platform.DARWIN, Platform.IOS]:
- # For the universal build we need to use the right gio-querymodules
- arch = self.config.target_arch
- arch_path = os.path.join(self.config.prefix, arch, 'bin', 'gio-querymodules')
- # Only for the universal builds
- if os.path.exists(arch_path):
- querymodule_path = arch_path
-
- if self.config.cross_compiling():
- querymodule_path = which('true')
-
- if self.config.target_platform in [Platform.ANDROID]:
- self.append_env['CFLAGS'] = ' -DGST_CA_CERTIFICATES_FROM_ENV'
-
- self.config_sh = 'GIO_QUERYMODULES=%s %s' % (querymodule_path, self.config_sh)
+ if self.config.target_platform in [Platform.ANDROID, Platform.IOS]:
+ self.meson_options.update({'static_modules': 'true'})