[fractal] build: use add_dist_script for vendoring



commit 63528416e7b74b231f1e5b001eecfae6da30573c
Author: Christopher Davis <brainblasted disroot org>
Date:   Mon Apr 22 01:40:42 2019 -0400

    build: use add_dist_script for vendoring
    
    Our workaround for getting meson and cargo working together
    included a separate 'release' target that replaced
    'ninja dist' so that we could vendor dependencies.
    
    Now we use meson's add_dist_script to vendor the
    dependencies as part of 'ninja dist', so we no longer need
    the 'release' target.

 meson.build        |  9 +++++----
 scripts/release.sh | 30 ------------------------------
 scripts/vendor.sh  |  9 +++++++++
 3 files changed, 14 insertions(+), 34 deletions(-)
---
diff --git a/meson.build b/meson.build
index ebd27089..27c21231 100644
--- a/meson.build
+++ b/meson.build
@@ -72,13 +72,14 @@ gresource = find_program('glib-compile-resources', required: false)
 cargo_vendor = find_program('cargo-vendor', required: false)
 cargo_script = find_program('scripts/cargo.sh')
 grabber = find_program('scripts/grabber.sh')
-cargo_release = find_program('scripts/release.sh')
 
 subdir('fractal-gtk/src')
 
-run_target('release', command: ['scripts/release.sh',
-                                meson.project_name() + '-' + fractal_version
-                               ])
+meson.add_dist_script(
+  'scripts/vendor.sh',
+  meson.source_root(),
+  join_paths(meson.build_root(), 'meson-dist', meson.project_name() + '-' + fractal_version)
+)
 
 if get_option('profile') == 'development'
     # Setup pre-commit hook for ensuring coding style is always consistent
diff --git a/scripts/vendor.sh b/scripts/vendor.sh
new file mode 100644
index 00000000..e28f21db
--- /dev/null
+++ b/scripts/vendor.sh
@@ -0,0 +1,9 @@
+#!/bin/sh
+export SOURCE_ROOT="$1"
+export DIST="$2"
+
+cd "$SOURCE_ROOT"
+mkdir "$DIST"/.cargo
+cargo vendor | sed 's/^directory = ".*"/directory = "vendor"/g' > $DIST/.cargo/config
+# Move vendor into dist tarball directory
+mv vendor "$DIST"


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]