Disable skia from configure

Implement suggestion by Adrian Johnson to comment out skia in
configure.ac to avoid presenting it as an option to users.  This was
discussed on the Cairo mailing list in September 2017.

Skia is not API stable and is not available in packaged+versioned forms,
resulting in it being a continually moving target.  I.e. it's pretty
much always unusably out of date.  The last update to the skia backend
was in 2014, and had not been updated very regularly prior to that.

We'll simply disable it for now.  If no one complains by the next Cairo
snapshot release, we'll assume no one is needing it and will drop the
code entirely.

Meanwhile, if anyone does need it, it can be uncommented and used.

(The changes to the win32 build config appear to be automatically
generated as a result of disabling the feature in configure.  I'm
committing them to avoid confusion.)
This commit is contained in:
Bryce Harrington 2018-04-02 20:04:16 -07:00
parent dcafd9e684
commit 38806bc3c0
6 changed files with 24 additions and 52 deletions

View file

@ -151,18 +151,6 @@ enabled_cairo_boilerplate_cxx_sources += $(cairo_boilerplate_win32_font_cxx_sour
enabled_cairo_boilerplate_sources += $(cairo_boilerplate_win32_font_sources)
endif
unsupported_cairo_boilerplate_headers += $(cairo_boilerplate_skia_headers)
all_cairo_boilerplate_headers += $(cairo_boilerplate_skia_headers)
all_cairo_boilerplate_private += $(cairo_boilerplate_skia_private)
all_cairo_boilerplate_cxx_sources += $(cairo_boilerplate_skia_cxx_sources)
all_cairo_boilerplate_sources += $(cairo_boilerplate_skia_sources)
ifeq ($(CAIRO_HAS_SKIA_SURFACE),1)
enabled_cairo_boilerplate_headers += $(cairo_boilerplate_skia_headers)
enabled_cairo_boilerplate_private += $(cairo_boilerplate_skia_private)
enabled_cairo_boilerplate_cxx_sources += $(cairo_boilerplate_skia_cxx_sources)
enabled_cairo_boilerplate_sources += $(cairo_boilerplate_skia_sources)
endif
unsupported_cairo_boilerplate_headers += $(cairo_boilerplate_os2_headers)
all_cairo_boilerplate_headers += $(cairo_boilerplate_os2_headers)
all_cairo_boilerplate_private += $(cairo_boilerplate_os2_private)

View file

@ -11,7 +11,6 @@ CAIRO_HAS_QUARTZ_FONT=0
CAIRO_HAS_QUARTZ_IMAGE_SURFACE=0
CAIRO_HAS_WIN32_SURFACE=1
CAIRO_HAS_WIN32_FONT=1
CAIRO_HAS_SKIA_SURFACE=0
CAIRO_HAS_OS2_SURFACE=0
CAIRO_HAS_BEOS_SURFACE=0
CAIRO_HAS_DRM_SURFACE=0

View file

@ -38,9 +38,6 @@ endif
ifeq ($(CAIRO_HAS_WIN32_FONT),1)
@echo "#define CAIRO_HAS_WIN32_FONT 1" >> $(top_srcdir)/src/cairo-features.h
endif
ifeq ($(CAIRO_HAS_SKIA_SURFACE),1)
@echo "#define CAIRO_HAS_SKIA_SURFACE 1" >> $(top_srcdir)/src/cairo-features.h
endif
ifeq ($(CAIRO_HAS_OS2_SURFACE),1)
@echo "#define CAIRO_HAS_OS2_SURFACE 1" >> $(top_srcdir)/src/cairo-features.h
endif

View file

@ -369,7 +369,7 @@ AC_DEFUN([CAIRO_REPORT],
echo " Mime: yes (always builtin)"
echo " Tee: $use_tee"
echo " XML: $use_xml"
echo " Skia: $use_skia"
#echo " Skia: $use_skia"
echo " Xlib: $use_xlib"
echo " Xlib Xrender: $use_xlib_xrender"
echo " Qt: $use_qt"

View file

@ -249,24 +249,28 @@ AM_CONDITIONAL(CAIRO_CAN_TEST_WIN32_PRINTING_SURFACE, test "x$test_win32_printin
dnl ===========================================================================
CAIRO_ENABLE_SURFACE_BACKEND(skia, Skia, no, [
AC_ARG_WITH([skia],
[AS_HELP_STRING([--with-skia=/path/to/skia],
[directory to find compiled skia sources])],
[skia_DIR="$withval"],
[skia_DIR="`pwd`/../skia"])
AC_ARG_WITH([skia-build-type],
[AS_HELP_STRING([--with-skia-build-type=(Release|Debug)]
[build of skia to link with, default is Release])],
[skia_BUILD_TYPE="$withval"],
[skia_BUILD_TYPE="Release"])
skia_NONPKGCONFIG_CFLAGS="-I$skia_DIR/include/config -I$skia_DIR/include/core -I$skia_DIR/include/effects"
if test "x$skia_BUILD_TYPE" = "xRelease"; then
skia_NONPKGCONFIG_CFLAGS="-DSK_RELEASE -DSK_CAN_USE_FLOAT $skia_NONPKGCONFIG_CFLAGS"
fi
skia_NONPKGCONFIG_LIBS="-L$skia_DIR/out/$skia_BUILD_TYPE/lib.target/ -lskia -lstdc++"
AC_SUBST(skia_DIR)
])
dnl NOTE: We're temporarily disabiling this backend to see if anyone
dnl is actually using it. If you are, please mention on the cairo
dnl mailing list.
dnl CAIRO_ENABLE_SURFACE_BACKEND(skia, Skia, no, [
dnl AC_ARG_WITH([skia],
dnl [AS_HELP_STRING([--with-skia=/path/to/skia],
dnl [directory to find compiled skia sources])],
dnl [skia_DIR="$withval"],
dnl [skia_DIR="`pwd`/../skia"])
dnl AC_ARG_WITH([skia-build-type],
dnl [AS_HELP_STRING([--with-skia-build-type=(Release|Debug)]
dnl [build of skia to link with, default is Release])],
dnl [skia_BUILD_TYPE="$withval"],
dnl [skia_BUILD_TYPE="Release"])
dnl skia_NONPKGCONFIG_CFLAGS="-I$skia_DIR/include/config -I$skia_DIR/include/core -I$skia_DIR/include/effects"
dnl if test "x$skia_BUILD_TYPE" = "xRelease"; then
dnl skia_NONPKGCONFIG_CFLAGS="-DSK_RELEASE -DSK_CAN_USE_FLOAT $skia_NONPKGCONFIG_CFLAGS"
dnl fi
dnl skia_NONPKGCONFIG_LIBS="-L$skia_DIR/out/$skia_BUILD_TYPE/lib.target/ -lskia -lstdc++"
dnl AC_SUBST(skia_DIR)
dnl ])
dnl ===========================================================================
@ -869,7 +873,7 @@ dnl ===========================================================================
dnl Extra stuff we need to do when building C++ code
need_cxx="no"
AS_IF([test "x$use_skia" = "xyes"], [need_cxx="yes"])
dnl AS_IF([test "x$use_skia" = "xyes"], [need_cxx="yes"])
AS_IF([test "x$use_qt" = "xyes"], [need_cxx="yes"])
AS_IF([test "x$use_beos" = "xyes"], [need_cxx="yes"])

View file

@ -197,22 +197,6 @@ ifeq ($(CAIRO_HAS_WIN32_FONT),1)
enabled_cairo_pkgconf += cairo-win32-font.pc
endif
unsupported_cairo_headers += $(cairo_skia_headers)
all_cairo_headers += $(cairo_skia_headers)
all_cairo_private += $(cairo_skia_private)
all_cairo_cxx_sources += $(cairo_skia_cxx_sources)
all_cairo_sources += $(cairo_skia_sources)
ifeq ($(CAIRO_HAS_SKIA_SURFACE),1)
enabled_cairo_headers += $(cairo_skia_headers)
enabled_cairo_private += $(cairo_skia_private)
enabled_cairo_cxx_sources += $(cairo_skia_cxx_sources)
enabled_cairo_sources += $(cairo_skia_sources)
endif
all_cairo_pkgconf += cairo-skia.pc
ifeq ($(CAIRO_HAS_SKIA_SURFACE),1)
enabled_cairo_pkgconf += cairo-skia.pc
endif
unsupported_cairo_headers += $(cairo_os2_headers)
all_cairo_headers += $(cairo_os2_headers)
all_cairo_private += $(cairo_os2_private)