Thread: L-SMASH Source
View Single Post
Old 26th March 2020, 02:50   #1210  |  Link
qyot27
...?
 
qyot27's Avatar
 
Join Date: Nov 2005
Location: Florida
Posts: 1,420
I'm logged in under Windows at the moment, but as I do have WSL with Ubuntu 19.10 set up,
Code:
$ pkg-config --variable pc_path pkg-config
/usr/local/lib/x86_64-linux-gnu/pkgconfig:/usr/local/lib/pkgconfig:/usr/local/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
So yes, it sees both (and more), with the path meson used at the front. But it appears like the reason it picks that one first for installing liblsmashsource.so is because while FFmpeg and L-SMASH are both detected via pkgconfig, AviSynth is not. As soon as I hook AviSynth up into the pkg-config queries in meson.build¹, it does install to /usr/local/lib/avisynth just like ConvertStacked does.

¹
Code:
diff --git a/AviSynth/meson.build b/AviSynth/meson.build
index b20c0d4..75a92fa 100644
--- a/AviSynth/meson.build
+++ b/AviSynth/meson.build
@@ -56,7 +56,10 @@ sources = [
 
 includes = include_directories('../include')
 
+avisynth_dep = dependency('avisynth').partial_dependency(compile_args : true, includes : true)
+
 deps = [
+  dependency('avisynth'),
   dependency('liblsmash'),
   dependency('libavcodec', version : '>=58.18.0'),
   dependency('libavformat', version : '>=58.12.0'),
@@ -77,6 +80,6 @@ shared_module('lsmashsource', sources,
   dependencies : deps,
   include_directories : includes,
   install : true,
-  install_dir : join_paths(get_option('libdir'), 'avisynth'),
-  gnu_symbol_visibility : 'hidden'
+  install_dir : join_paths(avisynth_dep.get_pkgconfig_variable('libdir'), 'avisynth'),
+  gnu_symbol_visibility : 'default'
 )
Make sure to check the .so with nm -D to make sure that AvisynthPluginInit3 is exported.
qyot27 is offline   Reply With Quote