* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
@ 2020-07-16 11:01 James Hilliard
2020-07-16 21:20 ` Peter Seiderer
0 siblings, 1 reply; 9+ messages in thread
From: James Hilliard @ 2020-07-16 11:01 UTC (permalink / raw)
To: buildroot
Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
Rebase remaining patches.
Meson now requires single quotes for cross-compilation.conf, replace
double quotes with single quotes.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
---
...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
...tic-libs-when-default-library-static.patch | 8 +-
...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
...encies-base.py-add-pkg_config_stati.patch} | 8 +-
package/meson/meson.hash | 4 +-
package/meson/meson.mk | 2 +-
package/pkg-meson.mk | 12 +--
support/misc/utils.mk | 4 +
8 files changed, 29 insertions(+), 99 deletions(-)
delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
index 79e99adf4a..e098c25bbe 100644
--- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
+++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
@@ -1,4 +1,4 @@
-From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
+From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Date: Sat, 14 Jul 2018 11:18:45 +0200
Subject: [PATCH] Only fix RPATH if install_rpath is not empty
@@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
-index 8ac6aab1..7ef04116 100644
+index 0be01fe75..d991cf4e7 100644
--- a/mesonbuild/minstall.py
+++ b/mesonbuild/minstall.py
-@@ -489,8 +489,14 @@ class Installer:
- printed_symlink_error = True
- if os.path.isfile(outname):
+@@ -512,8 +512,14 @@ class Installer:
+ if file_copied:
+ self.did_install_something = True
try:
-- depfixer.fix_rpath(outname, install_rpath, final_path,
+- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
- install_name_mappings, verbose=False)
+ # Buildroot check-host-rpath script expects RPATH
+ # But if install_rpath is empty, it will stripped.
+ # So, preserve it in this case
+ if install_rpath:
-+ depfixer.fix_rpath(outname, install_rpath, final_path,
++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
+ install_name_mappings, verbose=False)
+ else:
+ print("Skipping RPATH fixing")
@@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
if isinstance(e.code, int) and e.code == 0:
pass
--
-2.20.1
+2.25.1
diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
index b859d8372e..2639915891 100644
--- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
+++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
@@ -1,4 +1,4 @@
-From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
+From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
From: Matt Weber <matthew.weber@rockwellcollins.com>
Date: Sat, 26 Oct 2019 09:17:29 -0500
Subject: [PATCH] Prefer ext static libs when --default-library=static
@@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
1 file changed, 3 insertions(+)
diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
-index 5d50b7d..8f5f1c6 100644
+index 47e97d261..729c98acc 100644
--- a/mesonbuild/compilers/mixins/clike.py
+++ b/mesonbuild/compilers/mixins/clike.py
-@@ -857,6 +857,9 @@ class CLikeCompiler:
+@@ -940,6 +940,9 @@ class CLikeCompiler:
elif env.machines[self.for_machine].is_cygwin():
shlibext = ['dll', 'dll.a']
prefixes = ['cyg'] + prefixes
@@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
# Linux/BSDs
shlibext = ['so']
--
-2.17.1
+2.25.1
diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
deleted file mode 100644
index c1db98f5a0..0000000000
--- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
-From: James Hilliard <james.hilliard1@gmail.com>
-Date: Sat, 2 May 2020 20:43:36 -0600
-Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
-
-This is useful when one needs to force meson to use wrappers for cross
-compilation.
-
-Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
-[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
-1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
-undergone haevy refactorisation]
----
- mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
- 1 file changed, 21 insertions(+), 13 deletions(-)
-
-diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
-index a00005588..b6d7cc141 100644
---- a/mesonbuild/modules/gnome.py
-+++ b/mesonbuild/modules/gnome.py
-@@ -32,7 +32,7 @@ from ..mesonlib import (
- MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
- join_args, unholder,
- )
--from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
-+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
- from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
-
- # gresource compilation is broken due to the way
-@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
- # these utilities via pkg-config, so it would be best to use the
- # results from pkg-config when possible.
- gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
-- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
-- if giscanner.found():
-- giscanner_path = giscanner.get_command()[0]
-- if not any(x in giscanner_path for x in gi_util_dirs_check):
-- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
-+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
-+ if giscanner_bin is not None:
-+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
- else:
-- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
-+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
-+ if giscanner.found():
-+ giscanner_path = giscanner.get_command()[0]
-+ if not any(x in giscanner_path for x in gi_util_dirs_check):
-+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
-+ else:
-+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
-
-- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
-- if gicompiler.found():
-- gicompiler_path = gicompiler.get_command()[0]
-- if not any(x in gicompiler_path for x in gi_util_dirs_check):
-- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
-+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
-+ if gicompiler_bin is not None:
-+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
- else:
-- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
-+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
-+ if gicompiler.found():
-+ gicompiler_path = gicompiler.get_command()[0]
-+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
-+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
-+ else:
-+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
-
- ns = kwargs.pop('namespace')
- nsversion = kwargs.pop('nsversion')
---
-2.25.1
-
diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
similarity index 95%
rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
index 4196545a96..eda17cadc5 100644
--- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
+++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
@@ -1,4 +1,4 @@
-From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
+From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Date: Sat, 15 Feb 2020 15:13:59 +0100
Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
@@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
-index 5636602e..de4e87bc 100644
+index 23701da95..83e51626d 100644
--- a/mesonbuild/dependencies/base.py
+++ b/mesonbuild/dependencies/base.py
-@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
+@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
def _set_libs(self):
env = None
libcmd = [self.name, '--libs']
@@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
# Force pkg-config to output -L fields even if they are system
# paths so we can do manual searching with cc.find_library() later.
--
-2.25.4
+2.25.1
diff --git a/package/meson/meson.hash b/package/meson/meson.hash
index b1d230938a..c88ea8e904 100644
--- a/package/meson/meson.hash
+++ b/package/meson/meson.hash
@@ -1,4 +1,4 @@
# Locally calculated after checking pgp signature
-# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
-sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
+# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
+sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
diff --git a/package/meson/meson.mk b/package/meson/meson.mk
index d5b1e86811..f698226a45 100644
--- a/package/meson/meson.mk
+++ b/package/meson/meson.mk
@@ -4,7 +4,7 @@
#
################################################################################
-MESON_VERSION = 0.54.2
+MESON_VERSION = 0.55.0
MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
MESON_LICENSE = Apache-2.0
MESON_LICENSE_FILES = COPYING
diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
index 0a4ab2194c..782fcaec6c 100644
--- a/package/pkg-meson.mk
+++ b/package/pkg-meson.mk
@@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
-e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
-e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
-e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
- -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
- -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
- -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
+ -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
+ -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
+ -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
-e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
-e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
-e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
@@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
-e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
-e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
-e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
- -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
- -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
- -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
+ -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
+ -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
+ -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
-e 's%@HOST_DIR@%$(HOST_DIR)%g' \
-e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
-e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
diff --git a/support/misc/utils.mk b/support/misc/utils.mk
index 2f00ccfdb7..68660d3f5b 100644
--- a/support/misc/utils.mk
+++ b/support/misc/utils.mk
@@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
# list of unquoted items: a b c d --> "a", "b", "c", "d"
make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
+# build a comma-separated list of single quoted items, from a space-separated
+# list of unquoted items: a b c d --> "a", "b", "c", "d"
+make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
+
# Needed for the foreach loops to loop over the list of hooks, so that
# each hook call is properly separated by a newline.
define sep
--
2.25.1
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-16 11:01 [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0 James Hilliard
@ 2020-07-16 21:20 ` Peter Seiderer
2020-07-16 21:36 ` James Hilliard
0 siblings, 1 reply; 9+ messages in thread
From: Peter Seiderer @ 2020-07-16 21:20 UTC (permalink / raw)
To: buildroot
Hello James,
On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
>
> Rebase remaining patches.
>
> Meson now requires single quotes for cross-compilation.conf, replace
> double quotes with single quotes.
>
> Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> ---
> ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> ...tic-libs-when-default-library-static.patch | 8 +-
> ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> package/meson/meson.hash | 4 +-
> package/meson/meson.mk | 2 +-
> package/pkg-meson.mk | 12 +--
> support/misc/utils.mk | 4 +
> 8 files changed, 29 insertions(+), 99 deletions(-)
> delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
>
> diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> index 79e99adf4a..e098c25bbe 100644
> --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> @@ -1,4 +1,4 @@
> -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> Date: Sat, 14 Jul 2018 11:18:45 +0200
> Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> 1 file changed, 8 insertions(+), 2 deletions(-)
>
> diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> -index 8ac6aab1..7ef04116 100644
> +index 0be01fe75..d991cf4e7 100644
> --- a/mesonbuild/minstall.py
> +++ b/mesonbuild/minstall.py
> -@@ -489,8 +489,14 @@ class Installer:
> - printed_symlink_error = True
> - if os.path.isfile(outname):
> +@@ -512,8 +512,14 @@ class Installer:
> + if file_copied:
> + self.did_install_something = True
> try:
> -- depfixer.fix_rpath(outname, install_rpath, final_path,
> +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
the functionality of it)?
> - install_name_mappings, verbose=False)
> + # Buildroot check-host-rpath script expects RPATH
> + # But if install_rpath is empty, it will stripped.
> + # So, preserve it in this case
> + if install_rpath:
> -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> + install_name_mappings, verbose=False)
> + else:
> + print("Skipping RPATH fixing")
> @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> if isinstance(e.code, int) and e.code == 0:
> pass
> --
> -2.20.1
> +2.25.1
>
> diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> index b859d8372e..2639915891 100644
> --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> @@ -1,4 +1,4 @@
> -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> From: Matt Weber <matthew.weber@rockwellcollins.com>
> Date: Sat, 26 Oct 2019 09:17:29 -0500
> Subject: [PATCH] Prefer ext static libs when --default-library=static
> @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> 1 file changed, 3 insertions(+)
>
> diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> -index 5d50b7d..8f5f1c6 100644
> +index 47e97d261..729c98acc 100644
> --- a/mesonbuild/compilers/mixins/clike.py
> +++ b/mesonbuild/compilers/mixins/clike.py
> -@@ -857,6 +857,9 @@ class CLikeCompiler:
> +@@ -940,6 +940,9 @@ class CLikeCompiler:
> elif env.machines[self.for_machine].is_cygwin():
> shlibext = ['dll', 'dll.a']
> prefixes = ['cyg'] + prefixes
> @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> # Linux/BSDs
> shlibext = ['so']
> --
> -2.17.1
> +2.25.1
>
> diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> deleted file mode 100644
> index c1db98f5a0..0000000000
> --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> +++ /dev/null
> @@ -1,74 +0,0 @@
> -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> -From: James Hilliard <james.hilliard1@gmail.com>
> -Date: Sat, 2 May 2020 20:43:36 -0600
> -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> -
> -This is useful when one needs to force meson to use wrappers for cross
> -compilation.
> -
> -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> -undergone haevy refactorisation]
> ----
> - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> - 1 file changed, 21 insertions(+), 13 deletions(-)
> -
> -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> -index a00005588..b6d7cc141 100644
> ---- a/mesonbuild/modules/gnome.py
> -+++ b/mesonbuild/modules/gnome.py
> -@@ -32,7 +32,7 @@ from ..mesonlib import (
> - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> - join_args, unholder,
> - )
> --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> -
> - # gresource compilation is broken due to the way
> -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> - # these utilities via pkg-config, so it would be best to use the
> - # results from pkg-config when possible.
> - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> -- if giscanner.found():
> -- giscanner_path = giscanner.get_command()[0]
> -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> -+ if giscanner_bin is not None:
> -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> - else:
> -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> -+ if giscanner.found():
> -+ giscanner_path = giscanner.get_command()[0]
> -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> -+ else:
> -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> -
> -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> -- if gicompiler.found():
> -- gicompiler_path = gicompiler.get_command()[0]
> -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> -+ if gicompiler_bin is not None:
> -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> - else:
> -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> -+ if gicompiler.found():
> -+ gicompiler_path = gicompiler.get_command()[0]
> -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> -+ else:
> -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> -
> - ns = kwargs.pop('namespace')
> - nsversion = kwargs.pop('nsversion')
> ---
> -2.25.1
> -
> diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> similarity index 95%
> rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> index 4196545a96..eda17cadc5 100644
> --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> @@ -1,4 +1,4 @@
> -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> Date: Sat, 15 Feb 2020 15:13:59 +0100
> Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> -index 5636602e..de4e87bc 100644
> +index 23701da95..83e51626d 100644
> --- a/mesonbuild/dependencies/base.py
> +++ b/mesonbuild/dependencies/base.py
> -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> def _set_libs(self):
> env = None
> libcmd = [self.name, '--libs']
> @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> # Force pkg-config to output -L fields even if they are system
> # paths so we can do manual searching with cc.find_library() later.
> --
> -2.25.4
> +2.25.1
>
> diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> index b1d230938a..c88ea8e904 100644
> --- a/package/meson/meson.hash
> +++ b/package/meson/meson.hash
> @@ -1,4 +1,4 @@
> # Locally calculated after checking pgp signature
> -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> index d5b1e86811..f698226a45 100644
> --- a/package/meson/meson.mk
> +++ b/package/meson/meson.mk
> @@ -4,7 +4,7 @@
> #
> ################################################################################
>
> -MESON_VERSION = 0.54.2
> +MESON_VERSION = 0.55.0
> MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> MESON_LICENSE = Apache-2.0
> MESON_LICENSE_FILES = COPYING
> diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> index 0a4ab2194c..782fcaec6c 100644
> --- a/package/pkg-meson.mk
> +++ b/package/pkg-meson.mk
> @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> index 2f00ccfdb7..68660d3f5b 100644
> --- a/support/misc/utils.mk
> +++ b/support/misc/utils.mk
> @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> # list of unquoted items: a b c d --> "a", "b", "c", "d"
> make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
>
> +# build a comma-separated list of single quoted items, from a space-separated
> +# list of unquoted items: a b c d --> "a", "b", "c", "d"
Should be:
# list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
Regards,
Peter
> +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> +
> # Needed for the foreach loops to loop over the list of hooks, so that
> # each hook call is properly separated by a newline.
> define sep
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-16 21:20 ` Peter Seiderer
@ 2020-07-16 21:36 ` James Hilliard
[not found] ` <20200716235722.61bd13bf@gmx.net>
0 siblings, 1 reply; 9+ messages in thread
From: James Hilliard @ 2020-07-16 21:36 UTC (permalink / raw)
To: buildroot
On Thu, Jul 16, 2020 at 3:20 PM Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello James,
>
> On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
> >
> > Rebase remaining patches.
> >
> > Meson now requires single quotes for cross-compilation.conf, replace
> > double quotes with single quotes.
> >
> > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > ---
> > ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> > ...tic-libs-when-default-library-static.patch | 8 +-
> > ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> > ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> > package/meson/meson.hash | 4 +-
> > package/meson/meson.mk | 2 +-
> > package/pkg-meson.mk | 12 +--
> > support/misc/utils.mk | 4 +
> > 8 files changed, 29 insertions(+), 99 deletions(-)
> > delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
> >
> > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > index 79e99adf4a..e098c25bbe 100644
> > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > @@ -1,4 +1,4 @@
> > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > 1 file changed, 8 insertions(+), 2 deletions(-)
> >
> > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > -index 8ac6aab1..7ef04116 100644
> > +index 0be01fe75..d991cf4e7 100644
> > --- a/mesonbuild/minstall.py
> > +++ b/mesonbuild/minstall.py
> > -@@ -489,8 +489,14 @@ class Installer:
> > - printed_symlink_error = True
> > - if os.path.isfile(outname):
> > +@@ -512,8 +512,14 @@ class Installer:
> > + if file_copied:
> > + self.did_install_something = True
> > try:
> > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
>
> Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> the functionality of it)?
https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
https://github.com/mesonbuild/meson/pull/7103
>
> > - install_name_mappings, verbose=False)
> > + # Buildroot check-host-rpath script expects RPATH
> > + # But if install_rpath is empty, it will stripped.
> > + # So, preserve it in this case
> > + if install_rpath:
> > -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> > ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > + install_name_mappings, verbose=False)
> > + else:
> > + print("Skipping RPATH fixing")
> > @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> > if isinstance(e.code, int) and e.code == 0:
> > pass
> > --
> > -2.20.1
> > +2.25.1
> >
> > diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > index b859d8372e..2639915891 100644
> > --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > @@ -1,4 +1,4 @@
> > -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> > +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> > From: Matt Weber <matthew.weber@rockwellcollins.com>
> > Date: Sat, 26 Oct 2019 09:17:29 -0500
> > Subject: [PATCH] Prefer ext static libs when --default-library=static
> > @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> > -index 5d50b7d..8f5f1c6 100644
> > +index 47e97d261..729c98acc 100644
> > --- a/mesonbuild/compilers/mixins/clike.py
> > +++ b/mesonbuild/compilers/mixins/clike.py
> > -@@ -857,6 +857,9 @@ class CLikeCompiler:
> > +@@ -940,6 +940,9 @@ class CLikeCompiler:
> > elif env.machines[self.for_machine].is_cygwin():
> > shlibext = ['dll', 'dll.a']
> > prefixes = ['cyg'] + prefixes
> > @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> > # Linux/BSDs
> > shlibext = ['so']
> > --
> > -2.17.1
> > +2.25.1
> >
> > diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > deleted file mode 100644
> > index c1db98f5a0..0000000000
> > --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > +++ /dev/null
> > @@ -1,74 +0,0 @@
> > -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> > -From: James Hilliard <james.hilliard1@gmail.com>
> > -Date: Sat, 2 May 2020 20:43:36 -0600
> > -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> > -
> > -This is useful when one needs to force meson to use wrappers for cross
> > -compilation.
> > -
> > -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> > -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> > -undergone haevy refactorisation]
> > ----
> > - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> > - 1 file changed, 21 insertions(+), 13 deletions(-)
> > -
> > -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> > -index a00005588..b6d7cc141 100644
> > ---- a/mesonbuild/modules/gnome.py
> > -+++ b/mesonbuild/modules/gnome.py
> > -@@ -32,7 +32,7 @@ from ..mesonlib import (
> > - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> > - join_args, unholder,
> > - )
> > --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> > -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> > - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> > -
> > - # gresource compilation is broken due to the way
> > -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> > - # these utilities via pkg-config, so it would be best to use the
> > - # results from pkg-config when possible.
> > - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> > -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > -- if giscanner.found():
> > -- giscanner_path = giscanner.get_command()[0]
> > -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> > -+ if giscanner_bin is not None:
> > -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> > - else:
> > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > -+ if giscanner.found():
> > -+ giscanner_path = giscanner.get_command()[0]
> > -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > -+ else:
> > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > -
> > -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > -- if gicompiler.found():
> > -- gicompiler_path = gicompiler.get_command()[0]
> > -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> > -+ if gicompiler_bin is not None:
> > -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> > - else:
> > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > -+ if gicompiler.found():
> > -+ gicompiler_path = gicompiler.get_command()[0]
> > -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > -+ else:
> > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > -
> > - ns = kwargs.pop('namespace')
> > - nsversion = kwargs.pop('nsversion')
> > ---
> > -2.25.1
> > -
> > diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > similarity index 95%
> > rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > index 4196545a96..eda17cadc5 100644
> > --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > @@ -1,4 +1,4 @@
> > -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> > +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> > From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > Date: Sat, 15 Feb 2020 15:13:59 +0100
> > Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> > @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> > -index 5636602e..de4e87bc 100644
> > +index 23701da95..83e51626d 100644
> > --- a/mesonbuild/dependencies/base.py
> > +++ b/mesonbuild/dependencies/base.py
> > -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> > +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> > def _set_libs(self):
> > env = None
> > libcmd = [self.name, '--libs']
> > @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> > # Force pkg-config to output -L fields even if they are system
> > # paths so we can do manual searching with cc.find_library() later.
> > --
> > -2.25.4
> > +2.25.1
> >
> > diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> > index b1d230938a..c88ea8e904 100644
> > --- a/package/meson/meson.hash
> > +++ b/package/meson/meson.hash
> > @@ -1,4 +1,4 @@
> > # Locally calculated after checking pgp signature
> > -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> > -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> > +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> > +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> > sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> > diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> > index d5b1e86811..f698226a45 100644
> > --- a/package/meson/meson.mk
> > +++ b/package/meson/meson.mk
> > @@ -4,7 +4,7 @@
> > #
> > ################################################################################
> >
> > -MESON_VERSION = 0.54.2
> > +MESON_VERSION = 0.55.0
> > MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> > MESON_LICENSE = Apache-2.0
> > MESON_LICENSE_FILES = COPYING
> > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> > index 0a4ab2194c..782fcaec6c 100644
> > --- a/package/pkg-meson.mk
> > +++ b/package/pkg-meson.mk
> > @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> > -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> > -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> > - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> > - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> > - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> > + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> > + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> > + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> > -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> > -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> > -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> > -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> > - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> > -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> > index 2f00ccfdb7..68660d3f5b 100644
> > --- a/support/misc/utils.mk
> > +++ b/support/misc/utils.mk
> > @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> > # list of unquoted items: a b c d --> "a", "b", "c", "d"
> > make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
> >
> > +# build a comma-separated list of single quoted items, from a space-separated
> > +# list of unquoted items: a b c d --> "a", "b", "c", "d"
>
> Should be:
> # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
Fixed:
https://patchwork.ozlabs.org/project/buildroot/patch/20200716213139.3190401-1-james.hilliard1 at gmail.com/
>
> Regards,
> Peter
>
> > +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> > +
> > # Needed for the foreach loops to loop over the list of hooks, so that
> > # each hook call is properly separated by a newline.
> > define sep
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
[not found] ` <20200716235722.61bd13bf@gmx.net>
@ 2020-07-17 21:56 ` Peter Seiderer
[not found] ` <CADvTj4pLKMnE7G4B3SzV0A=95b=fVgBNdoW7wZvRX50HPGO9GQ@mail.gmail.com>
1 sibling, 0 replies; 9+ messages in thread
From: Peter Seiderer @ 2020-07-17 21:56 UTC (permalink / raw)
To: buildroot
Re-add CC
Sorry for missing it on first send...
On Thu, 16 Jul 2020 23:57:22 +0200, Peter Seiderer <ps.report@gmx.net> wrote:
> Hello James,
>
> On Thu, 16 Jul 2020 15:36:38 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > On Thu, Jul 16, 2020 at 3:20 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > >
> > > Hello James,
> > >
> > > On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > >
> > > > Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
> > > >
> > > > Rebase remaining patches.
> > > >
> > > > Meson now requires single quotes for cross-compilation.conf, replace
> > > > double quotes with single quotes.
> > > >
> > > > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > ---
> > > > ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> > > > ...tic-libs-when-default-library-static.patch | 8 +-
> > > > ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> > > > ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> > > > package/meson/meson.hash | 4 +-
> > > > package/meson/meson.mk | 2 +-
> > > > package/pkg-meson.mk | 12 +--
> > > > support/misc/utils.mk | 4 +
> > > > 8 files changed, 29 insertions(+), 99 deletions(-)
> > > > delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
> > > >
> > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > index 79e99adf4a..e098c25bbe 100644
> > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > @@ -1,4 +1,4 @@
> > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > >
> > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > -index 8ac6aab1..7ef04116 100644
> > > > +index 0be01fe75..d991cf4e7 100644
> > > > --- a/mesonbuild/minstall.py
> > > > +++ b/mesonbuild/minstall.py
> > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > - printed_symlink_error = True
> > > > - if os.path.isfile(outname):
> > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > + if file_copied:
> > > > + self.did_install_something = True
> > > > try:
> > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > >
> > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > the functionality of it)?
> >
> > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > https://github.com/mesonbuild/meson/pull/7103
> >
>
> Thanks for the links, did only a very quick look at the discussion (mentioning
> buildroot), any chance the upstream commit makes this patch unnecessary?
>
> Regards,
> Peter
>
> > >
> > > > - install_name_mappings, verbose=False)
> > > > + # Buildroot check-host-rpath script expects RPATH
> > > > + # But if install_rpath is empty, it will stripped.
> > > > + # So, preserve it in this case
> > > > + if install_rpath:
> > > > -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > + install_name_mappings, verbose=False)
> > > > + else:
> > > > + print("Skipping RPATH fixing")
> > > > @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> > > > if isinstance(e.code, int) and e.code == 0:
> > > > pass
> > > > --
> > > > -2.20.1
> > > > +2.25.1
> > > >
> > > > diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > index b859d8372e..2639915891 100644
> > > > --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > @@ -1,4 +1,4 @@
> > > > -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> > > > +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> > > > From: Matt Weber <matthew.weber@rockwellcollins.com>
> > > > Date: Sat, 26 Oct 2019 09:17:29 -0500
> > > > Subject: [PATCH] Prefer ext static libs when --default-library=static
> > > > @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > > > 1 file changed, 3 insertions(+)
> > > >
> > > > diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> > > > -index 5d50b7d..8f5f1c6 100644
> > > > +index 47e97d261..729c98acc 100644
> > > > --- a/mesonbuild/compilers/mixins/clike.py
> > > > +++ b/mesonbuild/compilers/mixins/clike.py
> > > > -@@ -857,6 +857,9 @@ class CLikeCompiler:
> > > > +@@ -940,6 +940,9 @@ class CLikeCompiler:
> > > > elif env.machines[self.for_machine].is_cygwin():
> > > > shlibext = ['dll', 'dll.a']
> > > > prefixes = ['cyg'] + prefixes
> > > > @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> > > > # Linux/BSDs
> > > > shlibext = ['so']
> > > > --
> > > > -2.17.1
> > > > +2.25.1
> > > >
> > > > diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > deleted file mode 100644
> > > > index c1db98f5a0..0000000000
> > > > --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > +++ /dev/null
> > > > @@ -1,74 +0,0 @@
> > > > -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> > > > -From: James Hilliard <james.hilliard1@gmail.com>
> > > > -Date: Sat, 2 May 2020 20:43:36 -0600
> > > > -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> > > > -
> > > > -This is useful when one needs to force meson to use wrappers for cross
> > > > -compilation.
> > > > -
> > > > -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> > > > -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> > > > -undergone haevy refactorisation]
> > > > ----
> > > > - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> > > > - 1 file changed, 21 insertions(+), 13 deletions(-)
> > > > -
> > > > -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> > > > -index a00005588..b6d7cc141 100644
> > > > ---- a/mesonbuild/modules/gnome.py
> > > > -+++ b/mesonbuild/modules/gnome.py
> > > > -@@ -32,7 +32,7 @@ from ..mesonlib import (
> > > > - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> > > > - join_args, unholder,
> > > > - )
> > > > --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> > > > -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> > > > - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> > > > -
> > > > - # gresource compilation is broken due to the way
> > > > -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> > > > - # these utilities via pkg-config, so it would be best to use the
> > > > - # results from pkg-config when possible.
> > > > - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> > > > -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > -- if giscanner.found():
> > > > -- giscanner_path = giscanner.get_command()[0]
> > > > -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> > > > -+ if giscanner_bin is not None:
> > > > -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> > > > - else:
> > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > -+ if giscanner.found():
> > > > -+ giscanner_path = giscanner.get_command()[0]
> > > > -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > -+ else:
> > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > -
> > > > -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > -- if gicompiler.found():
> > > > -- gicompiler_path = gicompiler.get_command()[0]
> > > > -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> > > > -+ if gicompiler_bin is not None:
> > > > -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> > > > - else:
> > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > -+ if gicompiler.found():
> > > > -+ gicompiler_path = gicompiler.get_command()[0]
> > > > -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > -+ else:
> > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > -
> > > > - ns = kwargs.pop('namespace')
> > > > - nsversion = kwargs.pop('nsversion')
> > > > ---
> > > > -2.25.1
> > > > -
> > > > diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > similarity index 95%
> > > > rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > index 4196545a96..eda17cadc5 100644
> > > > --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > @@ -1,4 +1,4 @@
> > > > -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> > > > +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> > > > From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > > > Date: Sat, 15 Feb 2020 15:13:59 +0100
> > > > Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> > > > @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > >
> > > > diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> > > > -index 5636602e..de4e87bc 100644
> > > > +index 23701da95..83e51626d 100644
> > > > --- a/mesonbuild/dependencies/base.py
> > > > +++ b/mesonbuild/dependencies/base.py
> > > > -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > def _set_libs(self):
> > > > env = None
> > > > libcmd = [self.name, '--libs']
> > > > @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> > > > # Force pkg-config to output -L fields even if they are system
> > > > # paths so we can do manual searching with cc.find_library() later.
> > > > --
> > > > -2.25.4
> > > > +2.25.1
> > > >
> > > > diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> > > > index b1d230938a..c88ea8e904 100644
> > > > --- a/package/meson/meson.hash
> > > > +++ b/package/meson/meson.hash
> > > > @@ -1,4 +1,4 @@
> > > > # Locally calculated after checking pgp signature
> > > > -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> > > > -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> > > > +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> > > > +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> > > > sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> > > > diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> > > > index d5b1e86811..f698226a45 100644
> > > > --- a/package/meson/meson.mk
> > > > +++ b/package/meson/meson.mk
> > > > @@ -4,7 +4,7 @@
> > > > #
> > > > ################################################################################
> > > >
> > > > -MESON_VERSION = 0.54.2
> > > > +MESON_VERSION = 0.55.0
> > > > MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> > > > MESON_LICENSE = Apache-2.0
> > > > MESON_LICENSE_FILES = COPYING
> > > > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> > > > index 0a4ab2194c..782fcaec6c 100644
> > > > --- a/package/pkg-meson.mk
> > > > +++ b/package/pkg-meson.mk
> > > > @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> > > > -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> > > > -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> > > > - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> > > > + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> > > > -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> > > > -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> > > > -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> > > > -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> > > > index 2f00ccfdb7..68660d3f5b 100644
> > > > --- a/support/misc/utils.mk
> > > > +++ b/support/misc/utils.mk
> > > > @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> > > > # list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
> > > >
> > > > +# build a comma-separated list of single quoted items, from a space-separated
> > > > +# list of unquoted items: a b c d --> "a", "b", "c", "d"
> > >
> > > Should be:
> > > # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
> > Fixed:
> > https://patchwork.ozlabs.org/project/buildroot/patch/20200716213139.3190401-1-james.hilliard1 at gmail.com/
> > >
> > > Regards,
> > > Peter
> > >
> > > > +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> > > > +
> > > > # Needed for the foreach loops to loop over the list of hooks, so that
> > > > # each hook call is properly separated by a newline.
> > > > define sep
> > >
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
[not found] ` <CADvTj4pLKMnE7G4B3SzV0A=95b=fVgBNdoW7wZvRX50HPGO9GQ@mail.gmail.com>
@ 2020-07-17 22:05 ` Peter Seiderer
2020-07-17 22:23 ` Peter Seiderer
0 siblings, 1 reply; 9+ messages in thread
From: Peter Seiderer @ 2020-07-17 22:05 UTC (permalink / raw)
To: buildroot
Re-add CC
On Fri, 17 Jul 2020 02:05:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> On Thu, Jul 16, 2020 at 3:57 PM Peter Seiderer <ps.report@gmx.net> wrote:
> >
> > Hello James,
> >
> > On Thu, 16 Jul 2020 15:36:38 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> >
> > > On Thu, Jul 16, 2020 at 3:20 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > > >
> > > > Hello James,
> > > >
> > > > On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > > >
> > > > > Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
> > > > >
> > > > > Rebase remaining patches.
> > > > >
> > > > > Meson now requires single quotes for cross-compilation.conf, replace
> > > > > double quotes with single quotes.
> > > > >
> > > > > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > ---
> > > > > ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> > > > > ...tic-libs-when-default-library-static.patch | 8 +-
> > > > > ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> > > > > ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> > > > > package/meson/meson.hash | 4 +-
> > > > > package/meson/meson.mk | 2 +-
> > > > > package/pkg-meson.mk | 12 +--
> > > > > support/misc/utils.mk | 4 +
> > > > > 8 files changed, 29 insertions(+), 99 deletions(-)
> > > > > delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
> > > > >
> > > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > index 79e99adf4a..e098c25bbe 100644
> > > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > @@ -1,4 +1,4 @@
> > > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > > >
> > > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > > -index 8ac6aab1..7ef04116 100644
> > > > > +index 0be01fe75..d991cf4e7 100644
> > > > > --- a/mesonbuild/minstall.py
> > > > > +++ b/mesonbuild/minstall.py
> > > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > > - printed_symlink_error = True
> > > > > - if os.path.isfile(outname):
> > > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > > + if file_copied:
> > > > > + self.did_install_something = True
> > > > > try:
> > > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > >
> > > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > > the functionality of it)?
> > >
> > > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > > https://github.com/mesonbuild/meson/pull/7103
> > >
> >
> > Thanks for the links, did only a very quick look at the discussion (mentioning
> > buildroot), any chance the upstream commit makes this patch unnecessary?
> Yeah, looks like it does, sent a v3 with that removed:
> https://patchwork.ozlabs.org/project/buildroot/patch/20200717080356.3094739-1-james.hilliard1 at gmail.com/
> >
> > Regards,
> > Peter
> >
> > > >
> > > > > - install_name_mappings, verbose=False)
> > > > > + # Buildroot check-host-rpath script expects RPATH
> > > > > + # But if install_rpath is empty, it will stripped.
> > > > > + # So, preserve it in this case
> > > > > + if install_rpath:
> > > > > -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > + install_name_mappings, verbose=False)
> > > > > + else:
> > > > > + print("Skipping RPATH fixing")
> > > > > @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> > > > > if isinstance(e.code, int) and e.code == 0:
> > > > > pass
> > > > > --
> > > > > -2.20.1
> > > > > +2.25.1
> > > > >
> > > > > diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > index b859d8372e..2639915891 100644
> > > > > --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > @@ -1,4 +1,4 @@
> > > > > -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> > > > > +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> > > > > From: Matt Weber <matthew.weber@rockwellcollins.com>
> > > > > Date: Sat, 26 Oct 2019 09:17:29 -0500
> > > > > Subject: [PATCH] Prefer ext static libs when --default-library=static
> > > > > @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > > > > 1 file changed, 3 insertions(+)
> > > > >
> > > > > diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> > > > > -index 5d50b7d..8f5f1c6 100644
> > > > > +index 47e97d261..729c98acc 100644
> > > > > --- a/mesonbuild/compilers/mixins/clike.py
> > > > > +++ b/mesonbuild/compilers/mixins/clike.py
> > > > > -@@ -857,6 +857,9 @@ class CLikeCompiler:
> > > > > +@@ -940,6 +940,9 @@ class CLikeCompiler:
> > > > > elif env.machines[self.for_machine].is_cygwin():
> > > > > shlibext = ['dll', 'dll.a']
> > > > > prefixes = ['cyg'] + prefixes
> > > > > @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> > > > > # Linux/BSDs
> > > > > shlibext = ['so']
> > > > > --
> > > > > -2.17.1
> > > > > +2.25.1
> > > > >
> > > > > diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > deleted file mode 100644
> > > > > index c1db98f5a0..0000000000
> > > > > --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > +++ /dev/null
> > > > > @@ -1,74 +0,0 @@
> > > > > -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> > > > > -From: James Hilliard <james.hilliard1@gmail.com>
> > > > > -Date: Sat, 2 May 2020 20:43:36 -0600
> > > > > -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> > > > > -
> > > > > -This is useful when one needs to force meson to use wrappers for cross
> > > > > -compilation.
> > > > > -
> > > > > -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> > > > > -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> > > > > -undergone haevy refactorisation]
> > > > > ----
> > > > > - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> > > > > - 1 file changed, 21 insertions(+), 13 deletions(-)
> > > > > -
> > > > > -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> > > > > -index a00005588..b6d7cc141 100644
> > > > > ---- a/mesonbuild/modules/gnome.py
> > > > > -+++ b/mesonbuild/modules/gnome.py
> > > > > -@@ -32,7 +32,7 @@ from ..mesonlib import (
> > > > > - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> > > > > - join_args, unholder,
> > > > > - )
> > > > > --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> > > > > -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> > > > > - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> > > > > -
> > > > > - # gresource compilation is broken due to the way
> > > > > -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> > > > > - # these utilities via pkg-config, so it would be best to use the
> > > > > - # results from pkg-config when possible.
> > > > > - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> > > > > -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > -- if giscanner.found():
> > > > > -- giscanner_path = giscanner.get_command()[0]
> > > > > -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> > > > > -+ if giscanner_bin is not None:
> > > > > -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> > > > > - else:
> > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > -+ if giscanner.found():
> > > > > -+ giscanner_path = giscanner.get_command()[0]
> > > > > -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > -+ else:
> > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > -
> > > > > -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > -- if gicompiler.found():
> > > > > -- gicompiler_path = gicompiler.get_command()[0]
> > > > > -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> > > > > -+ if gicompiler_bin is not None:
> > > > > -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> > > > > - else:
> > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > -+ if gicompiler.found():
> > > > > -+ gicompiler_path = gicompiler.get_command()[0]
> > > > > -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > -+ else:
> > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > -
> > > > > - ns = kwargs.pop('namespace')
> > > > > - nsversion = kwargs.pop('nsversion')
> > > > > ---
> > > > > -2.25.1
> > > > > -
> > > > > diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > similarity index 95%
> > > > > rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > index 4196545a96..eda17cadc5 100644
> > > > > --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > @@ -1,4 +1,4 @@
> > > > > -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> > > > > +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> > > > > From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > > > > Date: Sat, 15 Feb 2020 15:13:59 +0100
> > > > > Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> > > > > @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> > > > > -index 5636602e..de4e87bc 100644
> > > > > +index 23701da95..83e51626d 100644
> > > > > --- a/mesonbuild/dependencies/base.py
> > > > > +++ b/mesonbuild/dependencies/base.py
> > > > > -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > def _set_libs(self):
> > > > > env = None
> > > > > libcmd = [self.name, '--libs']
> > > > > @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> > > > > # Force pkg-config to output -L fields even if they are system
> > > > > # paths so we can do manual searching with cc.find_library() later.
> > > > > --
> > > > > -2.25.4
> > > > > +2.25.1
> > > > >
> > > > > diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> > > > > index b1d230938a..c88ea8e904 100644
> > > > > --- a/package/meson/meson.hash
> > > > > +++ b/package/meson/meson.hash
> > > > > @@ -1,4 +1,4 @@
> > > > > # Locally calculated after checking pgp signature
> > > > > -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> > > > > -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> > > > > +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> > > > > +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> > > > > sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> > > > > diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> > > > > index d5b1e86811..f698226a45 100644
> > > > > --- a/package/meson/meson.mk
> > > > > +++ b/package/meson/meson.mk
> > > > > @@ -4,7 +4,7 @@
> > > > > #
> > > > > ################################################################################
> > > > >
> > > > > -MESON_VERSION = 0.54.2
> > > > > +MESON_VERSION = 0.55.0
> > > > > MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> > > > > MESON_LICENSE = Apache-2.0
> > > > > MESON_LICENSE_FILES = COPYING
> > > > > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> > > > > index 0a4ab2194c..782fcaec6c 100644
> > > > > --- a/package/pkg-meson.mk
> > > > > +++ b/package/pkg-meson.mk
> > > > > @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> > > > > -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> > > > > -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> > > > > -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> > > > > -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> > > > > -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> > > > > -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> > > > > index 2f00ccfdb7..68660d3f5b 100644
> > > > > --- a/support/misc/utils.mk
> > > > > +++ b/support/misc/utils.mk
> > > > > @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> > > > > # list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > > make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
> > > > >
> > > > > +# build a comma-separated list of single quoted items, from a space-separated
> > > > > +# list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > >
> > > > Should be:
> > > > # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
> > > Fixed:
> > > https://patchwork.ozlabs.org/project/buildroot/patch/20200716213139.3190401-1-james.hilliard1 at gmail.com/
> > > >
> > > > Regards,
> > > > Peter
> > > >
> > > > > +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> > > > > +
> > > > > # Needed for the foreach loops to loop over the list of hooks, so that
> > > > > # each hook call is properly separated by a newline.
> > > > > define sep
> > > >
> >
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-17 22:05 ` Peter Seiderer
@ 2020-07-17 22:23 ` Peter Seiderer
2020-07-17 22:24 ` James Hilliard
0 siblings, 1 reply; 9+ messages in thread
From: Peter Seiderer @ 2020-07-17 22:23 UTC (permalink / raw)
To: buildroot
Hello James,
On Sat, 18 Jul 2020 00:05:31 +0200, Peter Seiderer <ps.report@gmx.net> wrote:
> Re-add CC
>
> On Fri, 17 Jul 2020 02:05:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> > On Thu, Jul 16, 2020 at 3:57 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > >
> > > Hello James,
> > >
> > > On Thu, 16 Jul 2020 15:36:38 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > >
> > > > On Thu, Jul 16, 2020 at 3:20 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > > > >
> > > > > Hello James,
> > > > >
> > > > > On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > > > >
> > > > > > Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
> > > > > >
> > > > > > Rebase remaining patches.
> > > > > >
> > > > > > Meson now requires single quotes for cross-compilation.conf, replace
> > > > > > double quotes with single quotes.
> > > > > >
> > > > > > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > > ---
> > > > > > ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> > > > > > ...tic-libs-when-default-library-static.patch | 8 +-
> > > > > > ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> > > > > > ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> > > > > > package/meson/meson.hash | 4 +-
> > > > > > package/meson/meson.mk | 2 +-
> > > > > > package/pkg-meson.mk | 12 +--
> > > > > > support/misc/utils.mk | 4 +
> > > > > > 8 files changed, 29 insertions(+), 99 deletions(-)
> > > > > > delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
> > > > > >
> > > > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > index 79e99adf4a..e098c25bbe 100644
> > > > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > @@ -1,4 +1,4 @@
> > > > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > > > >
> > > > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > > > -index 8ac6aab1..7ef04116 100644
> > > > > > +index 0be01fe75..d991cf4e7 100644
> > > > > > --- a/mesonbuild/minstall.py
> > > > > > +++ b/mesonbuild/minstall.py
> > > > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > > > - printed_symlink_error = True
> > > > > > - if os.path.isfile(outname):
> > > > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > > > + if file_copied:
> > > > > > + self.did_install_something = True
> > > > > > try:
> > > > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > >
> > > > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > > > the functionality of it)?
> > > >
> > > > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > > > https://github.com/mesonbuild/meson/pull/7103
> > > >
> > >
> > > Thanks for the links, did only a very quick look at the discussion (mentioning
> > > buildroot), any chance the upstream commit makes this patch unnecessary?
> > Yeah, looks like it does, sent a v3 with that removed:
> > https://patchwork.ozlabs.org/project/buildroot/patch/20200717080356.3094739-1-james.hilliard1 at gmail.com/
Did you test it or did your decide by patch description/patch review (recall the failure
condition was a bit tricky)?
The meson pull request 7103 mentions the meson issue 2567 ([1]), mentioned in the
original version of the buildroot meson rpath patch ([2])...
Regards,
Peter
[1] https://github.com/mesonbuild/meson/issues/2567
[2] https://git.buildroot.net/buildroot/commit/?id=7a23af4773665d2ee40e2d4e525746ebe38456dd
> > >
> > > Regards,
> > > Peter
> > >
> > > > >
> > > > > > - install_name_mappings, verbose=False)
> > > > > > + # Buildroot check-host-rpath script expects RPATH
> > > > > > + # But if install_rpath is empty, it will stripped.
> > > > > > + # So, preserve it in this case
> > > > > > + if install_rpath:
> > > > > > -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > > + install_name_mappings, verbose=False)
> > > > > > + else:
> > > > > > + print("Skipping RPATH fixing")
> > > > > > @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> > > > > > if isinstance(e.code, int) and e.code == 0:
> > > > > > pass
> > > > > > --
> > > > > > -2.20.1
> > > > > > +2.25.1
> > > > > >
> > > > > > diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > index b859d8372e..2639915891 100644
> > > > > > --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > @@ -1,4 +1,4 @@
> > > > > > -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> > > > > > +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> > > > > > From: Matt Weber <matthew.weber@rockwellcollins.com>
> > > > > > Date: Sat, 26 Oct 2019 09:17:29 -0500
> > > > > > Subject: [PATCH] Prefer ext static libs when --default-library=static
> > > > > > @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > > > > > 1 file changed, 3 insertions(+)
> > > > > >
> > > > > > diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> > > > > > -index 5d50b7d..8f5f1c6 100644
> > > > > > +index 47e97d261..729c98acc 100644
> > > > > > --- a/mesonbuild/compilers/mixins/clike.py
> > > > > > +++ b/mesonbuild/compilers/mixins/clike.py
> > > > > > -@@ -857,6 +857,9 @@ class CLikeCompiler:
> > > > > > +@@ -940,6 +940,9 @@ class CLikeCompiler:
> > > > > > elif env.machines[self.for_machine].is_cygwin():
> > > > > > shlibext = ['dll', 'dll.a']
> > > > > > prefixes = ['cyg'] + prefixes
> > > > > > @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> > > > > > # Linux/BSDs
> > > > > > shlibext = ['so']
> > > > > > --
> > > > > > -2.17.1
> > > > > > +2.25.1
> > > > > >
> > > > > > diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > deleted file mode 100644
> > > > > > index c1db98f5a0..0000000000
> > > > > > --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > +++ /dev/null
> > > > > > @@ -1,74 +0,0 @@
> > > > > > -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> > > > > > -From: James Hilliard <james.hilliard1@gmail.com>
> > > > > > -Date: Sat, 2 May 2020 20:43:36 -0600
> > > > > > -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> > > > > > -
> > > > > > -This is useful when one needs to force meson to use wrappers for cross
> > > > > > -compilation.
> > > > > > -
> > > > > > -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > > -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> > > > > > -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> > > > > > -undergone haevy refactorisation]
> > > > > > ----
> > > > > > - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> > > > > > - 1 file changed, 21 insertions(+), 13 deletions(-)
> > > > > > -
> > > > > > -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> > > > > > -index a00005588..b6d7cc141 100644
> > > > > > ---- a/mesonbuild/modules/gnome.py
> > > > > > -+++ b/mesonbuild/modules/gnome.py
> > > > > > -@@ -32,7 +32,7 @@ from ..mesonlib import (
> > > > > > - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> > > > > > - join_args, unholder,
> > > > > > - )
> > > > > > --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> > > > > > -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> > > > > > - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> > > > > > -
> > > > > > - # gresource compilation is broken due to the way
> > > > > > -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> > > > > > - # these utilities via pkg-config, so it would be best to use the
> > > > > > - # results from pkg-config when possible.
> > > > > > - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> > > > > > -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > > -- if giscanner.found():
> > > > > > -- giscanner_path = giscanner.get_command()[0]
> > > > > > -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> > > > > > -+ if giscanner_bin is not None:
> > > > > > -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> > > > > > - else:
> > > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > > -+ if giscanner.found():
> > > > > > -+ giscanner_path = giscanner.get_command()[0]
> > > > > > -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > -+ else:
> > > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > -
> > > > > > -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > > -- if gicompiler.found():
> > > > > > -- gicompiler_path = gicompiler.get_command()[0]
> > > > > > -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> > > > > > -+ if gicompiler_bin is not None:
> > > > > > -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> > > > > > - else:
> > > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > > -+ if gicompiler.found():
> > > > > > -+ gicompiler_path = gicompiler.get_command()[0]
> > > > > > -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > -+ else:
> > > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > -
> > > > > > - ns = kwargs.pop('namespace')
> > > > > > - nsversion = kwargs.pop('nsversion')
> > > > > > ---
> > > > > > -2.25.1
> > > > > > -
> > > > > > diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > similarity index 95%
> > > > > > rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > index 4196545a96..eda17cadc5 100644
> > > > > > --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > @@ -1,4 +1,4 @@
> > > > > > -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> > > > > > +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> > > > > > From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > > > > > Date: Sat, 15 Feb 2020 15:13:59 +0100
> > > > > > Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> > > > > > @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > > > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > > > >
> > > > > > diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> > > > > > -index 5636602e..de4e87bc 100644
> > > > > > +index 23701da95..83e51626d 100644
> > > > > > --- a/mesonbuild/dependencies/base.py
> > > > > > +++ b/mesonbuild/dependencies/base.py
> > > > > > -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > > +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > > def _set_libs(self):
> > > > > > env = None
> > > > > > libcmd = [self.name, '--libs']
> > > > > > @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> > > > > > # Force pkg-config to output -L fields even if they are system
> > > > > > # paths so we can do manual searching with cc.find_library() later.
> > > > > > --
> > > > > > -2.25.4
> > > > > > +2.25.1
> > > > > >
> > > > > > diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> > > > > > index b1d230938a..c88ea8e904 100644
> > > > > > --- a/package/meson/meson.hash
> > > > > > +++ b/package/meson/meson.hash
> > > > > > @@ -1,4 +1,4 @@
> > > > > > # Locally calculated after checking pgp signature
> > > > > > -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> > > > > > -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> > > > > > +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> > > > > > +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> > > > > > sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> > > > > > diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> > > > > > index d5b1e86811..f698226a45 100644
> > > > > > --- a/package/meson/meson.mk
> > > > > > +++ b/package/meson/meson.mk
> > > > > > @@ -4,7 +4,7 @@
> > > > > > #
> > > > > > ################################################################################
> > > > > >
> > > > > > -MESON_VERSION = 0.54.2
> > > > > > +MESON_VERSION = 0.55.0
> > > > > > MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> > > > > > MESON_LICENSE = Apache-2.0
> > > > > > MESON_LICENSE_FILES = COPYING
> > > > > > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> > > > > > index 0a4ab2194c..782fcaec6c 100644
> > > > > > --- a/package/pkg-meson.mk
> > > > > > +++ b/package/pkg-meson.mk
> > > > > > @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> > > > > > -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > > -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> > > > > > -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > > - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > > - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > > - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > > + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > > + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > > + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > > -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> > > > > > -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> > > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > > @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> > > > > > -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > > -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> > > > > > -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > > - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> > > > > > -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> > > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > > diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> > > > > > index 2f00ccfdb7..68660d3f5b 100644
> > > > > > --- a/support/misc/utils.mk
> > > > > > +++ b/support/misc/utils.mk
> > > > > > @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> > > > > > # list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > > > make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
> > > > > >
> > > > > > +# build a comma-separated list of single quoted items, from a space-separated
> > > > > > +# list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > >
> > > > > Should be:
> > > > > # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
> > > > Fixed:
> > > > https://patchwork.ozlabs.org/project/buildroot/patch/20200716213139.3190401-1-james.hilliard1 at gmail.com/
> > > > >
> > > > > Regards,
> > > > > Peter
> > > > >
> > > > > > +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> > > > > > +
> > > > > > # Needed for the foreach loops to loop over the list of hooks, so that
> > > > > > # each hook call is properly separated by a newline.
> > > > > > define sep
> > > > >
> > >
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-17 22:23 ` Peter Seiderer
@ 2020-07-17 22:24 ` James Hilliard
2020-07-17 23:09 ` Peter Seiderer
0 siblings, 1 reply; 9+ messages in thread
From: James Hilliard @ 2020-07-17 22:24 UTC (permalink / raw)
To: buildroot
On Fri, Jul 17, 2020 at 4:23 PM Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello James,
>
> On Sat, 18 Jul 2020 00:05:31 +0200, Peter Seiderer <ps.report@gmx.net> wrote:
>
> > Re-add CC
> >
> > On Fri, 17 Jul 2020 02:05:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> >
> > > On Thu, Jul 16, 2020 at 3:57 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > > >
> > > > Hello James,
> > > >
> > > > On Thu, 16 Jul 2020 15:36:38 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > > >
> > > > > On Thu, Jul 16, 2020 at 3:20 PM Peter Seiderer <ps.report@gmx.net> wrote:
> > > > > >
> > > > > > Hello James,
> > > > > >
> > > > > > On Thu, 16 Jul 2020 05:01:40 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
> > > > > >
> > > > > > > Drop g-ir-scanner/g-ir-compiler override patch which is now upstream.
> > > > > > >
> > > > > > > Rebase remaining patches.
> > > > > > >
> > > > > > > Meson now requires single quotes for cross-compilation.conf, replace
> > > > > > > double quotes with single quotes.
> > > > > > >
> > > > > > > Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > > > ---
> > > > > > > ...-RPATH-if-install_rpath-is-not-empty.patch | 16 ++--
> > > > > > > ...tic-libs-when-default-library-static.patch | 8 +-
> > > > > > > ...-g-ir-scanner-and-g-ir-compiler-bina.patch | 74 -------------------
> > > > > > > ...encies-base.py-add-pkg_config_stati.patch} | 8 +-
> > > > > > > package/meson/meson.hash | 4 +-
> > > > > > > package/meson/meson.mk | 2 +-
> > > > > > > package/pkg-meson.mk | 12 +--
> > > > > > > support/misc/utils.mk | 4 +
> > > > > > > 8 files changed, 29 insertions(+), 99 deletions(-)
> > > > > > > delete mode 100644 package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > > rename package/meson/{0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch => 0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch} (95%)
> > > > > > >
> > > > > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > index 79e99adf4a..e098c25bbe 100644
> > > > > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > @@ -1,4 +1,4 @@
> > > > > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > > > > >
> > > > > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > > > > -index 8ac6aab1..7ef04116 100644
> > > > > > > +index 0be01fe75..d991cf4e7 100644
> > > > > > > --- a/mesonbuild/minstall.py
> > > > > > > +++ b/mesonbuild/minstall.py
> > > > > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > > > > - printed_symlink_error = True
> > > > > > > - if os.path.isfile(outname):
> > > > > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > > > > + if file_copied:
> > > > > > > + self.did_install_something = True
> > > > > > > try:
> > > > > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > >
> > > > > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > > > > the functionality of it)?
> > > > >
> > > > > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > > > > https://github.com/mesonbuild/meson/pull/7103
> > > > >
> > > >
> > > > Thanks for the links, did only a very quick look at the discussion (mentioning
> > > > buildroot), any chance the upstream commit makes this patch unnecessary?
> > > Yeah, looks like it does, sent a v3 with that removed:
> > > https://patchwork.ozlabs.org/project/buildroot/patch/20200717080356.3094739-1-james.hilliard1 at gmail.com/
>
> Did you test it or did your decide by patch description/patch review (recall the failure
> condition was a bit tricky)?
I did a build test and everything seemed to still compile ok.
>
> The meson pull request 7103 mentions the meson issue 2567 ([1]), mentioned in the
> original version of the buildroot meson rpath patch ([2])...
>
> Regards,
> Peter
>
> [1] https://github.com/mesonbuild/meson/issues/2567
> [2] https://git.buildroot.net/buildroot/commit/?id=7a23af4773665d2ee40e2d4e525746ebe38456dd
>
>
> > > >
> > > > Regards,
> > > > Peter
> > > >
> > > > > >
> > > > > > > - install_name_mappings, verbose=False)
> > > > > > > + # Buildroot check-host-rpath script expects RPATH
> > > > > > > + # But if install_rpath is empty, it will stripped.
> > > > > > > + # So, preserve it in this case
> > > > > > > + if install_rpath:
> > > > > > > -+ depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > > ++ depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > > > + install_name_mappings, verbose=False)
> > > > > > > + else:
> > > > > > > + print("Skipping RPATH fixing")
> > > > > > > @@ -32,5 +32,5 @@ index 8ac6aab1..7ef04116 100644
> > > > > > > if isinstance(e.code, int) and e.code == 0:
> > > > > > > pass
> > > > > > > --
> > > > > > > -2.20.1
> > > > > > > +2.25.1
> > > > > > >
> > > > > > > diff --git a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > > index b859d8372e..2639915891 100644
> > > > > > > --- a/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > > +++ b/package/meson/0002-Prefer-ext-static-libs-when-default-library-static.patch
> > > > > > > @@ -1,4 +1,4 @@
> > > > > > > -From b390f29b9e0170d5bf410f4bef5a697655857633 Mon Sep 17 00:00:00 2001
> > > > > > > +From ea85465e608178080c3b4d51af9765a8c7c0dae3 Mon Sep 17 00:00:00 2001
> > > > > > > From: Matt Weber <matthew.weber@rockwellcollins.com>
> > > > > > > Date: Sat, 26 Oct 2019 09:17:29 -0500
> > > > > > > Subject: [PATCH] Prefer ext static libs when --default-library=static
> > > > > > > @@ -27,10 +27,10 @@ Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
> > > > > > > 1 file changed, 3 insertions(+)
> > > > > > >
> > > > > > > diff --git a/mesonbuild/compilers/mixins/clike.py b/mesonbuild/compilers/mixins/clike.py
> > > > > > > -index 5d50b7d..8f5f1c6 100644
> > > > > > > +index 47e97d261..729c98acc 100644
> > > > > > > --- a/mesonbuild/compilers/mixins/clike.py
> > > > > > > +++ b/mesonbuild/compilers/mixins/clike.py
> > > > > > > -@@ -857,6 +857,9 @@ class CLikeCompiler:
> > > > > > > +@@ -940,6 +940,9 @@ class CLikeCompiler:
> > > > > > > elif env.machines[self.for_machine].is_cygwin():
> > > > > > > shlibext = ['dll', 'dll.a']
> > > > > > > prefixes = ['cyg'] + prefixes
> > > > > > > @@ -41,5 +41,5 @@ index 5d50b7d..8f5f1c6 100644
> > > > > > > # Linux/BSDs
> > > > > > > shlibext = ['so']
> > > > > > > --
> > > > > > > -2.17.1
> > > > > > > +2.25.1
> > > > > > >
> > > > > > > diff --git a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch b/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > > deleted file mode 100644
> > > > > > > index c1db98f5a0..0000000000
> > > > > > > --- a/package/meson/0003-Allow-overriding-g-ir-scanner-and-g-ir-compiler-bina.patch
> > > > > > > +++ /dev/null
> > > > > > > @@ -1,74 +0,0 @@
> > > > > > > -From 49b1c8df7e4ff3a441d831f926d87920952025bf Mon Sep 17 00:00:00 2001
> > > > > > > -From: James Hilliard <james.hilliard1@gmail.com>
> > > > > > > -Date: Sat, 2 May 2020 20:43:36 -0600
> > > > > > > -Subject: [PATCH] Allow overriding g-ir-scanner and g-ir-compiler binaries.
> > > > > > > -
> > > > > > > -This is useful when one needs to force meson to use wrappers for cross
> > > > > > > -compilation.
> > > > > > > -
> > > > > > > -Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
> > > > > > > -[james.hilliard1 at gmail.com: backport and largely adapt upstream commit
> > > > > > > -1e073c4c1bd7de06bc74d84e3807c9b210e57a22, as the version in master has
> > > > > > > -undergone haevy refactorisation]
> > > > > > > ----
> > > > > > > - mesonbuild/modules/gnome.py | 34 +++++++++++++++++++++-------------
> > > > > > > - 1 file changed, 21 insertions(+), 13 deletions(-)
> > > > > > > -
> > > > > > > -diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
> > > > > > > -index a00005588..b6d7cc141 100644
> > > > > > > ---- a/mesonbuild/modules/gnome.py
> > > > > > > -+++ b/mesonbuild/modules/gnome.py
> > > > > > > -@@ -32,7 +32,7 @@ from ..mesonlib import (
> > > > > > > - MachineChoice, MesonException, OrderedSet, Popen_safe, extract_as_list,
> > > > > > > - join_args, unholder,
> > > > > > > - )
> > > > > > > --from ..dependencies import Dependency, PkgConfigDependency, InternalDependency
> > > > > > > -+from ..dependencies import Dependency, PkgConfigDependency, InternalDependency, ExternalProgram
> > > > > > > - from ..interpreterbase import noKwargs, permittedKwargs, FeatureNew, FeatureNewKwargs
> > > > > > > -
> > > > > > > - # gresource compilation is broken due to the way
> > > > > > > -@@ -735,21 +735,29 @@ class GnomeModule(ExtensionModule):
> > > > > > > - # these utilities via pkg-config, so it would be best to use the
> > > > > > > - # results from pkg-config when possible.
> > > > > > > - gi_util_dirs_check = [state.environment.get_build_dir(), state.environment.get_source_dir()]
> > > > > > > -- giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > > > -- if giscanner.found():
> > > > > > > -- giscanner_path = giscanner.get_command()[0]
> > > > > > > -- if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > > -+ giscanner_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-scanner')
> > > > > > > -+ if giscanner_bin is not None:
> > > > > > > -+ giscanner = ExternalProgram.from_entry('g-ir-scanner', giscanner_bin)
> > > > > > > - else:
> > > > > > > -- giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > > -+ giscanner = self.interpreter.find_program_impl('g-ir-scanner')
> > > > > > > -+ if giscanner.found():
> > > > > > > -+ giscanner_path = giscanner.get_command()[0]
> > > > > > > -+ if not any(x in giscanner_path for x in gi_util_dirs_check):
> > > > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > > -+ else:
> > > > > > > -+ giscanner = self.gir_dep.get_pkgconfig_variable('g_ir_scanner', {})
> > > > > > > -
> > > > > > > -- gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > > > -- if gicompiler.found():
> > > > > > > -- gicompiler_path = gicompiler.get_command()[0]
> > > > > > > -- if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > > -+ gicompiler_bin = state.environment.lookup_binary_entry(MachineChoice.HOST, 'g-ir-compiler')
> > > > > > > -+ if gicompiler_bin is not None:
> > > > > > > -+ gicompiler = ExternalProgram.from_entry('g-ir-compiler', gicompiler_bin)
> > > > > > > - else:
> > > > > > > -- gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > > -+ gicompiler = self.interpreter.find_program_impl('g-ir-compiler')
> > > > > > > -+ if gicompiler.found():
> > > > > > > -+ gicompiler_path = gicompiler.get_command()[0]
> > > > > > > -+ if not any(x in gicompiler_path for x in gi_util_dirs_check):
> > > > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > > -+ else:
> > > > > > > -+ gicompiler = self.gir_dep.get_pkgconfig_variable('g_ir_compiler', {})
> > > > > > > -
> > > > > > > - ns = kwargs.pop('namespace')
> > > > > > > - nsversion = kwargs.pop('nsversion')
> > > > > > > ---
> > > > > > > -2.25.1
> > > > > > > -
> > > > > > > diff --git a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > > similarity index 95%
> > > > > > > rename from package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > > rename to package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > > index 4196545a96..eda17cadc5 100644
> > > > > > > --- a/package/meson/0004-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > > +++ b/package/meson/0003-mesonbuild-dependencies-base.py-add-pkg_config_stati.patch
> > > > > > > @@ -1,4 +1,4 @@
> > > > > > > -From 71295eec724f89ef5f5822c17cf44480335225cd Mon Sep 17 00:00:00 2001
> > > > > > > +From 8622d37587169c1e4a4206a9462868ede057f0e8 Mon Sep 17 00:00:00 2001
> > > > > > > From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> > > > > > > Date: Sat, 15 Feb 2020 15:13:59 +0100
> > > > > > > Subject: [PATCH] mesonbuild/dependencies/base.py: add pkg_config_static
> > > > > > > @@ -23,10 +23,10 @@ Signed-off-by: Romain Naour <romain.naour@gmail.com>
> > > > > > > 1 file changed, 2 insertions(+), 1 deletion(-)
> > > > > > >
> > > > > > > diff --git a/mesonbuild/dependencies/base.py b/mesonbuild/dependencies/base.py
> > > > > > > -index 5636602e..de4e87bc 100644
> > > > > > > +index 23701da95..83e51626d 100644
> > > > > > > --- a/mesonbuild/dependencies/base.py
> > > > > > > +++ b/mesonbuild/dependencies/base.py
> > > > > > > -@@ -858,7 +858,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > > > +@@ -849,7 +849,8 @@ class PkgConfigDependency(ExternalDependency):
> > > > > > > def _set_libs(self):
> > > > > > > env = None
> > > > > > > libcmd = [self.name, '--libs']
> > > > > > > @@ -37,5 +37,5 @@ index 5636602e..de4e87bc 100644
> > > > > > > # Force pkg-config to output -L fields even if they are system
> > > > > > > # paths so we can do manual searching with cc.find_library() later.
> > > > > > > --
> > > > > > > -2.25.4
> > > > > > > +2.25.1
> > > > > > >
> > > > > > > diff --git a/package/meson/meson.hash b/package/meson/meson.hash
> > > > > > > index b1d230938a..c88ea8e904 100644
> > > > > > > --- a/package/meson/meson.hash
> > > > > > > +++ b/package/meson/meson.hash
> > > > > > > @@ -1,4 +1,4 @@
> > > > > > > # Locally calculated after checking pgp signature
> > > > > > > -# https://github.com/mesonbuild/meson/releases/download/0.54.2/meson-0.54.2.tar.gz.asc
> > > > > > > -sha256 a7716eeae8f8dff002e4147642589ab6496ff839e4376a5aed761f83c1fa0455 meson-0.54.2.tar.gz
> > > > > > > +# https://github.com/mesonbuild/meson/releases/download/0.55.0/meson-0.55.0.tar.gz.asc
> > > > > > > +sha256 0a1ae2bfe2ae14ac47593537f93290fb79e9b775c55b4c53c282bc3ca3745b35 meson-0.55.0.tar.gz
> > > > > > > sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 COPYING
> > > > > > > diff --git a/package/meson/meson.mk b/package/meson/meson.mk
> > > > > > > index d5b1e86811..f698226a45 100644
> > > > > > > --- a/package/meson/meson.mk
> > > > > > > +++ b/package/meson/meson.mk
> > > > > > > @@ -4,7 +4,7 @@
> > > > > > > #
> > > > > > > ################################################################################
> > > > > > >
> > > > > > > -MESON_VERSION = 0.54.2
> > > > > > > +MESON_VERSION = 0.55.0
> > > > > > > MESON_SITE = https://github.com/mesonbuild/meson/releases/download/$(MESON_VERSION)
> > > > > > > MESON_LICENSE = Apache-2.0
> > > > > > > MESON_LICENSE_FILES = COPYING
> > > > > > > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk
> > > > > > > index 0a4ab2194c..782fcaec6c 100644
> > > > > > > --- a/package/pkg-meson.mk
> > > > > > > +++ b/package/pkg-meson.mk
> > > > > > > @@ -71,9 +71,9 @@ define $(2)_CONFIGURE_CMDS
> > > > > > > -e 's%@TARGET_ARCH@%$$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > > > -e 's%@TARGET_CPU@%$$(HOST_MESON_TARGET_CPU)%g' \
> > > > > > > -e 's%@TARGET_ENDIAN@%$$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > > > - -e 's%@TARGET_CFLAGS@%$$(call make-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > > > - -e 's%@TARGET_LDFLAGS@%$$(call make-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > > > - -e 's%@TARGET_CXXFLAGS@%$$(call make-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > > > + -e 's%@TARGET_CFLAGS@%$$(call make-sq-comma-list,$$($(2)_CFLAGS))%g' \
> > > > > > > + -e 's%@TARGET_LDFLAGS@%$$(call make-sq-comma-list,$$($(2)_LDFLAGS))%g' \
> > > > > > > + -e 's%@TARGET_CXXFLAGS@%$$(call make-sq-comma-list,$$($(2)_CXXFLAGS))%g' \
> > > > > > > -e 's%@HOST_DIR@%$$(HOST_DIR)%g' \
> > > > > > > -e 's%@STAGING_DIR@%$$(STAGING_DIR)%g' \
> > > > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > > > @@ -190,9 +190,9 @@ define PKG_MESON_INSTALL_CROSS_CONF
> > > > > > > -e 's%@TARGET_ARCH@%$(HOST_MESON_TARGET_CPU_FAMILY)%g' \
> > > > > > > -e 's%@TARGET_CPU@%$(HOST_MESON_TARGET_CPU)%g' \
> > > > > > > -e 's%@TARGET_ENDIAN@%$(HOST_MESON_TARGET_ENDIAN)%g' \
> > > > > > > - -e 's%@TARGET_CFLAGS@%$(call make-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > - -e 's%@TARGET_LDFLAGS@%$(call make-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > - -e 's%@TARGET_CXXFLAGS@%$(call make-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > + -e 's%@TARGET_CFLAGS@%$(call make-sq-comma-list,$(TARGET_CFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > + -e 's%@TARGET_LDFLAGS@%$(call make-sq-comma-list,$(TARGET_LDFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > + -e 's%@TARGET_CXXFLAGS@%$(call make-sq-comma-list,$(TARGET_CXXFLAGS))@PKG_TARGET_CFLAGS@%g' \
> > > > > > > -e 's%@HOST_DIR@%$(HOST_DIR)%g' \
> > > > > > > -e 's%@STAGING_DIR@%$(STAGING_DIR)%g' \
> > > > > > > -e 's%@STATIC@%$$(if $$(BR2_STATIC_LIBS),true,false)%g' \
> > > > > > > diff --git a/support/misc/utils.mk b/support/misc/utils.mk
> > > > > > > index 2f00ccfdb7..68660d3f5b 100644
> > > > > > > --- a/support/misc/utils.mk
> > > > > > > +++ b/support/misc/utils.mk
> > > > > > > @@ -88,6 +88,10 @@ notfirstword = $(wordlist 2,$(words $(1)),$(1))
> > > > > > > # list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > > > > make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1))))
> > > > > > >
> > > > > > > +# build a comma-separated list of single quoted items, from a space-separated
> > > > > > > +# list of unquoted items: a b c d --> "a", "b", "c", "d"
> > > > > >
> > > > > > Should be:
> > > > > > # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd'
> > > > > Fixed:
> > > > > https://patchwork.ozlabs.org/project/buildroot/patch/20200716213139.3190401-1-james.hilliard1 at gmail.com/
> > > > > >
> > > > > > Regards,
> > > > > > Peter
> > > > > >
> > > > > > > +make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,\'\'%\'',$(strip $(1))))
> > > > > > > +
> > > > > > > # Needed for the foreach loops to loop over the list of hooks, so that
> > > > > > > # each hook call is properly separated by a newline.
> > > > > > > define sep
> > > > > >
> > > >
> >
> > _______________________________________________
> > buildroot mailing list
> > buildroot at busybox.net
> > http://lists.busybox.net/mailman/listinfo/buildroot
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-17 22:24 ` James Hilliard
@ 2020-07-17 23:09 ` Peter Seiderer
2020-07-17 23:28 ` James Hilliard
0 siblings, 1 reply; 9+ messages in thread
From: Peter Seiderer @ 2020-07-17 23:09 UTC (permalink / raw)
To: buildroot
Hello James,
On Fri, 17 Jul 2020 16:24:41 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
[...]
> > > > > > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > index 79e99adf4a..e098c25bbe 100644
> > > > > > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > @@ -1,4 +1,4 @@
> > > > > > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > > > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > > > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > > > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > > > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > > > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > > > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > > > > > >
> > > > > > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > > > > > -index 8ac6aab1..7ef04116 100644
> > > > > > > > +index 0be01fe75..d991cf4e7 100644
> > > > > > > > --- a/mesonbuild/minstall.py
> > > > > > > > +++ b/mesonbuild/minstall.py
> > > > > > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > > > > > - printed_symlink_error = True
> > > > > > > > - if os.path.isfile(outname):
> > > > > > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > > > > > + if file_copied:
> > > > > > > > + self.did_install_something = True
> > > > > > > > try:
> > > > > > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > > >
> > > > > > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > > > > > the functionality of it)?
> > > > > >
> > > > > > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > > > > > https://github.com/mesonbuild/meson/pull/7103
> > > > > >
> > > > >
> > > > > Thanks for the links, did only a very quick look at the discussion (mentioning
> > > > > buildroot), any chance the upstream commit makes this patch unnecessary?
> > > > Yeah, looks like it does, sent a v3 with that removed:
> > > > https://patchwork.ozlabs.org/project/buildroot/patch/20200717080356.3094739-1-james.hilliard1 at gmail.com/
> >
> > Did you test it or did your decide by patch description/patch review (recall the failure
> > condition was a bit tricky)?
> I did a build test and everything seemed to still compile ok.
Same simple check failed back once (see [3], [4], [5] for the history), at least
a test with one (or more) host packages build by meson needed ;-)
$ git grep host-meson-package | cat
docs/manual/adding-packages-meson.txt:packages is also available, with the +host-meson-package+ macro.
package/gobject-introspection/gobject-introspection.mk:$(eval $(host-meson-package))
package/libglib2/libglib2.mk:$(eval $(host-meson-package))
package/orc/orc.mk:$(eval $(host-meson-package))
package/pango/pango.mk:$(eval $(host-meson-package))
package/pkg-meson.mk:host-meson-package = $(call inner-meson-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host)
package/systemd/systemd.mk:$(eval $(host-meson-package))
package/wayland/wayland.mk:$(eval $(host-meson-package))
Regards,
Peter
[3] http://lists.busybox.net/pipermail/buildroot/2018-July/226154.html
[4] http://lists.busybox.net/pipermail/buildroot/2018-July/226314.html
[5] http://lists.busybox.net/pipermail/buildroot/2018-October/232956.html
> >
> > The meson pull request 7103 mentions the meson issue 2567 ([1]), mentioned in the
> > original version of the buildroot meson rpath patch ([2])...
> >
> > Regards,
> > Peter
> >
> > [1] https://github.com/mesonbuild/meson/issues/2567
> > [2] https://git.buildroot.net/buildroot/commit/?id=7a23af4773665d2ee40e2d4e525746ebe38456dd
> >
> >
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0
2020-07-17 23:09 ` Peter Seiderer
@ 2020-07-17 23:28 ` James Hilliard
0 siblings, 0 replies; 9+ messages in thread
From: James Hilliard @ 2020-07-17 23:28 UTC (permalink / raw)
To: buildroot
On Fri, Jul 17, 2020 at 5:09 PM Peter Seiderer <ps.report@gmx.net> wrote:
>
> Hello James,
>
> On Fri, 17 Jul 2020 16:24:41 -0600, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> [...]
>
> > > > > > > > > diff --git a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > > index 79e99adf4a..e098c25bbe 100644
> > > > > > > > > --- a/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > > +++ b/package/meson/0001-Only-fix-RPATH-if-install_rpath-is-not-empty.patch
> > > > > > > > > @@ -1,4 +1,4 @@
> > > > > > > > > -From 4db4fd79d9bb2b98cea1117f22b6c97942ab2ecd Mon Sep 17 00:00:00 2001
> > > > > > > > > +From bb155880bd08d7c0c9ddf0264d73016a426d8579 Mon Sep 17 00:00:00 2001
> > > > > > > > > From: Eric Le Bihan <eric.le.bihan.dev@free.fr>
> > > > > > > > > Date: Sat, 14 Jul 2018 11:18:45 +0200
> > > > > > > > > Subject: [PATCH] Only fix RPATH if install_rpath is not empty
> > > > > > > > > @@ -11,20 +11,20 @@ Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> > > > > > > > > 1 file changed, 8 insertions(+), 2 deletions(-)
> > > > > > > > >
> > > > > > > > > diff --git a/mesonbuild/minstall.py b/mesonbuild/minstall.py
> > > > > > > > > -index 8ac6aab1..7ef04116 100644
> > > > > > > > > +index 0be01fe75..d991cf4e7 100644
> > > > > > > > > --- a/mesonbuild/minstall.py
> > > > > > > > > +++ b/mesonbuild/minstall.py
> > > > > > > > > -@@ -489,8 +489,14 @@ class Installer:
> > > > > > > > > - printed_symlink_error = True
> > > > > > > > > - if os.path.isfile(outname):
> > > > > > > > > +@@ -512,8 +512,14 @@ class Installer:
> > > > > > > > > + if file_copied:
> > > > > > > > > + self.did_install_something = True
> > > > > > > > > try:
> > > > > > > > > -- depfixer.fix_rpath(outname, install_rpath, final_path,
> > > > > > > > > +- depfixer.fix_rpath(outname, t.rpath_dirs_to_remove, install_rpath, final_path,
> > > > > > > >
> > > > > > > > Out of interest, do you know with which commit the t.rpath_dirs_to_remove comes in (or what is
> > > > > > > > the functionality of it)?
> > > > > > >
> > > > > > > https://github.com/mesonbuild/meson/commit/d7235c5905fa98207d90f3ad34bf590493498d5b
> > > > > > > https://github.com/mesonbuild/meson/pull/7103
> > > > > > >
> > > > > >
> > > > > > Thanks for the links, did only a very quick look at the discussion (mentioning
> > > > > > buildroot), any chance the upstream commit makes this patch unnecessary?
> > > > > Yeah, looks like it does, sent a v3 with that removed:
> > > > > https://patchwork.ozlabs.org/project/buildroot/patch/20200717080356.3094739-1-james.hilliard1 at gmail.com/
> > >
> > > Did you test it or did your decide by patch description/patch review (recall the failure
> > > condition was a bit tricky)?
> > I did a build test and everything seemed to still compile ok.
>
> Same simple check failed back once (see [3], [4], [5] for the history), at least
> a test with one (or more) host packages build by meson needed ;-)
Looks good, I've verified all of those packages compile without errors.
>
> $ git grep host-meson-package | cat
> docs/manual/adding-packages-meson.txt:packages is also available, with the +host-meson-package+ macro.
> package/gobject-introspection/gobject-introspection.mk:$(eval $(host-meson-package))
> package/libglib2/libglib2.mk:$(eval $(host-meson-package))
> package/orc/orc.mk:$(eval $(host-meson-package))
> package/pango/pango.mk:$(eval $(host-meson-package))
> package/pkg-meson.mk:host-meson-package = $(call inner-meson-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host)
> package/systemd/systemd.mk:$(eval $(host-meson-package))
> package/wayland/wayland.mk:$(eval $(host-meson-package))
>
>
> Regards,
> Peter
>
> [3] http://lists.busybox.net/pipermail/buildroot/2018-July/226154.html
> [4] http://lists.busybox.net/pipermail/buildroot/2018-July/226314.html
> [5] http://lists.busybox.net/pipermail/buildroot/2018-October/232956.html
>
> > >
> > > The meson pull request 7103 mentions the meson issue 2567 ([1]), mentioned in the
> > > original version of the buildroot meson rpath patch ([2])...
> > >
> > > Regards,
> > > Peter
> > >
> > > [1] https://github.com/mesonbuild/meson/issues/2567
> > > [2] https://git.buildroot.net/buildroot/commit/?id=7a23af4773665d2ee40e2d4e525746ebe38456dd
> > >
> > >
>
>
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-07-17 23:28 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-16 11:01 [Buildroot] [PATCH 1/1] package/meson: bump to version 0.55.0 James Hilliard
2020-07-16 21:20 ` Peter Seiderer
2020-07-16 21:36 ` James Hilliard
[not found] ` <20200716235722.61bd13bf@gmx.net>
2020-07-17 21:56 ` Peter Seiderer
[not found] ` <CADvTj4pLKMnE7G4B3SzV0A=95b=fVgBNdoW7wZvRX50HPGO9GQ@mail.gmail.com>
2020-07-17 22:05 ` Peter Seiderer
2020-07-17 22:23 ` Peter Seiderer
2020-07-17 22:24 ` James Hilliard
2020-07-17 23:09 ` Peter Seiderer
2020-07-17 23:28 ` James Hilliard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.