Open dvzrv opened 3 years ago
While that is true, non of this issues ever lead to a issue in real world. So, it's about pedantic. Hence, the priority for me to fix that is very low, sorry.
This is still the case for 1.0, e.g.:
lv2lint 0.16.2
Copyright (c) 2016-2021 Hanspeter Portner (dev@open-music-kontrollers.ch)
Released under Artistic License 2.0 by Open Music Kontrollers
<http://guitarix.sourceforge.net/plugins/gx_tonemachine_#_tonemachine_>
[FAIL] Plugin Symbols
binary exports superfluous globally visible symbols:
* _ZN15foxxtonemachine3DspD2Ev
* _ZN18foxxtonemachine_on3Dsp14connect_staticEjPvP9PluginLV2
* _ZN15foxxtonemachine3Dsp7connectEjPv
* _ZN19foxxtonemachine_off3Dsp14connect_staticEjPvP9PluginLV2
* _ZN18foxxtonemachine_on3Dsp20clear_state_f_staticEP9PluginLV2
* _ZN15foxxtonemachine19Gx_foxxtonemachine_12connect_portEPvjS1_
* _ZN15foxxtonemachine19Gx_foxxtonemachine_C1Ev
* _ZN19foxxtonemachine_off3Dsp14compute_staticEiPfS1_P9PluginLV2
* _ZN15foxxtonemachine3Dsp12del_instanceEP9PluginLV2
* _ZN15foxxtonemachine19Gx_foxxtonemachine_3runEPvj
* ... there is more, but the rest is being truncated
seeAlso: <http://lv2plug.in/ns/lv2core#binary>
[WARN] Plugin Author Homepage
foaf:homepage not found
seeAlso: <http://lv2plug.in/ns/lv2core#project>
<http://guitarix.sourceforge.net/plugins/gx_tonemachine_gui#_tonemachine_>
[FAIL] UI Symbols
binary exports superfluous globally visible symbols:
* scroll_event
* _binary_pedal_png_start
* gx_gui_destroy_main_window
* gx_gui_send_controller_event
* _binary_pedal_png_size
* resize_event
* motion_event
* cairo_image_surface_create_from_stream
* gx_gui_resize_surface
* gx_gui_create_window_and_surface
* ... there is more, but the rest is being truncated
seeAlso: <http://lv2plug.in/ns/lv2core#binary>
gxplugins.lv2-1.0-1-x86_64-check.log
So, it's about pedantic.
I don't really like your insinuation here. Someone spent quite some time ensuring that LV2 plugins do not crash any hosts and implemented checks for that. I believe that can hardly count as being "pedantic".
Globally visible symbols in UI may clash with the host (I guess), but I'm also not an expert.
In theory all that is required is to build those libs with -fvisibility=hidden
(AFAIK).
Hi David
Well, I've just forgotten about that issue.
You could add the needed flags on command-line like so:
CXXFLAGS=-fvisibility=hidden make
regards hermann
Hi! When packaging 0.9 for Arch Linux I also (finally) ran lv2lint against all plugins.
Unfortunately they all fail on various things, as you can see in this short excerpt:
The full check log can be found here: gxplugins.lv2-0.9-1-x86_64-check.log
I believe they are all fixable issues though! :)