4102db0f7a
Changes include: - Change the package type to meson, as autoconf is no longer supported. - Add 0002-add-option-to-build-tests.patch 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 of 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. - Add 0003-remove-cpp-requirement.patch: C++ is not needed when just compiling. The inclusion of C++ in meson.build is to ensure libglib doesn't accidentally use C++ reserved keywords in public headers. Because tests aren't being compiled, there is no need for C++ as a requirement. (https://gitlab.gnome.org/GNOME/glib/issues/1748) - Add 0004-Add-Wno-format-nonliteral-to-compiler-arguments.patch: This prevents a false error when compiling against older gcc versions. (https://gitlab.gnome.org/GNOME/glib/issues/1744) - Remove 0004-Do-not-hardcode-python-path-into-various-tools.patch: The switch to meson makes this obsolete. - Remove LIBGLIB2_AUTORECONF = YES from libglib2.mk: Now that libglib2 is a meson package, there is no need for AUTORECONF. - Remove LIBGLIB2_INSTALL_STAGING_OPTS from libglib2.mk: Meson resolves these correctly. - Add LIBGLIB2_REMOVE_BINDIR_PREFIX_FROM_PC_FILE in libglib2.mk: Newer versions of libglib2 prefix glib-genmarshal, gobject-query, and glib-mkenums with ${bindir}. Unfortunately, this will resolve to the host systems /bin/ directory, which will cause compilation issues if the host does not have these programs. By removing the ${bindir}/ prefix, these programs are resolved in PATH instead. Signed-off-by: Adam Duskett <Aduskett@gmail.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
104 lines
2.8 KiB
Diff
104 lines
2.8 KiB
Diff
From 8de64376005b8630ce5e29f45d5502a56b121173 Mon Sep 17 00:00:00 2001
|
|
From: Adam Duskett <Aduskett@gmail.com>
|
|
Date: Wed, 8 May 2019 13:08:43 -0400
|
|
Subject: [PATCH] add option to build 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, add the option 'tests' which when set to false, enforces not
|
|
building any tests, even when building the host variant.
|
|
|
|
Signed-off-by: Adam Duskett <Aduskett@gmail.com>
|
|
---
|
|
gio/meson.build | 4 +++-
|
|
glib/meson.build | 5 +++--
|
|
gobject/meson.build | 5 +++--
|
|
meson.build | 6 +++++-
|
|
meson_options.txt | 5 +++++
|
|
5 files changed, 19 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/gio/meson.build b/gio/meson.build
|
|
index 4e5e021..925563c 100644
|
|
--- a/gio/meson.build
|
|
+++ b/gio/meson.build
|
|
@@ -994,4 +994,6 @@ if enable_systemtap
|
|
endif
|
|
|
|
subdir('fam')
|
|
-subdir('tests')
|
|
+if build_tests
|
|
+ subdir('tests')
|
|
+endif
|
|
diff --git a/glib/meson.build b/glib/meson.build
|
|
index 8350ea2..bc1a7c5 100644
|
|
--- a/glib/meson.build
|
|
+++ b/glib/meson.build
|
|
@@ -370,5 +370,6 @@ if enable_systemtap
|
|
install_dir : tapset_install_dir,
|
|
install : true)
|
|
endif
|
|
-
|
|
-subdir('tests')
|
|
+if build_tests
|
|
+ subdir('tests')
|
|
+endif
|
|
diff --git a/gobject/meson.build b/gobject/meson.build
|
|
index db8d3c4..094cb58 100644
|
|
--- a/gobject/meson.build
|
|
+++ b/gobject/meson.build
|
|
@@ -165,5 +165,6 @@ if enable_systemtap
|
|
install_dir : tapset_install_dir,
|
|
install : true)
|
|
endif
|
|
-
|
|
-subdir('tests')
|
|
+if build_tests
|
|
+ subdir('tests')
|
|
+endif
|
|
diff --git a/meson.build b/meson.build
|
|
index b57b2d6..d625a50 100644
|
|
--- a/meson.build
|
|
+++ b/meson.build
|
|
@@ -75,6 +75,8 @@ installed_tests_enabled = get_option('installed_tests')
|
|
installed_tests_template = files('template.test.in')
|
|
installed_tests_template_tap = files('template-tap.test.in')
|
|
|
|
+build_tests = get_option('tests')
|
|
+
|
|
add_project_arguments('-D_GNU_SOURCE', language: 'c')
|
|
|
|
# Disable strict aliasing;
|
|
@@ -1994,8 +1996,10 @@ subdir('gthread')
|
|
subdir('gmodule')
|
|
subdir('gio')
|
|
subdir('fuzzing')
|
|
-subdir('tests')
|
|
|
|
+if build_tests
|
|
+ subdir('tests')
|
|
+endif
|
|
# xgettext is optional (on Windows for instance)
|
|
if find_program('xgettext', required : get_option('nls')).found()
|
|
subdir('po')
|
|
diff --git a/meson_options.txt b/meson_options.txt
|
|
index 5c5b4df..7ffde0a 100644
|
|
--- a/meson_options.txt
|
|
+++ b/meson_options.txt
|
|
@@ -89,3 +89,8 @@ option('nls',
|
|
value : 'auto',
|
|
yield: true,
|
|
description : 'Enable native language support (translations)')
|
|
+
|
|
+option('tests',
|
|
+ type : 'boolean',
|
|
+ value : false,
|
|
+ description : 'Build tests')
|
|
--
|
|
2.21.0
|
|
|