From b4e36281631e0b59d1058f5cf391eb8b15e605cf Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Fri, 23 Nov 2018 15:28:28 +0000 Subject: meson: Disable rpath stripping at install time As discussed in https://github.com/mesonbuild/meson/issues/2567 there needs to be a way to allow our rpath options passed to the linker to be preserved, else we run into weird build failures. (e.g. libmodulemd-native used by libdnf can't find libyaml) Disable this for now until upstream come up with a better way of handling this. Signed-off-by: Richard Purdie --- meta/recipes-devtools/meson/meson.inc | 1 + ...01-Support-building-allarch-recipes-again.patch | 13 +++++------ .../meson/meson/disable-rpath-handling.patch | 26 ++++++++++++++++++++++ 3 files changed, 32 insertions(+), 8 deletions(-) create mode 100644 meta/recipes-devtools/meson/meson/disable-rpath-handling.patch diff --git a/meta/recipes-devtools/meson/meson.inc b/meta/recipes-devtools/meson/meson.inc index 32c6bfe5d3..f878695903 100644 --- a/meta/recipes-devtools/meson/meson.inc +++ b/meta/recipes-devtools/meson/meson.inc @@ -12,6 +12,7 @@ SRC_URI = "https://github.com/mesonbuild/meson/releases/download/${PV}/meson-${P file://gi-flags.patch \ file://gtkdoc-flags.patch \ file://0001-python-module-do-not-manipulate-the-environment-when.patch \ + file://disable-rpath-handling.patch \ " SRC_URI[sha256sum] = "92d8afd921751261e36151643464efd3394162f69efbe8cd53e0a66b1cf395eb" SRC_URI[md5sum] = "31bda3519d8c0eb3438267268a78085e" diff --git a/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch b/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch index f6dd230916..96be104a52 100644 --- a/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch +++ b/meta/recipes-devtools/meson/meson/0001-Support-building-allarch-recipes-again.patch @@ -11,11 +11,11 @@ Signed-off-by: Peter Kjellerstedt mesonbuild/environment.py | 1 + 1 file changed, 1 insertion(+) -diff --git a/mesonbuild/environment.py b/mesonbuild/environment.py -index a0580a2..712b1e8 100644 ---- a/mesonbuild/environment.py -+++ b/mesonbuild/environment.py -@@ -73,6 +73,7 @@ from .compilers import ( +Index: meson-0.47.2/mesonbuild/environment.py +=================================================================== +--- meson-0.47.2.orig/mesonbuild/environment.py ++++ meson-0.47.2/mesonbuild/environment.py +@@ -75,6 +75,7 @@ from .compilers import ( build_filename = 'meson.build' known_cpu_families = ( @@ -23,6 +23,3 @@ index a0580a2..712b1e8 100644 'aarch64', 'arm', 'e2k', --- -2.12.0 - diff --git a/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch b/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch new file mode 100644 index 0000000000..4b1fb57dd4 --- /dev/null +++ b/meta/recipes-devtools/meson/meson/disable-rpath-handling.patch @@ -0,0 +1,26 @@ +We need to allow our rpaths generated through the compiler flags to make it into +our binaries. Therefore disable the meson manipulations of these unless there +is a specific directive to do something differently in the project. + +RP 2018/11/23 + +Upstream-Status: Submitted [https://github.com/mesonbuild/meson/issues/2567] + +Index: meson-0.47.2/mesonbuild/minstall.py +=================================================================== +--- meson-0.47.2.orig/mesonbuild/minstall.py ++++ meson-0.47.2/mesonbuild/minstall.py +@@ -486,8 +486,11 @@ class Installer: + printed_symlink_error = True + if os.path.isfile(outname): + try: +- depfixer.fix_rpath(outname, install_rpath, final_path, +- install_name_mappings, verbose=False) ++ if install_rpath: ++ depfixer.fix_rpath(outname, install_rpath, final_path, ++ install_name_mappings, verbose=False) ++ else: ++ print("RPATH changes at install time disabled") + except SystemExit as e: + if isinstance(e.code, int) and e.code == 0: + pass -- cgit 1.2.3-korg