summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2014-02-28 10:12:44 +0100
committerSebastian Dröge <sebastian@centricular.com>2014-02-28 10:28:55 +0100
commit9085bb43291655b88b19a6b31271243579380392 (patch)
tree5d27b965b0f9199e24d62eddaf5a34bcf4f7ee20
parentb06e46f9cab38ded5b269cfeaa43bb75dae2cddb (diff)
glib-networking: Update to 2.38.2 for some rather important TLS related bugfixes
-rw-r--r--recipes/glib-networking-static.recipe9
-rw-r--r--recipes/glib-networking.recipe6
-rw-r--r--recipes/glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch100
-rw-r--r--recipes/glib.recipe4
4 files changed, 113 insertions, 6 deletions
diff --git a/recipes/glib-networking-static.recipe b/recipes/glib-networking-static.recipe
index a988ef29..2d12680d 100644
--- a/recipes/glib-networking-static.recipe
+++ b/recipes/glib-networking-static.recipe
@@ -5,17 +5,20 @@ from cerbero.errors import FatalError
class Recipe(recipe.Recipe):
name = 'glib-networking-static'
- version = '2.34.2'
+ version = '2.38.2'
licenses = [License.LGPLv2Plus]
+ stype = SourceType.TARBALL
+ url = 'http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.38/glib-networking-2.38.2.tar.xz'
+ tarball_dirname = 'glib-networking-%(version)s'
+ autoreconf = True
configure_options = "--without-ca-certificates --enable-static-modules --enable-static --enable-more-warnings"
deps = ['glib', 'gnutls', 'glib-networking']
+ patches = ['glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch']
files_devel = ['lib/gio/modules/static/libgiognutls.a',
'lib/gio/modules/static/libgiognutls.la']
def prepare(self):
- self.remotes['origin'] = self.remotes['origin'].replace('-static', '')
- self.repo_dir = self.repo_dir.replace('-static', '')
self.tmp_destdir = os.path.join(self.build_dir, 'static-build')
querymodule_path = None
diff --git a/recipes/glib-networking.recipe b/recipes/glib-networking.recipe
index 03a0be60..5eb97de2 100644
--- a/recipes/glib-networking.recipe
+++ b/recipes/glib-networking.recipe
@@ -3,10 +3,14 @@ import os
class Recipe(recipe.Recipe):
name = 'glib-networking'
- version = '2.34.2'
+ version = '2.38.2'
licenses = [License.LGPLv2Plus]
+ stype = SourceType.TARBALL
+ url = 'http://ftp.gnome.org/pub/gnome/sources/glib-networking/2.38/glib-networking-2.38.2.tar.xz'
+ autoreconf = True
configure_options = "--without-ca-certificates --enable-more-warnings"
deps = ['glib', 'gnutls']
+ patches = ['glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch']
files_misc = ['lib/gio/modules/libgiognutls%(mext)s']
files_lang = ['glib-networking']
diff --git a/recipes/glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch b/recipes/glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch
new file mode 100644
index 00000000..c94c32f5
--- /dev/null
+++ b/recipes/glib-networking/0001-gnutls-add-initial-support-for-static-builds.patch
@@ -0,0 +1,100 @@
+From 7bb395ad65ae6bf0f61ce50675c5b23f234fd412 Mon Sep 17 00:00:00 2001
+From: Andoni Morales Alastruey <ylatuya@gmail.com>
+Date: Fri, 28 Feb 2014 10:02:31 +0100
+Subject: [PATCH] gnutls: add initial support for static builds
+
+---
+ configure.ac | 20 ++++++++++++++++++++
+ glib-networking.mk | 5 ++++-
+ tls/gnutls/gnutls-module.c | 15 ++++++++-------
+ 3 files changed, 32 insertions(+), 8 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 4234209..918ff81 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -233,6 +233,26 @@ if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then
+ -Werror=declaration-after-statement"
+ fi
+
++dnl ****************************************************
++dnl *** Check for GIO static modules ***
++dnl ****************************************************
++AC_MSG_CHECKING([whether to build static modules or not])
++AC_ARG_ENABLE(
++ static-modules,
++ AC_HELP_STRING(
++ [--enable-static-modules],
++ [build static modules @<:@default=no@:>@]),
++ [AS_CASE(
++ [$enableval], [no], [], [yes], [],
++ [AC_MSG_ERROR([bad value "$enableval" for --enable-static-modules])])],
++ [enable_static_modules=no])
++AC_MSG_RESULT([$enable_static_modules])
++if test "x$enable_static_modules" = xyes; then
++ AC_DEFINE(G_IO_MODULE_BUILD_STATIC, 1,
++ [Define if static modules should be built])
++fi
++AM_CONDITIONAL(G_IO_MODULE_BUILD_STATIC, [test "x$enable_static_modules" = "xyes"])
++
+ dnl *****************************
+ dnl *** done ***
+ dnl *****************************
+diff --git a/glib-networking.mk b/glib-networking.mk
+index 29b6a6a..5231766 100644
+--- a/glib-networking.mk
++++ b/glib-networking.mk
+@@ -1,6 +1,9 @@
+ ### glib-networking declarations
+
+-module_flags = -export_dynamic -avoid-version -module -no-undefined -export-symbols-regex '^g_io_module_(load|unload|query)'
++module_flags = -export_dynamic -avoid-version -module -no-undefined
++if !G_IO_MODULE_BUILD_STATIC
++module_flags += -export-symbols-regex '^g_io_module_(load|unload|query)'
++endif
+
+ giomoduledir = $(GIO_MODULE_DIR)
+
+diff --git a/tls/gnutls/gnutls-module.c b/tls/gnutls/gnutls-module.c
+index a725f9b..ceddf22 100644
+--- a/tls/gnutls/gnutls-module.c
++++ b/tls/gnutls/gnutls-module.c
+@@ -24,9 +24,8 @@
+ #include "gtlsbackend-gnutls.h"
+ #include "gtlsbackend-gnutls-pkcs11.h"
+
+-
+-void
+-g_io_module_load (GIOModule *module)
++static void
++_g_io_module_load (GIOModule *module)
+ {
+ g_tls_backend_gnutls_register (module);
+ #ifdef HAVE_PKCS11
+@@ -34,13 +33,13 @@ g_io_module_load (GIOModule *module)
+ #endif
+ }
+
+-void
+-g_io_module_unload (GIOModule *module)
++static void
++_g_io_module_unload (GIOModule *module)
+ {
+ }
+
+-gchar **
+-g_io_module_query (void)
++static gchar **
++_g_io_module_query (void)
+ {
+ gchar *eps[] = {
+ G_TLS_BACKEND_EXTENSION_POINT_NAME,
+@@ -48,3 +47,5 @@ g_io_module_query (void)
+ };
+ return g_strdupv (eps);
+ }
++
++G_IO_MODULE_DEFINE(gnutls);
+--
+1.9.0
+
diff --git a/recipes/glib.recipe b/recipes/glib.recipe
index 097ecbdc..9ffe6152 100644
--- a/recipes/glib.recipe
+++ b/recipes/glib.recipe
@@ -17,9 +17,9 @@ GLIB_CONFIG_UNVERSAL='''\
class Recipe(recipe.Recipe):
name = 'glib'
- version = '2.38.0'
+ version = '2.38.2'
stype = SourceType.TARBALL
- url = 'http://ftp.acc.umu.se/pub/GNOME/sources/glib/2.38/glib-2.38.0.tar.xz'
+ url = 'http://ftp.acc.umu.se/pub/GNOME/sources/glib/2.38/glib-2.38.2.tar.xz'
licenses = [License.LGPLv2Plus]
config_sh = 'sh autogen.sh'
deps = ['libffi', 'zlib']