pragha-music-player / pragha

Pragha is a Lightweight Music Player for GNU/Linux.
GNU General Public License v3.0
178 stars 35 forks source link

Build system can try to use grilo-0.2 and grilo-0.3 simultaneously #124

Closed mgorny closed 6 years ago

mgorny commented 7 years ago

If I have both grilo-0.2 and grilo-0.3 installed on my system, configure detects both and enables both HAVE_GRILO3 and HAVE_GRILO2 conditionals. As a result, the plugins try to call both new and old routines which causes a build failure.

I think it would be less confusing if it skipped grilo-0.2 check if grilo-0.3 is found.

Build failure (for formality's sake):


/bin/sh ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include  -I/usr/include/taglib -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I../../src/include -Wall -pthread -I/usr/include/grilo-0.3 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/grilo-0.2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/xfce4/libxfce4ui-2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DNDEBUG -MT libpdlnarenderer_la-pragha-dlna-renderer-plugin.lo -MD -MP -MF .deps/libpdlnarenderer_la-pragha-dlna-renderer-plugin.Tpo -c -o libpdlnarenderer_la-pragha-dlna-renderer-plugin.lo `test -f 'pragha-dlna-renderer-plugin.c' || echo './'`pragha-dlna-renderer-plugin.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/taglib -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/libpeas-1.0 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/libpeas-1.0 -I/usr/include/gobject-introspection-1.0 -I/usr/lib64/libffi-3.2.1/include -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I../../src/include -Wall -pthread -I/usr/include/grilo-0.3 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/grilo-0.2 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/libxml2 -pthread -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/xfce4/libxfce4ui-2 -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-3.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -DNDEBUG -MT libpdlnarenderer_la-pragha-dlna-renderer-plugin.lo -MD -MP -MF .deps/libpdlnarenderer_la-pragha-dlna-renderer-plugin.Tpo -c pragha-dlna-renderer-plugin.c  -fPIC -DPIC -o .libs/libpdlnarenderer_la-pragha-dlna-renderer-plugin.o
pragha-dlna-renderer-plugin.c: In function ‘pragha_dlna_renderer_append_source’:
pragha-dlna-renderer-plugin.c:152:2: warning: implicit declaration of function ‘grl_operation_options_set_flags’ [-Wimplicit-function-declaration]
  grl_operation_options_set_flags (options, GRL_RESOLVE_IDLE_RELAY);
  ^
pragha-dlna-renderer-plugin.c:166:7: warning: implicit declaration of function ‘GRL_IS_MEDIA_BOX’ [-Wimplicit-function-declaration]
   if (GRL_IS_MEDIA_BOX (media)) {
       ^
pragha-dlna-renderer-plugin.c:174:3: error: expected ‘}’ before ‘else’
   else if (GRL_IS_MEDIA_AUDIO (media)) {
   ^
pragha-dlna-renderer-plugin.c:174:12: warning: implicit declaration of function ‘GRL_IS_MEDIA_AUDIO’ [-Wimplicit-function-declaration]
   else if (GRL_IS_MEDIA_AUDIO (media)) {
            ^
pragha-dlna-renderer-plugin.c:192:1: error: invalid storage class for function ‘pragha_dlna_renderer_plugin_search_music’
 pragha_dlna_renderer_plugin_search_music (PraghaDlnaRendererPlugin *plugin)
 ^
pragha-dlna-renderer-plugin.c:237:1: error: invalid storage class for function ‘pragha_plugin_activate’
 pragha_plugin_activate (PeasActivatable *activatable)
 ^
pragha-dlna-renderer-plugin.c: In function ‘pragha_plugin_activate’:
pragha-dlna-renderer-plugin.c:258:7: warning: implicit declaration of function ‘grl_registry_load_plugin_by_id’ [-Wimplicit-function-declaration]
  if (!grl_registry_load_plugin_by_id (registry, "grl-dleyna", &error)) {
       ^
pragha-dlna-renderer-plugin.c:288:1: error: invalid storage class for function ‘pragha_plugin_deactivate’
 pragha_plugin_deactivate (PeasActivatable *activatable)
 ^
pragha-dlna-renderer-plugin.c:304:1: error: expected declaration or statement at end of input
 }
 ^
pragha-dlna-renderer-plugin.c: In function ‘pragha_dlna_renderer_append_source’:
pragha-dlna-renderer-plugin.c:304:1: error: expected declaration or statement at end of input
In file included from pragha-dlna-renderer-plugin.c:51:0:
pragha-dlna-renderer-plugin.c: At top level:
../../plugins/pragha-plugin-macros.h:73:14: warning: ‘pragha_plugin_activate’ used but never defined
  static void pragha_plugin_activate (PeasActivatable *plugin);  \
              ^
../../plugins/pragha-plugin-macros.h:190:2: note: in expansion of macro ‘_REGISTER_PRIVATE_CODE’
  _REGISTER_PRIVATE_CODE(TYPE_NAME, TypeName, type_name,,)
  ^
pragha-dlna-renderer-plugin.c:62:1: note: in expansion of macro ‘PRAGHA_PLUGIN_REGISTER’
 PRAGHA_PLUGIN_REGISTER (PRAGHA_TYPE_DLNA_RENDERER_PLUGIN,
 ^
../../plugins/pragha-plugin-macros.h:74:14: warning: ‘pragha_plugin_deactivate’ used but never defined
  static void pragha_plugin_deactivate (PeasActivatable *plugin); \
              ^
../../plugins/pragha-plugin-macros.h:190:2: note: in expansion of macro ‘_REGISTER_PRIVATE_CODE’
  _REGISTER_PRIVATE_CODE(TYPE_NAME, TypeName, type_name,,)
  ^
pragha-dlna-renderer-plugin.c:62:1: note: in expansion of macro ‘PRAGHA_PLUGIN_REGISTER’
 PRAGHA_PLUGIN_REGISTER (PRAGHA_TYPE_DLNA_RENDERER_PLUGIN,
 ^
pragha-dlna-renderer-plugin.c:69:1: warning: ‘pragha_dlna_renderer_plugin_search_music’ used but never defined
 pragha_dlna_renderer_plugin_search_music (PraghaDlnaRendererPlugin *plugin);
 ^
pragha-dlna-renderer-plugin.c: In function ‘pragha_dlna_renderer_append_source’:
pragha-dlna-renderer-plugin.c:304:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^

<bountysource-plugin>

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/47884091-build-system-can-try-to-use-grilo-0-2-and-grilo-0-3-simultaneously?utm_campaign=plugin&utm_content=tracker%2F352350&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F352350&utm_medium=issues&utm_source=github).
</bountysource-plugin>
matiasdelellis commented 7 years ago

Ohh... You're right .. I hope to publish another beta soon..

Thanks!.