[Spice-devel] [PATCH spice-gtk v2 01/15] build-sys: drop gstaudio option, make GStreamer a requirement
marcandre.lureau at redhat.com
marcandre.lureau at redhat.com
Wed Jan 9 08:52:56 UTC 2019
From: Marc-André Lureau <marcandre.lureau at redhat.com>
GStreamer is being increasingly used by spice-gtk. Let's make it a
core requirement.
Signed-off-by: Marc-André Lureau <marcandre.lureau at redhat.com>
---
.gitlab-ci.yml | 2 --
configure.ac | 32 ++++++++++----------------------
meson.build | 18 ++++--------------
meson_options.txt | 5 -----
src/Makefile.am | 9 ++-------
src/meson.build | 7 ++-----
src/spice-audio.c | 4 ----
tools/spicy.c | 8 --------
8 files changed, 18 insertions(+), 67 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fd999d1..78b339e 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -32,7 +32,6 @@ makecheck_simple:
script:
- ./autogen.sh --enable-static
--enable-lz4=no
- --enable-gstaudio=no
--enable-gstvideo=no
--enable-webdav=no
--with-sasl=no
@@ -47,7 +46,6 @@ makecheck_simple:
makecheck_simple-meson:
script:
- meson build -Dauto_features=disabled
- -Dgstaudio=false
-Dgstvideo=false
-Dusbredir=false
-Ddbus=false || (cat build/meson-logs/meson-log.txt && exit 1)
diff --git a/configure.ac b/configure.ac
index 8c5c4d3..fdd9788 100644
--- a/configure.ac
+++ b/configure.ac
@@ -210,27 +210,16 @@ AS_IF([test "x$enable_pulse" != "xno"],
])
AM_CONDITIONAL([HAVE_PULSE], [test "x$enable_pulse" = "xyes"])
-AC_ARG_ENABLE([gstaudio],
- AS_HELP_STRING([--enable-gstaudio=@<:@yes/auto/no@:>@], [Enable the GStreamer 1.0 audio backend @<:@default=auto@:>@]),
- [],
- [enable_gstaudio="auto"])
-AS_IF([test "x$enable_gstaudio" != "xno"],
- [SPICE_CHECK_GSTREAMER(GSTAUDIO, 1.0, [gstreamer-1.0 gstreamer-base-1.0 gstreamer-app-1.0 gstreamer-audio-1.0],
- [SPICE_CHECK_GSTREAMER_ELEMENTS($GST_INSPECT_1_0, [gst-plugins-base 1.0], [audioconvert audioresample appsink])
- SPICE_CHECK_GSTREAMER_ELEMENTS($GST_INSPECT_1_0, [gst-plugins-good 1.0], [autoaudiosrc])
- AS_IF([test x"$missing_gstreamer_elements" = "xyes"],
- SPICE_WARNING([The GStreamer 1.0 audio backend can be built but may not work.]))
- ],
- [AS_IF([test "x$enable_gstaudio" = "xyes"],
- AC_MSG_ERROR([GStreamer 1.0 audio requested but not found]))
- ])
- ], [have_gstaudio="no"]
-)
-AM_CONDITIONAL([HAVE_GSTAUDIO], [test "x$have_gstaudio" = "xyes"])
-
-AS_IF([test "x$enable_pulse$have_gstaudio" = "xnono"],
- [SPICE_WARNING([No PulseAudio or GStreamer 1.0 audio decoder, audio will not be streamed])
-])
+SPICE_CHECK_GSTREAMER(GSTAUDIO, 1.0,
+ [gstreamer-1.0 gstreamer-base-1.0 gstreamer-app-1.0 gstreamer-audio-1.0],
+ [SPICE_CHECK_GSTREAMER_ELEMENTS($GST_INSPECT_1_0,
+ [gst-plugins-base 1.0], [audioconvert audioresample appsink])
+ SPICE_CHECK_GSTREAMER_ELEMENTS($GST_INSPECT_1_0,
+ [gst-plugins-good 1.0], [autoaudiosrc])
+ AS_IF([test x"$missing_gstreamer_elements" = "xyes"],
+ SPICE_WARNING([The GStreamer 1.0 audio backend can be built but may not work.]))
+ ],
+ [AC_MSG_ERROR([Required GStreamer packages missing])])
AC_ARG_ENABLE([gstvideo],
AS_HELP_STRING([--enable-gstvideo=@<:@auto/yes/no@:>@],
@@ -558,7 +547,6 @@ AC_MSG_NOTICE([
Gtk: ${with_gtk}
Coroutine: ${with_coroutine}
PulseAudio: ${enable_pulse}
- GStreamer Audio: ${have_gstaudio}
GStreamer Video: ${have_gstvideo}
SASL support: ${have_sasl}
Smartcard support: ${have_smartcard}
diff --git a/meson.build b/meson.build
index 3737768..4b49a24 100644
--- a/meson.build
+++ b/meson.build
@@ -160,25 +160,15 @@ if d.found()
spice_gtk_has_pulse = true
endif
-# gstaudio
-gst_base_deps = ['gstreamer-1.0', 'gstreamer-base-1.0', 'gstreamer-app-1.0']
-spice_gtk_has_gstaudio = false
-if get_option('gstaudio')
- deps = gst_base_deps + ['gstreamer-audio-1.0']
- foreach dep : deps
- spice_glib_deps += dependency(dep)
- endforeach
- spice_gtk_config_data.set('HAVE_GSTAUDIO', '1')
- spice_gtk_has_gstaudio = true
-endif
+deps = ['gstreamer-1.0', 'gstreamer-base-1.0', 'gstreamer-app-1.0', 'gstreamer-audio-1.0']
+foreach dep : deps
+ spice_glib_deps += dependency(dep)
+endforeach
# gstvideo
spice_gtk_has_gstvideo = false
if get_option('gstvideo')
deps = ['gstreamer-video-1.0']
- if not spice_gtk_has_gstaudio
- deps += gst_base_deps
- endif
foreach dep : deps
spice_glib_deps += dependency(dep)
endforeach
diff --git a/meson_options.txt b/meson_options.txt
index 32468b7..08eface 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -10,11 +10,6 @@ option('pulse',
type : 'feature',
description: 'Enable the PulseAudio backend')
-option('gstaudio',
- type : 'boolean',
- value : true,
- description : 'Enable the GStreamer 1.0 audio backend')
-
option('gstvideo',
type : 'boolean',
value : true,
diff --git a/src/Makefile.am b/src/Makefile.am
index b876530..f8335ca 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -217,6 +217,8 @@ libspice_client_glib_impl_la_SOURCES = \
bio-gio.h \
spice-audio.c \
spice-audio-priv.h \
+ spice-gstaudio.c \
+ spice-gstaudio.h \
spice-common.h \
spice-util.c \
spice-util-priv.h \
@@ -318,13 +320,6 @@ libspice_client_glib_impl_la_SOURCES += \
$(NULL)
endif
-if HAVE_GSTAUDIO
-libspice_client_glib_impl_la_SOURCES += \
- spice-gstaudio.c \
- spice-gstaudio.h \
- $(NULL)
-endif
-
if HAVE_BUILTIN_MJPEG
libspice_client_glib_impl_la_SOURCES += \
channel-display-mjpeg.c \
diff --git a/src/meson.build b/src/meson.build
index 73ddcc0..5754f1f 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -110,6 +110,8 @@ spice_client_glib_sources = [
'spice-file-transfer-task.c',
'spice-file-transfer-task-priv.h',
'spice-glib-main.c',
+ 'spice-gstaudio.c',
+ 'spice-gstaudio.h',
'spice-option.h',
'spice-session-priv.h',
'spice-uri.c',
@@ -126,11 +128,6 @@ if spice_gtk_has_builtin_mjpeg
spice_client_glib_sources += 'channel-display-mjpeg.c'
endif
-if spice_gtk_has_gstaudio
- spice_client_glib_sources += ['spice-gstaudio.c',
- 'spice-gstaudio.h']
-endif
-
if spice_gtk_has_gstvideo
spice_client_glib_sources += 'channel-display-gst.c'
endif
diff --git a/src/spice-audio.c b/src/spice-audio.c
index d2f0d92..daf62df 100644
--- a/src/spice-audio.c
+++ b/src/spice-audio.c
@@ -45,9 +45,7 @@
#ifdef HAVE_PULSE
#include "spice-pulse.h"
#endif
-#ifdef HAVE_GSTAUDIO
#include "spice-gstaudio.h"
-#endif
G_DEFINE_ABSTRACT_TYPE_WITH_PRIVATE(SpiceAudio, spice_audio, G_TYPE_OBJECT)
@@ -241,10 +239,8 @@ SpiceAudio *spice_audio_new_priv(SpiceSession *session, GMainContext *context,
#ifdef HAVE_PULSE
self = SPICE_AUDIO(spice_pulse_new(session, context, name));
#endif
-#ifdef HAVE_GSTAUDIO
if (!self)
self = SPICE_AUDIO(spice_gstaudio_new(session, context, name));
-#endif
if (!self)
return NULL;
diff --git a/tools/spicy.c b/tools/spicy.c
index 060bbdc..06af15e 100644
--- a/tools/spicy.c
+++ b/tools/spicy.c
@@ -33,9 +33,7 @@
#include "usb-device-widget.h"
#include "spicy-connect.h"
-#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
#include <gst/gst.h>
-#endif
typedef struct spice_connection spice_connection;
@@ -1997,9 +1995,7 @@ int main(int argc, char *argv[])
/* parse opts */
gtk_init(&argc, &argv);
-#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
gst_init(&argc, &argv);
-#endif
context = g_option_context_new("- spice client test application");
g_option_context_set_summary(context, "Gtk+ test client to connect to Spice servers.");
g_option_context_set_description(context, "Report bugs to " PACKAGE_BUGREPORT ".");
@@ -2007,9 +2003,7 @@ int main(int argc, char *argv[])
g_option_context_set_main_group(context, spice_cmdline_get_option_group());
g_option_context_add_main_entries(context, cmd_entries, NULL);
g_option_context_add_group(context, gtk_get_option_group(TRUE));
-#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
g_option_context_add_group(context, gst_init_get_option_group());
-#endif
if (!g_option_context_parse (context, &argc, &argv, &error)) {
g_print("option parsing failed: %s\n", error->message);
exit(1);
@@ -2064,8 +2058,6 @@ int main(int argc, char *argv[])
g_free(spicy_title);
setup_terminal(true);
-#if HAVE_GSTAUDIO || HAVE_GSTVIDEO
gst_deinit();
-#endif
return 0;
}
--
2.20.1.2.gb21ebb671b
More information about the Spice-devel
mailing list