Browse Source

- glib2: bump version to 2.62.4

master
vanhofen 4 years ago
parent
commit
f3f51e9b5f
  1. 45
      make/target-libs.mk
  2. 22
      patches/glib2-automake.patch
  3. 60
      patches/glib2-disable-tests.patch
  4. 32
      patches/glib2/0001-fix-compile-time-atomic-detection.patch
  5. 37
      patches/glib2/0002-allow-explicit-disabling-of-tests.patch
  6. 78
      patches/glib2/0003-remove-cpp-requirement.patch
  7. 28
      patches/glib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch

45
make/target-libs.mk

@ -1181,7 +1181,7 @@ libffi: $(DL_DIR)/$(LIBFFI_SOURCE) | $(TARGET_DIR)
# -----------------------------------------------------------------------------
GLIB2_VER = 2.56.3
GLIB2_VER = 2.62.4
GLIB2_DIR = glib-$(GLIB2_VER)
GLIB2_SOURCE = glib-$(GLIB2_VER).tar.xz
GLIB2_SITE = https://ftp.gnome.org/pub/gnome/sources/glib/$(basename $(GLIB2_VER))
@ -1189,10 +1189,7 @@ GLIB2_SITE = https://ftp.gnome.org/pub/gnome/sources/glib/$(basename $(GLIB2_V
$(DL_DIR)/$(GLIB2_SOURCE):
$(DOWNLOAD) $(GLIB2_SITE)/$(GLIB2_SOURCE)
GLIB2_PATCH = glib2-disable-tests.patch
GLIB2_PATCH += glib2-automake.patch
GLIB2_DEPS = zlib libffi
GLIB2_DEPS = zlib libffi util-linux
ifeq ($(BOXSERIES),hd2)
GLIB2_DEPS += gettext
endif
@ -1208,32 +1205,22 @@ glib2: $(GLIB2_DEPS) $(DL_DIR)/$(GLIB2_SOURCE) | $(TARGET_DIR)
$(REMOVE)/$(GLIB2_DIR)
$(UNTAR)/$(GLIB2_SOURCE)
$(CHDIR)/$(GLIB2_DIR); \
$(call apply_patches,$(GLIB2_PATCH)); \
echo "ac_cv_type_long_long=yes" > arm-linux.cache; \
echo "glib_cv_stack_grows=no" >> arm-linux.cache; \
echo "glib_cv_uscore=no" >> arm-linux.cache; \
echo "glib_cv_va_copy=no" >> arm-linux.cache; \
echo "glib_cv_va_val_copy=yes" >> arm-linux.cache; \
echo "ac_cv_func_posix_getpwuid_r=yes" >> arm-linux.cache; \
echo "ac_cv_func_posix_getgrgid_r=yes" >> arm-linux.cache; \
autoreconf -fi; \
$(CONFIGURE) \
$(APPLY_PATCHES); \
$(MESON_CONFIGURE) \
--prefix=$(prefix) \
--datarootdir=$(REMOVE_datarootdir) \
--cache-file=arm-linux.cache \
--disable-debug \
--disable-selinux \
--disable-libmount \
--disable-fam \
--disable-gtk-doc \
--disable-gtk-doc-html \
--disable-compile-warnings \
--with-threads="posix" \
--with-pcre=internal \
$(GLIB2_CONF) \
-Dman=false \
-Ddtrace=false \
-Dsystemtap=false \
-Dgtk_doc=false \
-Dinternal_pcre=true \
-Diconv=external \
-Dgio_module_dir=$(libdir)/gio/modules \
-Dinstalled_tests=false \
-Doss_fuzz=disabled \
-Dselinux=disabled \
; \
$(MAKE) install DESTDIR=$(TARGET_DIR)
rm -f $(addprefix $(TARGET_bindir)/,gapplication gdbus* gio* glib* gobject-query gresource gsettings gtester*)
$(NINJA); \
$(NINJA_INSTALL)
$(REWRITE_LIBTOOL_LA)
$(REMOVE)/$(GLIB2_DIR)
$(TOUCH)

22
patches/glib2-automake.patch

@ -1,22 +0,0 @@
--- a/Makefile.in
+++ b/Makefile.in
@@ -484,15 +484,15 @@
| sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
distcleancheck_listfiles = find . -type f -print
ABS_TAPSET_DIR = @ABS_TAPSET_DIR@
-ACLOCAL = @ACLOCAL@
+ACLOCAL = true
ALLOCA = @ALLOCA@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AS = @AS@
-AUTOCONF = @AUTOCONF@
-AUTOHEADER = @AUTOHEADER@
-AUTOMAKE = @AUTOMAKE@
+AUTOCONF = true
+AUTOHEADER = true
+AUTOMAKE = true
AWK = @AWK@
CARBON_LIBS = @CARBON_LIBS@
CATALOGS = @CATALOGS@

60
patches/glib2-disable-tests.patch

@ -1,60 +0,0 @@
From ee2d6609bce808ac72afdbf86db1a6e27c78171e Mon Sep 17 00:00:00 2001
From: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Date: Wed, 21 Jun 2017 16:37:54 -0400
Subject: [PATCH] disable tests
Disable tests, some of them need python and sometimes host-python
gets mixed with distro python leading to build failures.
Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
Signed-off-by: Adam Duskett <aduskett@codeblue.com>
---
Makefile.am | 2 +-
gio/Makefile.am | 2 +-
glib/Makefile.am | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 008ad58..007332d 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -6,7 +6,7 @@ include $(top_srcdir)/glib.mk
ACLOCAL_AMFLAGS = -I m4macros ${ACLOCAL_FLAGS}
-SUBDIRS = . m4macros glib gmodule gthread gobject gio po docs tests
+SUBDIRS = . m4macros glib gmodule gthread gobject gio
DIST_SUBDIRS = $(SUBDIRS) build win32
bin_SCRIPTS = glib-gettextize
diff --git a/gio/Makefile.am b/gio/Makefile.am
index 67db1b7..78309b5 100644
--- a/gio/Makefile.am
+++ b/gio/Makefile.am
@@ -246,7 +246,7 @@ platform_libadd += win32/libgiowin32.la
platform_deps += win32/libgiowin32.la
endif
-SUBDIRS += . tests
+SUBDIRS += .
if HAVE_FAM
SUBDIRS += fam
diff --git a/glib/Makefile.am b/glib/Makefile.am
index d755853..61166e5 100644
--- a/glib/Makefile.am
+++ b/glib/Makefile.am
@@ -33,8 +33,8 @@ else
MAYBE_PCRE = pcre
endif
-SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre . tests
-DIST_SUBDIRS = libcharset gnulib pcre update-pcre tests
+SUBDIRS = libcharset $(PRINTF_SUBDIR) $(MAYBE_PCRE) update-pcre .
+DIST_SUBDIRS = libcharset gnulib pcre update-pcre
AM_CPPFLAGS = \
$(glib_INCLUDES) \
--
2.9.4

32
patches/glib2/0001-fix-compile-time-atomic-detection.patch

@ -0,0 +1,32 @@
From d5c628a6179b99705fa05ab87437321b132c81bc Mon Sep 17 00:00:00 2001
From: Brendan Heading <brendanheading@gmail.com>
Date: Wed, 21 Jun 2017 16:36:15 -0400
Subject: [PATCH] Fix compile time atomic detection
Improved compile-time detection of atomic support in the compiler.
Upstream-Status: Merged
See : https://gitlab.gnome.org/GNOME/glib/issues/1063
Signed-off-by: Brendan Heading <brendanheading@gmail.com>
Signed-off-by: Adam Duskett <aduskett@gmail.com>
---
glib/gthread-posix.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/glib/gthread-posix.c b/glib/gthread-posix.c
index 71a6b7b..d09d029 100644
--- a/glib/gthread-posix.c
+++ b/glib/gthread-posix.c
@@ -68,7 +68,7 @@
#endif
/* clang defines __ATOMIC_SEQ_CST but doesn't support the GCC extension */
-#if defined(HAVE_FUTEX) && defined(__ATOMIC_SEQ_CST) && !defined(__clang__)
+#if defined(HAVE_FUTEX) && defined(__ATOMIC_SEQ_CST) && defined(__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4) && !defined(__clang__)
#define USE_NATIVE_MUTEX
#endif
--
2.9.4

37
patches/glib2/0002-allow-explicit-disabling-of-tests.patch

@ -0,0 +1,37 @@
From cdccbc6ec36243463613cb32d7058c26c3c51e16 Mon Sep 17 00:00:00 2001
From: Adam Duskett <Aduskett@gmail.com>
Date: Wed, 18 Sep 2019 09:50:00 -0700
Subject: [PATCH] allow explicit disabling of tests
Upstream won't build tests when cross-compiling. However; this means still
building the tests during a host build. Building the tests causes build
failures on older distributions such as CentOS 6 and Debian 7 because the
command `objcopy --add-symbol` is used when building the test
"test_resources2," which is not available with the older version of objcopy
provided by the distributions.
Instead, remove the conditional checks which set build_tests and only check if
installed_tests_enabled is passed.
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Refresh for 2.62.2
---
meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meson.build b/meson.build
index 99806d0..3206603 100644
--- a/meson.build
+++ b/meson.build
@@ -77,7 +77,7 @@
installed_tests_template_tap = files('template-tap.test.in')
# Don’t build the tests unless we can run them (either natively, in an exe wrapper, or by installing them for later use)
-build_tests = not meson.is_cross_build() or (meson.is_cross_build() and meson.has_exe_wrapper()) or installed_tests_enabled
+build_tests = installed_tests_enabled
add_project_arguments('-D_GNU_SOURCE', language: 'c')
--
2.23.0

78
patches/glib2/0003-remove-cpp-requirement.patch

@ -0,0 +1,78 @@
From 2f168951df1feebeac549ada1ea44ea092484c54 Mon Sep 17 00:00:00 2001
From: Adam Duskett <Aduskett@gmail.com>
Date: Mon, 16 Sep 2019 10:12:38 -0700
Subject: [PATCH] remove cpp requirement
The c++ test is necessary to ensure libglib doesn't accidentally use C++
reserved keywords in public headers. Because this is just a test, it isn't
necessary to have a C++ compiler to build libglib2.
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
Upstream status: Denied (Buildroot specific)
https://gitlab.gnome.org/GNOME/glib/issues/1748
---
glib/glibconfig.h.in | 1 -
meson.build | 18 +-----------------
tests/meson.build | 5 -----
3 files changed, 1 insertion(+), 23 deletions(-)
diff --git a/glib/glibconfig.h.in b/glib/glibconfig.h.in
index 7ef8c48..128e65d 100644
--- a/glib/glibconfig.h.in
+++ b/glib/glibconfig.h.in
@@ -117,7 +117,6 @@ typedef unsigned @glib_intptr_type_define@ guintptr;
@glib_vacopy@
@g_have_iso_c_varargs@
-@g_have_iso_cxx_varargs@
/* gcc-2.95.x supports both gnu style and ISO varargs, but if -ansi
* is passed ISO vararg support is turned off, and there is no work
diff --git a/meson.build b/meson.build
index 4bbf4c2..ac59f4e 100644
--- a/meson.build
+++ b/meson.build
@@ -1,4 +1,4 @@
-project('glib', 'c', 'cpp',
+project('glib', 'c',
version : '2.62.4',
# NOTE: We keep this pinned at 0.49 because that's what Debian 10 ships
meson_version : '>= 0.49.2',
@@ -10,7 +10,6 @@
)
cc = meson.get_compiler('c')
-cxx = meson.get_compiler('cpp')
cc_can_run = not meson.is_cross_build() or meson.has_exe_wrapper()
@@ -1484,20 +1483,6 @@
#endif''')
endif
-g_have_iso_cxx_varargs = cxx.compiles('''
- void some_func (void) {
- int a(int p1, int p2, int p3);
- #define call_a(...) a(1,__VA_ARGS__)
- call_a(2,3);
- }''', name : 'ISO C99 varargs macros in C++')
-
-if g_have_iso_cxx_varargs
- glibconfig_conf.set('g_have_iso_cxx_varargs', '''
-#ifdef __cplusplus
-# define G_HAVE_ISO_VARARGS 1
-#endif''')
-endif
-
g_have_gnuc_varargs = cc.compiles('''
void some_func (void) {
int a(int p1, int p2, int p3);
@@ -2095,7 +2080,6 @@
subdir('gthread')
subdir('gmodule')
subdir('gio')
-subdir('fuzzing')
if build_tests
subdir('tests')
endif

28
patches/glib2/0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch

@ -0,0 +1,28 @@
From 9e0f11a4981737f98bac93a22b6f2ff1a3887b63 Mon Sep 17 00:00:00 2001
From: Adam Duskett <Aduskett@gmail.com>
Date: Tue, 9 Apr 2019 13:03:51 -0400
Subject: [PATCH] Add '-Wno-format-nonliteral' to compiler arguments.
This warning is a false positive on older versions of gcc.
See https://gitlab.gnome.org/GNOME/glib/issues/1744 for more details.
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
---
meson.build | 1 +
1 file changed, 1 insertion(+)
diff --git a/meson.build b/meson.build
index 3c615b7..7cae4e8 100644
--- a/meson.build
+++ b/meson.build
@@ -366,6 +366,7 @@
'-Wno-cast-function-type',
+ '-Wno-format-nonliteral',
# Due to function casts through (void*) we cannot support -Wpedantic:
# https://wiki.gnome.org/Projects/GLib/CompilerRequirements#Function_pointer_conversions.
'-Wno-pedantic',
'-Werror=declaration-after-statement',
'-Werror=format=2',
--
2.20.1
Loading…
Cancel
Save