mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-22 17:51:16 +00:00
meson: Re add workarounds to detect libpython path
This was removed all together in af4ade3743
"meson: use new python module".
And add `-Dlibpython-dir` option for the cases the logic fails.
This commit is contained in:
parent
fcfcbe76d3
commit
8e42b63201
2 changed files with 27 additions and 4 deletions
28
meson.build
28
meson.build
|
@ -27,10 +27,32 @@ python = pymod.find_installation(get_option('python'))
|
|||
python_dep = python.dependency(required : true)
|
||||
|
||||
python_abi_flags = python.get_variable('ABIFLAGS', '')
|
||||
pylib_loc = python.get_variable('LIBPL', '')
|
||||
if host_machine.system() != 'windows'
|
||||
assert(pylib_loc != '', 'Python dynamic library path could not be determined')
|
||||
pylib_loc = get_option('libpython-dir')
|
||||
if pylib_loc == ''
|
||||
check_path_exists = 'import os, sys; assert(os.path.exists(sys.argv[1]))'
|
||||
pylib_loc = python.get_variable('LIBPL', '')
|
||||
if host_machine.system() != 'windows'
|
||||
pylib_ldlibrary = python.get_variable('LDLIBRARY', '')
|
||||
if host_machine.system() == 'darwin'
|
||||
# OSX is a pain. Python as shipped by apple installs libpython in /usr/lib
|
||||
# so we hardcode that. Other systems can use -Dlibpythondir to
|
||||
# override this.
|
||||
pylib_loc = '/usr/lib'
|
||||
else
|
||||
if run_command(python, '-c', check_path_exists, join_paths(pylib_loc, pylib_ldlibrary)).returncode() != 0
|
||||
# Workaround for Fedora
|
||||
pylib_loc = python.get_variable('LIBDIR', '')
|
||||
message('pylib_loc = @0@'.format(pylib_loc))
|
||||
endif
|
||||
endif
|
||||
|
||||
assert(
|
||||
run_command(python, '-c', check_path_exists, join_paths(pylib_loc, pylib_ldlibrary)).returncode() == 0,
|
||||
'Python dynamic library path could not be determined'
|
||||
)
|
||||
endif
|
||||
endif
|
||||
|
||||
message('python_abi_flags = @0@'.format(python_abi_flags))
|
||||
message('pylib_loc = @0@'.format(pylib_loc))
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
option('pygi-overrides-dir', type : 'string', value : '',
|
||||
description: 'Path to pygobject overrides directory')
|
||||
|
||||
option('libpython-dir', type : 'string', value : '',
|
||||
description: 'Path to find libpythonXX.so')
|
||||
option('python', type : 'string', value : 'python3')
|
||||
|
|
Loading…
Reference in a new issue