Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.freedesktop.org/gstreamer/gst-plugins-rs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGuillaume Desmottes <guillaume.desmottes@collabora.com>2020-11-26 18:50:04 +0300
committerGuillaume Desmottes <guillaume.desmottes@collabora.com>2021-01-04 14:26:45 +0300
commit32d511684ea52e1c6e15495ec080281be3dd24b8 (patch)
treeb74fb9509bf6a78506714e43602de9c4e3f44666 /cargo_wrapper.py
parentdfdbd370f9708bccfaec71589d12da77ea0b43c7 (diff)
meson: install plugins pc files
Diffstat (limited to 'cargo_wrapper.py')
-rw-r--r--cargo_wrapper.py25
1 files changed, 21 insertions, 4 deletions
diff --git a/cargo_wrapper.py b/cargo_wrapper.py
index 4a7d79b46..06bbde90a 100644
--- a/cargo_wrapper.py
+++ b/cargo_wrapper.py
@@ -9,8 +9,8 @@ import sys
PLUGIN_DIRS = ['audio', 'generic', 'net', 'text', 'utils', 'video']
-command, meson_build_dir, meson_current_source_dir, meson_build_root, target, exclude, extra_env = sys.argv[
- 1:8]
+command, meson_build_dir, meson_current_source_dir, meson_build_root, target, exclude, extra_env, prefix, libdir = sys.argv[
+ 1:10]
cargo_target_dir = os.path.join(meson_build_dir, 'target')
@@ -28,10 +28,10 @@ if len(extra_env) > 0:
if command == 'build':
# cargo build
- ext = sys.argv[8]
+ ext = sys.argv[10]
# when using --default-library=both 2 extensions are passed
try:
- ext2 = sys.argv[9]
+ ext2 = sys.argv[11]
except IndexError:
ext2 = None
@@ -46,6 +46,9 @@ else:
print("Unknown command:", command)
sys.exit(1)
+cargo_cmd.extend(['--prefix', prefix, '--libdir',
+ os.path.join(prefix, libdir)])
+
def run(cargo_cmd, env):
try:
@@ -71,3 +74,17 @@ if command == 'build':
if ext2:
for f in glob.glob(os.path.join(cargo_target_dir, target, '*.' + ext2)):
shutil.copy(f, meson_build_dir)
+ # Copy generated pkg-config files
+ for f in glob.glob(os.path.join(cargo_target_dir, target, '*.pc')):
+ shutil.copy(f, meson_build_dir)
+
+ # Move -uninstalled.pc to meson-uninstalled
+ uninstalled = os.path.join(meson_build_dir, 'meson-uninstalled')
+ if not os.path.exists(uninstalled):
+ os.mkdir(uninstalled)
+ for f in glob.glob(os.path.join(meson_build_dir, '*-uninstalled.pc')):
+ # move() does not allow us to update the file so remove it if it already exists
+ dest = os.path.join(uninstalled, os.path.basename(f))
+ if os.path.exists(dest):
+ os.unlink(dest)
+ shutil.move(f, uninstalled)