summaryrefslogtreecommitdiff
path: root/recipes/glib.recipe
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian@centricular.com>2023-05-04 00:05:39 +0300
committerSebastian Dröge <sebastian@centricular.com>2023-05-04 09:40:06 +0300
commit7efc0562d50f6a88b9cd585a29bb744a1ceced1b (patch)
treedb7ae5e1506f079a38ec506eaa9ab4169fe53afc /recipes/glib.recipe
parent1a3d2d2f034d30adc0ed54e6f6358bd751988b15 (diff)
glib: Ship Windows process spawning helpers
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1177>
Diffstat (limited to 'recipes/glib.recipe')
-rw-r--r--recipes/glib.recipe12
1 files changed, 12 insertions, 0 deletions
diff --git a/recipes/glib.recipe b/recipes/glib.recipe
index 36f9a6ad..a352064b 100644
--- a/recipes/glib.recipe
+++ b/recipes/glib.recipe
@@ -3,6 +3,7 @@ import shlex
import shutil
from cerbero.tools.libtool import LibtoolLibrary
from cerbero.tools.libtool import get_libtool_versions
+from cerbero.utils import messages as m
GLIB_CONFIG_UNVERSAL='''\
#ifdef __i386__
@@ -115,6 +116,17 @@ class Recipe(recipe.Recipe):
if self.config.target_platform == Platform.WINDOWS:
self.library_type = LibraryType.SHARED
+ # Glib needs special process spawning helpers on Windows
+ if self.config.target_platform == Platform.WINDOWS:
+ if self.config.target_arch in [Architecture.X86_64, Architecture.ARM64]:
+ self.files_bins.append('gspawn-win64-helper')
+ self.files_bins.append('gspawn-win64-helper-console')
+ elif self.config.target_arch == Architecture.X86 or Architecture.is_arm32(self.config.target_arch):
+ self.files_bins.append('gspawn-win32-helper')
+ self.files_bins.append('gspawn-win32-helper-console')
+ else:
+ m.warning(f'Unsupported Windows architecture {self.config.target_arch}')
+
if self.config.target_platform != Platform.LINUX:
# Disable valgrind code on non-Linux, in the best case it just
# gives us compiler errors :)