[pacman-dev] [PATCH 1/2] meson: separate out wrapped from non-wrapped scripts

Dave Reisner dreisner at archlinux.org
Sun Nov 4 00:30:28 UTC 2018


makepkg-template is a perl script and doesn't get wrapped by our shell
wrapper. It (wrongly) reads from the host machine rather than the build
root, but this is working as implemented.
---
wohoo first bug that affects one buildsys and not the other!

 scripts/meson.build | 20 ++++++++++++++++++--
 1 file changed, 18 insertions(+), 2 deletions(-)

diff --git a/scripts/meson.build b/scripts/meson.build
index 535eccba..50b0c34f 100644
--- a/scripts/meson.build
+++ b/scripts/meson.build
@@ -1,5 +1,4 @@
-scripts = [
-  'makepkg-template.pl.in',
+wrapped_scripts = [
   'makepkg.sh.in',
   'pacman-db-upgrade.sh.in',
   'pacman-key.sh.in',
@@ -7,6 +6,10 @@ scripts = [
   'repo-add.sh.in'
 ]
 
+scripts = [
+  'makepkg-template.pl.in',
+]
+
 library_files = [
   'library/human_to_size.sh',
   'library/size_to_human.sh',
@@ -26,6 +29,19 @@ m4_edit = generator(
 foreach script : scripts
   script_shortname = script.split('.')[0]
 
+  custom_target(
+    script,
+    input : m4_edit.process(script),
+    command : [ SCRIPT_EDITOR, '@INPUT@', '@OUTPUT@', '0755'],
+    output : script_shortname,
+    depend_files : library_files,
+    install : true,
+    install_dir : get_option('bindir'))
+endforeach
+
+foreach script : wrapped_scripts
+  script_shortname = script.split('.')[0]
+
   # Build the script, but don't install it. We want to keep it as a "private"
   # artifact that we reference from a wrapper script in order to bootstrap it
   # the build directory.
-- 
2.19.1


More information about the pacman-dev mailing list