summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libgit2-glib/files/1.1.0-meson-Use-install_symlink.patch')
-rw-r--r--dev-libs/libgit2-glib/files/1.1.0-meson-Use-install_symlink.patch80
1 files changed, 80 insertions, 0 deletions
diff --git a/dev-libs/libgit2-glib/files/1.1.0-meson-Use-install_symlink.patch b/dev-libs/libgit2-glib/files/1.1.0-meson-Use-install_symlink.patch
new file mode 100644
index 000000000000..d5ca886685ec
--- /dev/null
+++ b/dev-libs/libgit2-glib/files/1.1.0-meson-Use-install_symlink.patch
@@ -0,0 +1,80 @@
+https://gitlab.gnome.org/GNOME/libgit2-glib/-/merge_requests/37
+
+From 1659bb3a124c935848203828304c9efe943258db Mon Sep 17 00:00:00 2001
+From: Matt Turner <mattst88@gmail.com>
+Date: Thu, 13 Apr 2023 17:36:52 -0400
+Subject: [PATCH] meson: Use install_symlink
+
+New in v0.61.0, the install_symlink function lets us install symlinks
+directly from Meson, allowing us to remove the meson_vapi_link.py
+script.
+---
+ meson.build | 10 ++++++++--
+ meson_vapi_link.py | 27 ---------------------------
+ 2 files changed, 8 insertions(+), 29 deletions(-)
+ delete mode 100755 meson_vapi_link.py
+
+diff --git a/meson.build b/meson.build
+index 8f30cda..5598e19 100644
+--- a/meson.build
++++ b/meson.build
+@@ -3,7 +3,7 @@ project(
+ version: '1.1.0',
+ default_options: 'buildtype=debugoptimized',
+ license: 'LGPL2+',
+- meson_version: '>= 0.50.0',
++ meson_version: '>= 0.61.0',
+ )
+
+ libgit2_glib_version = meson.project_version()
+@@ -136,7 +136,13 @@ if enable_vapi
+ assert(enable_gir, 'vapi support was requested, but introspection support is mandatory.')
+ assert(add_languages('vala', required: false), 'vapi support was requested, but vala not found.')
+
+- meson.add_install_script('meson_vapi_link.py', libgit2_glib_datadir)
++ foreach ext : ['vapi', 'deps']
++ install_symlink(
++ 'ggit-1.0.' + ext,
++ install_dir: libgit2_glib_prefix / libgit2_glib_datadir / 'vala' / 'vapi',
++ pointing_to: 'libgit2-glib-1.0.' + ext,
++ )
++ endforeach
+ endif
+
+ # Check for libgit2 ssh support
+diff --git a/meson_vapi_link.py b/meson_vapi_link.py
+deleted file mode 100755
+index 20afe0c..0000000
+--- a/meson_vapi_link.py
++++ /dev/null
+@@ -1,27 +0,0 @@
+-#!/usr/bin/env python3
+-
+-import os
+-import shutil
+-import sys
+-
+-prefix = os.environ['MESON_INSTALL_DESTDIR_PREFIX'] if os.environ.get('DESTDIR') else os.environ['MESON_INSTALL_PREFIX']
+-
+-datadir = os.path.join(prefix, sys.argv[1])
+-
+-vapidir = os.path.join(datadir, 'vala', 'vapi')
+-os.chdir(vapidir)
+-
+-# FIXME: meson will not track the creation of these files
+-# https://github.com/mesonbuild/meson/blob/master/mesonbuild/scripts/uninstall.py#L39
+-old = 'ggit-1.0'
+-new = 'libgit2-glib-1.0'
+-
+-for ext in ['vapi', 'deps']:
+- src = '{}.{}'.format(new, ext)
+- dest = '{}.{}'.format(old, ext)
+- try:
+- os.symlink(src, dest)
+- except FileExistsError:
+- pass
+- except OSError:
+- shutil.copy(src, dest)
+--
+2.39.2
+