package/fluidsynth: needs dynamic library
authorFabrice Fontaine <fontaine.fabrice@gmail.com>
Wed, 15 Jul 2020 21:57:33 +0000 (23:57 +0200)
committerThomas Petazzoni <thomas.petazzoni@bootlin.com>
Thu, 13 Aug 2020 21:29:37 +0000 (23:29 +0200)
applications, such as mpd, fail to build statically with fluidsynth
because fluidsynth does not fill Libs.Private in their pkg-config file

Because fluidsynth is a cmake-package with many dependencies, it is not
easy to fix so just add a dynamic library dependency.

Here is an extract of src/CMakeLists.txt that gives the list of
fluidsynth possible dependencies:

target_link_libraries ( libfluidsynth
${GLIB_LIBRARIES}
${GMODULE_LIBRARIES}
${LASH_LIBRARIES}
${JACK_LIBRARIES}
${ALSA_LIBRARIES}
${PULSE_LIBRARIES}
${PORTAUDIO_LIBRARIES}
${LIBSNDFILE_LIBRARIES}
${SDL2_LIBRARIES}
${DBUS_LIBRARIES}
${READLINE_LIBS}
${DART_LIBS}
${COREAUDIO_LIBS}
${COREMIDI_LIBS}
${WINDOWS_LIBS}
${MidiShare_LIBS}
${OpenSLES_LIBS}
${OBOE_LIBS}
${LIBFLUID_LIBS}
${LIBINSTPATCH_LIBRARIES}
)

Fixes:
 - http://autobuild.buildroot.org/results/ec9dd2903359b9bf6b15c8cb69e732f8cb6c4d39

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
package/fluidsynth/Config.in
package/gstreamer1/gst1-plugins-bad/Config.in

index c1cb92348953d3c2a1c687dd547ddc22de7a0f4d..7c8836b608f2963a9cb4b504c36a5bcb66bce5aa 100644 (file)
@@ -3,6 +3,9 @@ config BR2_PACKAGE_FLUIDSYNTH
        depends on BR2_USE_WCHAR # libglib2
        depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2
        depends on BR2_USE_MMU # libglib2
+       # the .pc file installed by fluidsynth does not mention its
+       # indirect dependencies in Libs.private.
+       depends on !BR2_STATIC_LIBS
        select BR2_PACKAGE_LIBGLIB2
        help
          FluidSynth is a real-time software synthesizer based on the
@@ -115,6 +118,7 @@ config BR2_PACKAGE_FLUIDSYNTH_READLINE
 
 endif # BR2_PACKAGE_FLUIDSYNTH
 
-comment "fluidsynth needs a toolchain w/ threads, wchar"
+comment "fluidsynth needs a toolchain w/ threads, wchar, dynamic library"
        depends on BR2_USE_MMU
-       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+               BR2_STATIC_LIBS
index 6190cb5028c0656c9e2eb08ae436fb6f7f1b1719..c6e4a547f1c85eb04846211a5e9eb676a50678b2 100644 (file)
@@ -395,6 +395,7 @@ comment "fdk-aac needs a toolchain w/ C++"
 
 config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FLUIDSYNTH
        bool "fluidsynth"
+       depends on !BR2_STATIC_LIBS # fluidsynth
        depends on BR2_USE_WCHAR # fluidsynth
        depends on BR2_TOOLCHAIN_HAS_THREADS # fluidsynth
        depends on BR2_USE_MMU # fluidsynth
@@ -402,9 +403,10 @@ config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_FLUIDSYNTH
        help
          Fluidsynth MIDI decoder plugin
 
-comment "fluidsynth needs a toolchain w/ threads, wchar"
+comment "fluidsynth needs a toolchain w/ threads, wchar, dynamic library"
        depends on BR2_USE_MMU
-       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS
+       depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \
+               BR2_STATIC_LIBS
 
 config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_GL
        bool "gl"