blob: 0dab0d1e745f6212f680cdffa01282837347e85c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
From 39bb5e07eab736b525abfc66eb5ad0dd626aedc6 Mon Sep 17 00:00:00 2001
From: Xavier Claessens <xavier.claessens@collabora.com>
Date: Tue, 11 May 2021 09:18:47 -0400
Subject: [PATCH] install_scripts: Restore @SOURCE_ROOT@ and @BUILD_ROOT@
replacements
They are not documented for add_install_script() public API, but gnome
module relies on it internally.
Fixes: #8744
---
mesonbuild/backend/backends.py | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/mesonbuild/backend/backends.py b/mesonbuild/backend/backends.py
index ee5f4463a5..ac6d5f0669 100644
--- a/mesonbuild/backend/backends.py
+++ b/mesonbuild/backend/backends.py
@@ -1429,7 +1429,19 @@ def generate_target_install(self, d: InstallData) -> None:
d.targets.append(i)
def generate_custom_install_script(self, d: InstallData) -> None:
- d.install_scripts = self.build.install_scripts
+ result: T.List[ExecutableSerialisation] = []
+ srcdir = self.environment.get_source_dir()
+ builddir = self.environment.get_build_dir()
+ for i in self.build.install_scripts:
+ fixed_args = []
+ for a in i.cmd_args:
+ a = a.replace('@SOURCE_ROOT@', srcdir)
+ a = a.replace('@BUILD_ROOT@', builddir)
+ fixed_args.append(a)
+ es = copy.copy(i)
+ es.cmd_args = fixed_args
+ result.append(es)
+ d.install_scripts = result
def generate_header_install(self, d: InstallData) -> None:
incroot = self.environment.get_includedir()
|