[Spice-devel] [PATCH] Don't build libspice-client-gtk if configured --without-gtk

Marc-André Lureau marcandre.lureau at gmail.com
Wed Feb 4 03:53:02 PST 2015


Hi

Documentation fails to build, I think it should be disabled if --without-gtk:

+++ b/configure.ac
@@ -175,6 +175,9 @@ case "$with_gtk" in
        GTK_REQUIRED=2.91.3
        SPICE_GTK_API_VERSION=3.0
        ;;
+  no)
+       AS_IF([test x$enable_gtk_doc = xyes],
+             [AC_MSG_ERROR([Without GTK+, gtk-doc must be disabled])])
 esac

I can apply with this change if you agree.

Are you working on a new frontend? (someone started a Qt one some time ago)

On Wed, Feb 4, 2015 at 9:46 AM, Benjamin Gilbert <bgilbert at cs.cmu.edu> wrote:
> libspice-client-glib is useful as a client library on platforms that
> don't support GTK.
> ---
>  Makefile.am      |  5 ++++-
>  configure.ac     | 14 ++++++++------
>  gtk/Makefile.am  | 14 ++++++++++++--
>  vapi/Makefile.am |  7 +++++--
>  4 files changed, 29 insertions(+), 11 deletions(-)
>
> diff --git a/Makefile.am b/Makefile.am
> index 8ac2028..e559c4d 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -16,9 +16,12 @@ endif
>  pkgconfigdir = $(libdir)/pkgconfig
>  pkgconfig_DATA =                                       \
>         spice-client-glib-2.0.pc                        \
> -       spice-client-gtk-$(SPICE_GTK_API_VERSION).pc    \
>         $(NULL)
>
> +if WITH_GTK
> +pkgconfig_DATA += spice-client-gtk-$(SPICE_GTK_API_VERSION).pc
> +endif
> +
>  if WITH_CONTROLLER
>  pkgconfig_DATA += spice-controller.pc
>  endif
> diff --git a/configure.ac b/configure.ac
> index 9b420a3..5146c72 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -158,13 +158,13 @@ AC_SUBST([SASL_LIBS])
>
>  AC_MSG_CHECKING([which gtk+ version to compile against])
>  AC_ARG_WITH([gtk],
> -  [AS_HELP_STRING([--with-gtk=@<:@2.0/3.0@:>@],[which gtk+ version to compile against @<:@default=3.0@:>@])],
> +  [AS_HELP_STRING([--with-gtk=@<:@2.0/3.0/no@:>@],[which gtk+ version to compile against @<:@default=3.0@:>@])],
>    [case "$with_gtk" in
> -     2.0|3.0) ;;
> +     2.0|3.0) AC_MSG_RESULT([$with_gtk]) ;;
> +     no) AC_MSG_RESULT([none]) ;;
>       *) AC_MSG_ERROR([invalid gtk version specified]) ;;
>     esac],
>    [with_gtk=3.0])
> -AC_MSG_RESULT([$with_gtk])
>
>  case "$with_gtk" in
>    2.0) GTK_API_VERSION=2.0
> @@ -180,10 +180,12 @@ esac
>  AC_SUBST([GTK_API_VERSION])
>  AC_SUBST([GTK_REQUIRED])
>  AC_SUBST([SPICE_GTK_API_VERSION])
> +AM_CONDITIONAL([WITH_GTK],[test "$with_gtk" != "no"])
>  AM_CONDITIONAL([HAVE_GTK_2],[test "$with_gtk" = "2.0"])
>  AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk" = "3.0"])
>
> -PKG_CHECK_MODULES(GTK, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED)
> +AS_IF([test "x$with_gtk" != "xno"],
> +      [PKG_CHECK_MODULES(GTK, gtk+-$GTK_API_VERSION >= $GTK_REQUIRED)])
>  AC_SUBST(GTK_CFLAGS)
>  AC_SUBST(GTK_LIBS)
>  SPICE_GTK_REQUIRES="${SPICE_GTK_REQUIRES} gtk+-$GTK_API_VERSION >= $GTK_REQUIRED"
> @@ -599,7 +601,7 @@ AC_ARG_WITH([python],
>     yes|no|auto) with_python="$withval";;
>     *) AC_MSG_ERROR([bad value $withval for python option]) ;;
>     esac],
> -  [AS_IF([test "$with_gtk" = "3.0" || test "x$os_win32" = "xyes"],
> +  [AS_IF([test "$with_gtk" != "2.0" || test "x$os_win32" = "xyes"],
>           [with_python=no],[with_python=auto])]
>  )
>
> @@ -758,8 +760,8 @@ AC_MSG_NOTICE([
>          prefix:                   ${prefix}
>          c compiler:               ${CC}
>          Target:                   ${red_target}
> -        Gtk:                      $GTK_API_VERSION
>
> +        Gtk:                      ${with_gtk}
>          Coroutine:                ${with_coroutine}
>          Audio:                    ${with_audio}
>          SASL support:             ${enable_sasl}
> diff --git a/gtk/Makefile.am b/gtk/Makefile.am
> index 6003793..7728fec 100644
> --- a/gtk/Makefile.am
> +++ b/gtk/Makefile.am
> @@ -45,7 +45,10 @@ EXTRA_DIST =                                 \
>
>  DISTCLEANFILES = spice-version.h
>
> -bin_PROGRAMS = spicy spicy-stats spicy-screenshot
> +bin_PROGRAMS = spicy-stats spicy-screenshot
> +if WITH_GTK
> +bin_PROGRAMS += spicy
> +endif
>  if WITH_POLKIT
>  acldir = $(ACL_HELPER_DIR)
>  acl_PROGRAMS = spice-client-glib-usb-acl-helper
> @@ -53,11 +56,13 @@ endif
>
>  lib_LTLIBRARIES = libspice-client-glib-2.0.la
>
> +if WITH_GTK
>  if HAVE_GTK_2
>  lib_LTLIBRARIES += libspice-client-gtk-2.0.la
>  else
>  lib_LTLIBRARIES += libspice-client-gtk-3.0.la
>  endif
> +endif
>
>  if HAVE_LD_VERSION_SCRIPT
>  GLIB_SYMBOLS_LDFLAGS = -Wl,--version-script=${srcdir}/map-file
> @@ -157,6 +162,7 @@ SPICE_GTK_SOURCES_COMMON +=         \
>         $(NULL)
>  endif
>
> +if WITH_GTK
>  if HAVE_GTK_2
>  libspice_client_gtk_2_0_la_DEPEDENCIES = $(GTK_SYMBOLS_FILE)
>  libspice_client_gtk_2_0_la_LDFLAGS = $(SPICE_GTK_LDFLAGS_COMMON)
> @@ -171,7 +177,6 @@ libspice_client_gtk_3_0_la_SOURCES = $(SPICE_GTK_SOURCES_COMMON)
>  nodist_libspice_client_gtk_3_0_la_SOURCES = $(nodist_SPICE_GTK_SOURCES_COMMON)
>  endif
>
> -
>  libspice_client_gtkincludedir = $(includedir)/spice-client-gtk-$(SPICE_GTK_API_VERSION)
>  libspice_client_gtkinclude_HEADERS =   \
>         spice-gtk-session.h             \
> @@ -183,6 +188,7 @@ libspice_client_gtkinclude_HEADERS =        \
>  nodist_libspice_client_gtkinclude_HEADERS =    \
>         spice-widget-enums.h                    \
>         $(NULL)
> +endif
>
>  libspice_client_glib_2_0_la_DEPENDENCIES = $(GLIB_SYMBOLS_FILE)
>
> @@ -449,11 +455,13 @@ spicy_stats_LDADD =                               \
>
>  $(libspice_client_glib_2_0_la_SOURCES): spice-glib-enums.h spice-marshal.h
>
> +if WITH_GTK
>  if HAVE_GTK_2
>  $(libspice_client_gtk_2_0_la_SOURCES): spice-glib-enums.h spice-widget-enums.h
>  else
>  $(libspice_client_gtk_3_0_la_SOURCES): spice-glib-enums.h spice-widget-enums.h
>  endif
> +endif
>
>  spice-marshal.c: spice-marshal.h
>  spice-glib-enums.c: spice-glib-enums.h
> @@ -643,6 +651,7 @@ SpiceClientGLib_2_0_gir_EXPORT_PACKAGES = spice-client-glib-2.0
>  SpiceClientGLib_2_0_gir_SCANNERFLAGS = --c-include="spice-client.h"
>  INTROSPECTION_GIRS += SpiceClientGLib-2.0.gir
>
> +if WITH_GTK
>  if HAVE_GTK_2
>  SpiceClientGtk-2.0.gir: libspice-client-gtk-2.0.la SpiceClientGLib-2.0.gir
>  SpiceClientGtk_2_0_gir_INCLUDES = GObject-2.0 Gtk-2.0 SpiceClientGLib-2.0
> @@ -661,6 +670,7 @@ SpiceClientGtk_3_0_gir_EXPORT_PACKAGES = spice-client-gtk-3.0
>  SpiceClientGtk_3_0_gir_SCANNERFLAGS = --c-include="spice-widget.h"
>  endif
>  INTROSPECTION_GIRS += SpiceClientGtk-$(SPICE_GTK_API_VERSION).gir
> +endif
>
>  girdir = $(datadir)/gir-1.0
>  gir_DATA = $(INTROSPECTION_GIRS)
> diff --git a/vapi/Makefile.am b/vapi/Makefile.am
> index ad43d69..5325aaa 100644
> --- a/vapi/Makefile.am
> +++ b/vapi/Makefile.am
> @@ -4,13 +4,16 @@ CLEANFILES =
>  vapidir = $(datadir)/vala/vapi
>  vapi_DATA =                                            \
>         spice-client-glib-2.0.vapi                      \
> -       spice-client-gtk-$(SPICE_GTK_API_VERSION).vapi  \
>         $(NULL)
>  dist_vapi_DATA =                                       \
> -       spice-client-gtk-$(SPICE_GTK_API_VERSION).deps  \
>         spice-client-glib-2.0.deps                      \
>         $(NULL)
>
> +if WITH_GTK
> +vapi_DATA += spice-client-gtk-$(SPICE_GTK_API_VERSION).vapi
> +dist_vapi_DATA += spice-client-gtk-$(SPICE_GTK_API_VERSION).deps
> +endif
> +
>  EXTRA_DIST =                                           \
>         spice-client-gtk-2.0.deps                       \
>         spice-client-gtk-3.0.deps                       \
> --
> 1.9.3
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel



-- 
Marc-André Lureau


More information about the Spice-devel mailing list