install replacement libraries in modules directory

Don't use a special name for the replacement libraries but install
them into the modules directory by default. Add an option to install
them into another location.

This way, we don't need to set up symlinks in development, distros can
choose to install them where they want and/or we can use symlinks or
LD_LIBRARY path to select the replacement versions.
This commit is contained in:
Wim Taymans 2020-04-29 11:24:24 +02:00
parent 83b30dcd3d
commit 293386c21a
4 changed files with 33 additions and 18 deletions

View file

@ -21,13 +21,3 @@ fi
mkdir -p build
$MESON setup "$@" build # use 'autogen.sh --reconfigure' to update
ln -sf build/Makefile Makefile
ln -sf libjack.so.0 build/pipewire-jack/src/libjack.so
ln -sf libjack-pw.so build/pipewire-jack/src/libjack.so.0
ln -sf libpulse.so.0 build/pipewire-pulseaudio/src/libpulse.so
ln -sf libpulse-pw.so build/pipewire-pulseaudio/src/libpulse.so.0
ln -sf libpulse-simple.so.0 build/pipewire-pulseaudio/src/libpulse-simple.so
ln -sf libpulse-simple-pw.so build/pipewire-pulseaudio/src/libpulse-simple.so.0
ln -sf libpulse-mainloop-glib.so.0 build/pipewire-pulseaudio/src/libpulse-mainloop-glib.so
ln -sf libpulse-mainloop-glib-pw.so build/pipewire-pulseaudio/src/libpulse-mainloop-glib.so.0

View file

@ -30,10 +30,16 @@ option('pipewire-jack',
description: 'Enable pipewire-jack integration',
type: 'boolean',
value: true)
option('libjack-path',
description: 'Where to install the libjack.so library',
type: 'string')
option('pipewire-pulseaudio',
description: 'Enable pipewire-pulseaudio integration',
type: 'boolean',
value: true)
option('libpulse-path',
description: 'Where to install the libpulse.so library',
type: 'string')
option('spa-plugins',
description: 'Enable spa plugins integration',
type: 'boolean',

View file

@ -13,13 +13,20 @@ pipewire_jack_c_args = [
#optional dependencies
jack_dep = dependency('jack', version : '>= 1.9.10', required : false)
pipewire_jack = shared_library('jack-pw',
libjack_path = get_option('libjack-path')
if libjack_path == ''
libjack_path = join_paths(modules_install_dir, 'jack')
endif
pipewire_jack = shared_library('jack',
pipewire_jack_sources,
soversion : pipewire_version,
soversion : soversion,
version : libversion,
c_args : pipewire_jack_c_args,
include_directories : [configinc],
dependencies : [pipewire_dep, jack_dep, mathlib],
install : true,
install_dir : libjack_path,
)
if sdl_dep.found()

View file

@ -48,32 +48,44 @@ pipewire_pulseaudio_c_args = [
mapfile = 'map-file'
vflag = '-Wl,--version-script,@0@/@1@'.format(meson.current_source_dir(), mapfile)
pipewire_pulseaudio = shared_library('pulse-pw',
libpulse_path = get_option('libpulse-path')
if libpulse_path == ''
libpulse_path = join_paths(modules_install_dir, 'pulse')
endif
pipewire_pulseaudio = shared_library('pulse',
pipewire_pulseaudio_sources,
soversion : pipewire_version,
soversion : soversion,
version : libversion,
c_args : pipewire_pulseaudio_c_args,
link_args : vflag,
include_directories : [configinc],
dependencies : [pipewire_dep, pulseaudio_dep, mathlib],
install : true,
install_dir : libpulse_path,
)
pipewire_pulseaudio = shared_library('pulse-mainloop-glib-pw',
pipewire_pulseaudio = shared_library('pulse-mainloop-glib',
pipewire_mainloop_glib_sources,
soversion : pipewire_version,
soversion : soversion,
version : libversion,
c_args : pipewire_pulseaudio_c_args,
link_args : vflag,
include_directories : [configinc],
dependencies : [pipewire_dep, pulseaudio_dep, mathlib, glib_dep],
install : true,
install_dir : libpulse_path,
)
pipewire_pulseaudio = shared_library('pulse-simple-pw',
pipewire_pulseaudio = shared_library('pulse-simple',
pipewire_mainloop_simple_sources,
soversion : pipewire_version,
soversion : soversion,
version : libversion,
c_args : pipewire_pulseaudio_c_args,
link_args : vflag,
include_directories : [configinc],
dependencies : [pipewire_dep, pulseaudio_dep, mathlib, glib_dep],
install : true,
install_dir : libpulse_path,
)