mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-29 05:01:23 +00:00
meson: Backport glib patch to allow pcre2 fallback
2.76 broke this, but glib main fixed it again. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5124>
This commit is contained in:
parent
fcd2d8531f
commit
d381a28beb
2 changed files with 49 additions and 1 deletions
|
@ -5,7 +5,7 @@ source_fallback_url = https://ftp.acc.umu.se/pub/gnome/sources/glib/2.76/glib-2.
|
||||||
source_filename = glib-2.76.4.tar.xz
|
source_filename = glib-2.76.4.tar.xz
|
||||||
source_hash = 5a5a191c96836e166a7771f7ea6ca2b0069c603c7da3cba1cd38d1694a395dda
|
source_hash = 5a5a191c96836e166a7771f7ea6ca2b0069c603c7da3cba1cd38d1694a395dda
|
||||||
wrapdb_version = 2.76.4
|
wrapdb_version = 2.76.4
|
||||||
diff_files = glib-2.76.4/0001-meson-help-gobject-introspection-locate-source-and-b.patch
|
diff_files = glib-2.76.4/0001-meson-help-gobject-introspection-locate-source-and-b.patch, glib-2.76.4/0001-meson-Allow-fallback-static-build-of-pcre-subproject.patch
|
||||||
|
|
||||||
[provide]
|
[provide]
|
||||||
dependency_names = gthread-2.0, gobject-2.0, gmodule-no-export-2.0, gmodule-export-2.0, gmodule-2.0, glib-2.0, gio-2.0, gio-windows-2.0, gio-unix-2.0
|
dependency_names = gthread-2.0, gobject-2.0, gmodule-no-export-2.0, gmodule-export-2.0, gmodule-2.0, glib-2.0, gio-2.0, gio-windows-2.0, gio-unix-2.0
|
||||||
|
|
|
@ -0,0 +1,48 @@
|
||||||
|
From dd5683ce6495ee3e39968043f9b1a2a4dec5cde6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Marius Kintel <marius@kintel.net>
|
||||||
|
Date: Wed, 28 Jun 2023 14:38:36 +0000
|
||||||
|
Subject: [PATCH] meson: Allow fallback & static build of pcre subproject
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Using `allow_fallback: false` on the first check for libpcre
|
||||||
|
was unnecessary, as `required: false` already disables using
|
||||||
|
fallbacks. `allow_fallback: false` meant that
|
||||||
|
`--force-fallback-for` couldn’t work. This commit fixes that.
|
||||||
|
|
||||||
|
Also allow the fallback libpcre to be built statically so it
|
||||||
|
can be linked into GLib.
|
||||||
|
|
||||||
|
Helps: #3025
|
||||||
|
---
|
||||||
|
meson.build | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/meson.build b/meson.build
|
||||||
|
index 1c62ea352..9e7448386 100644
|
||||||
|
--- a/meson.build
|
||||||
|
+++ b/meson.build
|
||||||
|
@@ -2050,7 +2050,9 @@ else
|
||||||
|
endif
|
||||||
|
|
||||||
|
pcre2_req = '>=10.32'
|
||||||
|
-pcre2 = dependency('libpcre2-8', version: pcre2_req, required: false, allow_fallback: false)
|
||||||
|
+
|
||||||
|
+# Pick up pcre from the system, or if "--force-fallback-for libpcre2-8" was specified
|
||||||
|
+pcre2 = dependency('libpcre2-8', version: pcre2_req, required: false, default_options: ['default_library=static'])
|
||||||
|
if not pcre2.found()
|
||||||
|
if cc.get_id() == 'msvc' or cc.get_id() == 'clang-cl'
|
||||||
|
# MSVC: Search for the PCRE2 library by the configuration, which corresponds
|
||||||
|
@@ -2066,7 +2068,7 @@ endif
|
||||||
|
|
||||||
|
# Try again with the fallback
|
||||||
|
if not pcre2.found()
|
||||||
|
- pcre2 = dependency('libpcre2-8', version: pcre2_req, allow_fallback: true)
|
||||||
|
+ pcre2 = dependency('libpcre2-8', version: pcre2_req, allow_fallback: true, default_options: ['default_library=static'])
|
||||||
|
assert(pcre2.type_name() == 'internal')
|
||||||
|
# static flags are automatically enabled by the subproject if it's built
|
||||||
|
# with default_library=static
|
||||||
|
--
|
||||||
|
2.37.1 (Apple Git-137.1)
|
||||||
|
|
Loading…
Reference in a new issue