AM_CPPFLAGS = $(CPPFLAGS_vlc)
AM_CFLAGS = $(CFLAGS_vlc)
-
+if HAVE_DBUS
+AM_CPPFLAGS += -DHAVE_DBUS
+endif
if !HAVE_WIN32
bin_PROGRAMS += vlc-wrapper
AC_SUBST(GNUGETOPT_LIBS)
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mpc dmo mp4 quicktime qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex opus mono colorthres extract ball access_imem hotkeys mosaic gaussianblur dbus x26410b hqdn3d anaglyph oldrc ncurses],[-lm])
+ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom panoramix rotate noise grain scene kate flac lua chorus_flanger freetype avcodec avformat access_avio swscale postproc i420_rgb faad twolame equalizer spatializer param_eq samplerate freetype mpc dmo mp4 quicktime qt4 compressor headphone_channel_mixer normvol audiobargraph_a speex opus mono colorthres extract ball access_imem hotkeys mosaic gaussianblur x26410b hqdn3d anaglyph oldrc ncurses],[-lm])
LIBM="-lm"
], [
LIBM=""
AC_ARG_ENABLE(dbus,
[AS_HELP_STRING([--enable-dbus],
[compile D-Bus message bus support (default enabled)])])
-case "${SYS}" in
- linux*|*bsd*)
-if test "${enable_dbus}" != "no" -a "${SYS}" != "mingw32"
-then
- dnl api stable dbus
- PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0.0],
- [ AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] )
- VLC_ADD_LIBS([libvlccore],[$DBUS_LIBS])
- VLC_ADD_CFLAGS([libvlccore],[$DBUS_CFLAGS])
- dnl Check for dbus control interface
- AC_ARG_ENABLE(dbus-control,
- [AS_HELP_STRING([--disable-dbus-control],
- [D-Bus control interface (default enabled)])])
- if test "${enable_dbus_control}" != "no"
- then
- VLC_ADD_PLUGIN([dbus])
- VLC_ADD_LIBS([dbus],[$DBUS_LIBS])
- VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS])
- fi
- dnl Power Management Inhibiter
- VLC_ADD_PLUGIN([inhibit])
- VLC_ADD_LIBS([inhibit],[$DBUS_LIBS])
- VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS])
- ],
- [AC_MSG_ERROR([${DBUS_PKG_ERRORS}.])]
- )
-fi
-;;
-esac
+have_dbus="no"
+AS_IF([test "${enable_dbus}" != "no"], [
+ PKG_CHECK_MODULES(DBUS, [dbus-1 >= 1.0.0], [
+ have_dbus="yes"
+ ], [
+ AS_IF([test -n "${enable_dbus}"], [
+ AC_MSG_ERROR([${DBUS_PKG_ERRORS}.])
+ ], [
+ AC_MSG_WARN([${DBUS_PKG_ERRORS}.])
+ ])
+ ])
+])
+AM_CONDITIONAL([HAVE_DBUS], [test "${have_dbus}" = "yes"])
dnl Check for ntohl, etc.
VLC_SAVE_FLAGS
modules/codec/spudec/Makefile
modules/codec/wmafixed/Makefile
modules/control/Makefile
- modules/control/dbus/Makefile
modules/demux/Makefile
modules/demux/asf/Makefile
modules/demux/avformat/Makefile
-SUBDIRS = dbus
SOURCES_dummy = dummy.c
SOURCES_gestures = gestures.c
SOURCES_netsync = netsync.c
libnetsync_plugin.la \
libhotkeys_plugin.la \
liboldrc_plugin.la
+
+libdbus_plugin_la_SOURCES = \
+ dbus/dbus_introspect.h dbus/dbus_common.h \
+ dbus/dbus_root.c dbus/dbus_root.h \
+ dbus/dbus_player.c dbus/dbus/player.h \
+ dbus/dbus_tracklist.c dbus/dbus/tracklist.h \
+ dbus/dbus.c
+libdbus_plugin_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
+libdbus_plugin_la_LIBADD = $(AM_LIBADD) $(DBUS_LIBS) $(LIBM)
+if HAVE_DBUS
+libvlc_LTLIBRARIES += libdbus_plugin.la
+endif
+
if !HAVE_WIN32
libglobalhotkeys_plugin_la_SOURCES = globalhotkeys/xcb.c
libglobalhotkeys_plugin_la_CFLAGS = $(AM_CFLAGS) $(XCB_KEYSYMS_CFLAGS) $(XCB_CFLAGS)
+++ /dev/null
-SOURCES_dbus = \
- dbus.c \
- dbus.h \
- dbus_introspect.h \
- dbus_common.h \
- dbus_root.h \
- dbus_root.c \
- dbus_player.h \
- dbus_player.c \
- dbus_tracklist.h \
- dbus_tracklist.c \
- $(NULL)
#endif
#include <dbus/dbus.h>
-#include "dbus.h"
#include "dbus_common.h"
#include "dbus_root.h"
#include "dbus_player.h"
#include <errno.h>
#include <unistd.h>
+#define DBUS_MPRIS_BUS_NAME "org.mpris.MediaPlayer2.vlc"
+#define DBUS_INSTANCE_ID_PREFIX "instance"
+
+#define SEEK_THRESHOLD 1000 /* µsec */
+
/*****************************************************************************
* Local prototypes.
*****************************************************************************/
+static DBusHandlerResult
+MPRISEntryPoint ( DBusConnection *p_conn, DBusMessage *p_from, void *p_this );
+
+static const DBusObjectPathVTable dbus_mpris_vtable = {
+ NULL, MPRISEntryPoint, /* handler function */
+ NULL, NULL, NULL, NULL
+};
+
typedef struct
{
int signal;
+++ /dev/null
-/*****************************************************************************
- * dbus.h : D-Bus control interface
- *****************************************************************************
- * Copyright © 2006-2008 Rafaël Carré
- * Copyright © 2007-2012 Mirsal Ennaime
- * Copyright © 2009-2012 The VideoLAN team
- * $Id$
- *
- * Authors: Rafaël Carré <funman at videolanorg>
- * Mirsal Ennaime <mirsal at mirsal fr>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
- *****************************************************************************/
-
-#ifndef _VLC_DBUS_H
-#define _VLC_DBUS_H
-
-#define DBUS_MPRIS_BUS_NAME "org.mpris.MediaPlayer2.vlc"
-#define DBUS_INSTANCE_ID_PREFIX "instance"
-
-static DBusHandlerResult
-MPRISEntryPoint ( DBusConnection *p_conn, DBusMessage *p_from, void *p_this );
-
-static const DBusObjectPathVTable dbus_mpris_vtable = {
- NULL, MPRISEntryPoint, /* handler function */
- NULL, NULL, NULL, NULL
-};
-
-#define SEEK_THRESHOLD 1000 /* µsec */
-
-#endif //dbus.h
ui.updatesDays->hide();
#endif
/* ONE INSTANCE options */
-#if defined( WIN32 ) || defined( HAVE_DBUS ) || defined(__APPLE__)
- CONFIG_BOOL( "one-instance", OneInterfaceMode );
- CONFIG_BOOL( "playlist-enqueue",
- EnqueueOneInterfaceMode );
- ui.EnqueueOneInterfaceMode->setEnabled( ui.OneInterfaceMode->isChecked() );
- CONNECT( ui.OneInterfaceMode, toggled( bool ),
- ui.EnqueueOneInterfaceMode, setEnabled( bool ) );
-#else
- ui.OneInterfaceBox->hide();
+#if !defined( WIN32 ) && !defined(__APPLE__)
+ if( !module_exists( "dbus" ) )
+ ui.OneInterfaceBox->hide();
+ else
#endif
+ {
+ CONFIG_BOOL( "one-instance", OneInterfaceMode );
+ CONFIG_BOOL( "playlist-enqueue", EnqueueOneInterfaceMode );
+ ui.EnqueueOneInterfaceMode->setEnabled(
+ ui.OneInterfaceMode->isChecked() );
+ CONNECT( ui.OneInterfaceMode, toggled( bool ),
+ ui.EnqueueOneInterfaceMode, setEnabled( bool ) );
+ }
+
/* RECENTLY PLAYED options */
CONNECT( ui.saveRecentlyPlayed, toggled( bool ),
ui.recentlyPlayedFilters, setEnabled( bool ) );
SOURCES_vod_rtsp = rtsp.c
SOURCES_audioscrobbler = audioscrobbler.c
-SOURCES_inhibit = inhibit.c
SOURCES_sqlite = sqlite.c
SOURCES_xml = xml/libxml.c
EXTRA_LTLIBRARIES += libgnutls_plugin.la
libvlc_LTLIBRARIES += $(LTLIBgnutls)
+libinhibit_plugin_la_SOURCES = inhibit.c
+libinhibit_plugin_la_CFLAGS = $(AM_CFLAGS) $(DBUS_CFLAGS)
+libinhibit_plugin_la_LIBADD = $(AM_LIBADD) $(DBUS_LIBS)
+if HAVE_DBUS
+libvlc_LTLIBRARIES += libinhibit_plugin.la
+endif
+
libxdg_screensaver_plugin_la_SOURCES = inhibit/xdg.c
libxdg_screensaver_plugin_la_CFLAGS = $(AM_CFLAGS)
libxdg_screensaver_plugin_la_LIBADD = $(AM_LIBADD)
if HAVE_DYNAMIC_PLUGINS
AM_CPPFLAGS += -DHAVE_DYNAMIC_PLUGINS
endif
+if HAVE_DBUS
+AM_CPPFLAGS += -DHAVE_DBUS
+AM_CFLAGS += $(DBUS_CFLAGS)
+endif
libvlccore_la_SOURCES = $(SOURCES_libvlc)
libvlccore_la_LDFLAGS = \
libvlccore_la_DEPENDENCIES += libvlc_win32_rc.$(OBJEXT)
libvlccore_la_LDFLAGS += -Wl,libvlc_win32_rc.$(OBJEXT) -avoid-version
endif
+if HAVE_DBUS
+libvlccore_la_LIBADD += $(DBUS_LIBS)
+endif
libvlc_win32_rc.$(OBJEXT): libvlc_win32_rc.rc
$(WINDRES) --include-dir $(top_srcdir)/share --include-dir $(top_srcdir)/extras/package/win32 -i $< -o $@