[cairo] update to 1.17.4 (#17620)

* [cairo] update to 1.17.4

* fix format

* version stuff

* remove patches and cairo-trace

* version stuff

* version stuff
This commit is contained in:
Alexander Neumann 2021-05-06 22:51:00 +02:00 committed by GitHub
parent 04527c7cd4
commit bd535075dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 45 additions and 320 deletions

View File

@ -1,13 +0,0 @@
diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c
index 3b308757..36700ff0 100644
--- a/src/cairo-ft-font.c
+++ b/src/cairo-ft-font.c
@@ -67,7 +67,7 @@
#include FT_LCD_FILTER_H
#endif
-#if HAVE_UNISTD_H
+#if defined(HAVE_UNISTD_H)
#include <unistd.h>
#else
#define access(p, m) 0

View File

@ -1,109 +0,0 @@
diff --git a/build/Makefile.win32.common b/build/Makefile.win32.common
index 7d7e9735f..f39ea1991 100644
--- a/build/Makefile.win32.common
+++ b/build/Makefile.win32.common
@@ -44,13 +44,13 @@ else
ifeq ($(ZLIB_PATH),)
ZLIB_PATH := $(top_builddir)/../zlib
endif
-ZLIB_CFLAGS += -I$(ZLIB_PATH)/
-CAIRO_LIBS += $(ZLIB_PATH)/zdll.lib
+# ZLIB_CFLAGS += -I$(ZLIB_PATH)/
+# CAIRO_LIBS += $(ZLIB_PATH)/zdll.lib
endif
DEFAULT_CFLAGS = -nologo $(CFG_CFLAGS)
DEFAULT_CFLAGS += -I. -I$(top_srcdir) -I$(top_srcdir)/src
-DEFAULT_CFLAGS += $(PIXMAN_CFLAGS) $(LIBPNG_CFLAGS) $(ZLIB_CFLAGS)
+DEFAULT_CFLAGS += $(PIXMAN_CFLAGS) $(LIBPNG_CFLAGS)
CAIRO_CFLAGS = $(DEFAULT_CFLAGS) $(CFLAGS)
diff --git a/configure.ac b/configure.ac
index 5e33c96ea..c9e9cfaa9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -43,7 +43,7 @@ AC_CACHE_SAVE
dnl ===========================================================================
-AC_CHECK_LIB(z, compress,
+AC_SEARCH_LIBS(compress, z zlib zlibd,
[AC_CHECK_HEADER(zlib.h, [
have_libz=yes
AC_DEFINE(HAVE_ZLIB, 1, [Define to 1 if you have zlib available])
@@ -481,7 +481,7 @@ CAIRO_ENABLE_SURFACE_BACKEND(script, script, yes, [
any2ppm_cs=yes
# The script backend requires zlib.
use_script=$have_libz
- script_NONPKGCONFIG_LIBS=-lz
+ script_NONPKGCONFIG_LIBS=$ac_cv_search_compress
])
dnl ===========================================================================
@@ -582,7 +582,7 @@ dnl ===========================================================================
CAIRO_ENABLE_SURFACE_BACKEND(ps, PostScript, yes, [
# The ps backend requires zlib.
use_ps=$have_libz
- ps_NONPKGCONFIG_LIBS=-lz
+ ps_NONPKGCONFIG_LIBS=$ac_cv_search_compress
])
dnl ===========================================================================
@@ -619,7 +619,7 @@ dnl ===========================================================================
CAIRO_ENABLE_SURFACE_BACKEND(pdf, PDF, yes, [
# The pdf backend requires zlib.
use_pdf=$have_libz
- pdf_NONPKGCONFIG_LIBS=-lz
+ pdf_NONPKGCONFIG_LIBS=$ac_cv_search_compress
])
dnl ===========================================================================
@@ -706,7 +706,7 @@ CAIRO_ENABLE_SURFACE_BACKEND(observer, observer, always)
CAIRO_ENABLE_SURFACE_BACKEND(tee, tee, no)
CAIRO_ENABLE_SURFACE_BACKEND(xml, xml, no, [
use_xml=$have_libz
- xml_NONPKGCONFIG_LIBS=-lz
+ xml_NONPKGCONFIG_LIBS=$ac_cv_search_compress
])
dnl ===========================================================================
diff --git a/src/Makefile.am b/src/Makefile.am
index acf0a8281..fe339a3cf 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -68,7 +68,7 @@ cairo.def: cairo-features.h $(enabled_cairo_headers)
@(echo EXPORTS; \
(cd $(srcdir); cat $(enabled_cairo_headers) || echo 'cairo_ERROR ()' ) | \
$(EGREP) -v '^# *include' | \
- ( cat cairo-features.h - | $(CPP) -D__cplusplus - || echo 'cairo_ERROR ()' ) | \
+ ( cat cairo-features.h - | $(CPP) $(CPP_FLAGS) -D__cplusplus - || echo 'cairo_ERROR ()' ) | \
$(EGREP) '^cairo_.* \(' | \
sed -e 's/[ ].*//' | \
sort; \
diff --git a/util/cairo-script/Makefile.am b/util/cairo-script/Makefile.am
index d5c2998ac..e6e23b2ed 100644
--- a/util/cairo-script/Makefile.am
+++ b/util/cairo-script/Makefile.am
@@ -15,7 +15,7 @@ libcairo_script_interpreter_la_SOURCES = \
$(NULL)
libcairo_script_interpreter_la_CFLAGS = $(CAIRO_CFLAGS)
libcairo_script_interpreter_la_LDFLAGS = -version-info $(CAIRO_LIBTOOL_VERSION_INFO) -no-undefined $(export_symbols)
-libcairo_script_interpreter_la_LIBADD = $(top_builddir)/src/libcairo.la $(CAIRO_LIBS) $(lzo_LIBS) -lz
+libcairo_script_interpreter_la_LIBADD = $(top_builddir)/src/libcairo.la $(CAIRO_LIBS) $(lzo_LIBS)
csi_replay_SOURCES = csi-replay.c
csi_replay_CFLAGS = $(CAIRO_CFLAGS)
diff --git a/util/cairo-trace/Makefile.am b/util/cairo-trace/Makefile.am
index a0091f882..64d86184f 100644
--- a/util/cairo-trace/Makefile.am
+++ b/util/cairo-trace/Makefile.am
@@ -13,7 +13,7 @@ libcairo_trace_la_CPPFLAGS = -DCAIRO_TRACE_OUTDIR="\"$(cairooutdir)\"" \
libcairo_trace_la_CFLAGS = $(CAIRO_CFLAGS) $(real_pthread_CFLAGS)
libcairo_trace_la_LDFLAGS = -module -no-undefined -avoid-version
-libcairo_trace_la_LIBADD = $(real_pthread_LIBS) -lz
+libcairo_trace_la_LIBADD = $(real_pthread_LIBS)
if CAIRO_HAS_DL
libcairo_trace_la_LIBADD += -ldl
endif

View File

@ -1,15 +0,0 @@
diff --git a/src/cairoint.h b/src/cairoint.h
index 4fedf86..dfa149e 100644
--- a/src/cairoint.h
+++ b/src/cairoint.h
@@ -50,7 +50,9 @@
#include "config.h"
#endif
-#ifdef _MSC_VER
+#if defined _MSC_VER && defined cairo_EXPORTS
#define cairo_public __declspec(dllexport)
+#else
+#define cairo_public
#endif

View File

@ -1,38 +1,24 @@
set(CAIRO_VERSION 1.16.0)
set(CAIRO_VERSION 1.17.4)
vcpkg_download_distfile(ARCHIVE
URLS "https://www.cairographics.org/releases/cairo-${CAIRO_VERSION}.tar.xz"
FILENAME "cairo-${CAIRO_VERSION}.tar.xz"
SHA512 9eb27c4cf01c0b8b56f2e15e651f6d4e52c99d0005875546405b64f1132aed12fbf84727273f493d84056a13105e065009d89e94a8bfaf2be2649e232b82377f
)
if(NOT VCPKG_TARGET_IS_MINGW AND VCPKG_TARGET_IS_WINDOWS)
set(PATCHES win_dll_def.patch)
endif()
vcpkg_extract_source_archive_ex(
vcpkg_from_gitlab(
GITLAB_URL https://gitlab.freedesktop.org
OUT_SOURCE_PATH SOURCE_PATH
ARCHIVE ${ARCHIVE}
REF ${CAIRO_VERSION}
PATCHES
export-only-in-shared-build.patch
0001_fix_osx_defined.patch
build2.patch
remove_test_perf.patch
${PATCHES}
REPO cairo/cairo
REF 156cd3eaaebfd8635517c2baf61fcf3627ff7ec2 #v1.17.4
SHA512 2c516ad3ffe56cf646b2435d6ef3cf25e8c05aeb13d95dd18a7d0510d134d9990cba1b376063352ff99483cfc4e5d2af849afd2f9538f9136f22d44d34be362c
HEAD_REF master
)
#TODO the autoconf script has a lot of additional option which use auto detection and should be disabled!
if("fontconfig" IN_LIST FEATURES)
list(APPEND OPTIONS --enable-fc=yes)
list(APPEND OPTIONS -Dfontconfig=enabled)
else()
list(APPEND OPTIONS --enable-fc=no)
list(APPEND OPTIONS -Dfontconfig=disabled)
endif()
if("freetype" IN_LIST FEATURES)
list(APPEND OPTIONS --enable-ft=yes)
list(APPEND OPTIONS -Dfreetype=enabled)
else()
list(APPEND OPTIONS --enable-ft=no)
list(APPEND OPTIONS -Dfreetype=disabled)
endif()
if ("x11" IN_LIST FEATURES)
@ -40,34 +26,37 @@ if ("x11" IN_LIST FEATURES)
message(FATAL_ERROR "Feature x11 only support UNIX.")
endif()
message(WARNING "You will need to install Xorg dependencies to use feature x11:\napt install libx11-dev libxft-dev\n")
list(APPEND OPTIONS --with-x --enable-xlib=yes)
list(APPEND OPTIONS -Dxlib=enabled)
else()
list(APPEND OPTIONS --enable-xlib=no)
list(APPEND OPTIONS -Dxlib=disabled)
endif()
list(APPEND OPTIONS -Dxcb=disabled)
list(APPEND OPTIONS -Dxlib-xcb=disabled)
if("gobject" IN_LIST FEATURES)
if(VCPKG_TARGET_IS_WINDOWS AND VCPKG_LIBRARY_LINKAGE STREQUAL "static")
message(FATAL_ERROR "Feature gobject currently only supports dynamic build.")
endif()
list(APPEND OPTIONS --enable-gobject=yes)
list(APPEND OPTIONS -Dglib=enabled)
else()
list(APPEND OPTIONS --enable-gobject=no)
list(APPEND OPTIONS -Dglib=disabled)
endif()
if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW)
set(ENV{CPP} "cl_cpp_wrapper")
endif()
vcpkg_configure_make(
vcpkg_configure_meson(
SOURCE_PATH ${SOURCE_PATH}
AUTOCONFIG
OPTIONS ${OPTIONS}
ax_cv_c_float_words_bigendian=no
ac_cv_lib_z_compress=yes
ac_cv_lib_lzo2_lzo2a_decompress=yes
lt_cv_deplibs_check_method=pass_all
-Dtests=disabled
-Dzlib=enabled
-Dpng=enabled
-Dspectre=auto
-Dsymbol-lookup=disabled
-Dgtk2-utils=disabled
)
vcpkg_install_make()
vcpkg_install_meson()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
@ -80,28 +69,19 @@ else()
endif()
file(WRITE ${_file} "${CAIRO_H}")
# Handle copyright
file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
vcpkg_copy_pdbs()
vcpkg_fixup_pkgconfig()
if(VCPKG_TARGET_IS_WINDOWS)
set(ZLINK "-lzlibd")
else()
set(ZLINK "-lz")
endif()
set(_file "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/cairo-script.pc")
if(EXISTS "${_file}")
vcpkg_replace_string("${_file}" "Libs: ${ZLINK}" "Requires.private: lzo2 zlib\nLibs: -L\${libdir} -lcairo-script-interpreter")
file(INSTALL "${_file}" DESTINATION "${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/" RENAME cairo-script-interpreter.pc) #normally the *.pc file is named like the library
endif()
if(VCPKG_TARGET_IS_WINDOWS)
set(ZLINK "-lzlib")
endif()
set(_file "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/cairo-script.pc")
if(EXISTS "${_file}")
vcpkg_replace_string("${_file}" "Libs: ${ZLINK}" "Requires.private: lzo2 zlib\nLibs: -L\${libdir} -lcairo-script-interpreter")
file(INSTALL "${_file}" DESTINATION "${CURRENT_PACKAGES_DIR}/lib/pkgconfig/" RENAME cairo-script-interpreter.pc) #normally the *.pc file is named like the library
endif()
vcpkg_fixup_pkgconfig()
#TODO: Fix script
#set(TOOLS)
#if(EXISTS "${CURRENT_PACKAGES_DIR}/bin/cairo-trace${VCPKG_TARGET_EXECUTABLE_SUFFIX}")
# list(APPEND TOOLS cairo-trace) # sh script which needs to be fixed due to absolute paths in it.
#endif()
#vcpkg_copy_tools(TOOL_NAMES ${TOOLS} AUTO_CLEAN)
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
endif()

View File

@ -1,122 +0,0 @@
diff --git a/Makefile.am b/Makefile.am
index 03fa35236..94a7a263a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -16,11 +16,11 @@ EXTRA_DIST += \
ACLOCAL_AMFLAGS = -I build ${ACLOCAL_FLAGS}
-DIST_SUBDIRS = src doc util boilerplate test perf
-SUBDIRS = src doc util
+DIST_SUBDIRS = src util boilerplate
+SUBDIRS = src util
# libpng is required for our test programs
if CAIRO_HAS_PNG_FUNCTIONS
-SUBDIRS += boilerplate test perf
+SUBDIRS += boilerplate
endif
configure: cairo-version.h
@@ -28,12 +28,11 @@ configure: cairo-version.h
doc:
cd doc && $(MAKE) $(AM_MAKEFLAGS) $@
test retest recheck: all
- cd test && $(MAKE) $(AM_MAKEFLAGS) $@
+ echo "do nothing"
perf: all
cd perf && $(MAKE) $(AM_MAKEFLAGS) $@
check-valgrind: all
- cd test && $(MAKE) $(AM_MAKEFLAGS) check-valgrind
- cd perf && $(MAKE) $(AM_MAKEFLAGS) check-valgrind
+ echo "do nothing"
.PHONY: doc test retest recheck perf check-valgrind
diff --git a/boilerplate/Makefile.am b/boilerplate/Makefile.am
index 29ad015ac..9234014ed 100644
--- a/boilerplate/Makefile.am
+++ b/boilerplate/Makefile.am
@@ -69,7 +69,7 @@ test: check
if CROSS_COMPILING
else
-TESTS += check-link$(EXEEXT)
+#TESTS += check-link$(EXEEXT)
endif
check_PROGRAMS += check-link
diff --git a/perf/cairo-analyse-trace.c b/perf/cairo-analyse-trace.c
index 994148660..5d2dceaec 100644
--- a/perf/cairo-analyse-trace.c
+++ b/perf/cairo-analyse-trace.c
@@ -53,7 +53,7 @@
#include <sys/stat.h>
#ifdef _MSC_VER
-#include "dirent-win32.h"
+#include "dirent.h"
static char *
basename_no_ext (char *path)
diff --git a/perf/cairo-perf-trace.c b/perf/cairo-perf-trace.c
index 02e0e29f9..36daf3fd6 100644
--- a/perf/cairo-perf-trace.c
+++ b/perf/cairo-perf-trace.c
@@ -54,7 +54,7 @@
#include <sys/stat.h>
#ifdef _MSC_VER
-#include "dirent-win32.h"
+#include "dirent.h"
static char *
basename_no_ext (char *path)
diff --git a/src/Makefile.am b/src/Makefile.am
index fe339a3cf..df6de0136 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -100,8 +100,8 @@ else
TESTS += check-link$(EXEEXT)
endif
-EXTRA_DIST += $(TESTS_SH) check-has-hidden-symbols.c check-doc-syntax.awk
-check_PROGRAMS += check-link
+# EXTRA_DIST += $(TESTS_SH) check-has-hidden-symbols.c check-doc-syntax.awk
+# check_PROGRAMS += check-link
check_link_LDADD = libcairo.la
check: headers-standalone
diff --git a/src/cairo-compiler-private.h b/src/cairo-compiler-private.h
index d982c101d..ad9b26ba0 100644
--- a/src/cairo-compiler-private.h
+++ b/src/cairo-compiler-private.h
@@ -201,10 +201,10 @@
#define hypot _hypot
#define pclose _pclose
#define popen _popen
-#define snprintf _snprintf
+//#define snprintf _snprintf
#define strdup _strdup
#define unlink _unlink
-#define vsnprintf _vsnprintf
+//#define vsnprintf _vsnprintf
#endif
#ifdef _MSC_VER
diff --git a/test/Makefile.am b/test/Makefile.am
index e3c42ea88..099ca8b22 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -351,9 +351,9 @@ FAILED_TESTS = `grep -l '\<FAIL\>' $(test_sources:.c=.log) 2>/dev/null | tr '\n'
recheck = check CAIRO_TESTS="$(FAILED_TESTS)"
# Re-checks all failed tests, i.e. tests with a log file that has a failure
-recheck:
- @echo Re-checking failed tests
- @$(MAKE) $(AM_MAKEFLAGS) $(recheck)
+# recheck:
+# @echo Re-checking failed tests
+# @$(MAKE) $(AM_MAKEFLAGS) $(recheck)
# Checks tests.
# Target doesn't fail if tests fail.

View File

@ -1,7 +1,6 @@
{
"name": "cairo",
"version": "1.16.0",
"port-version": 12,
"version": "1.17.4",
"description": "Cairo is a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System (via both Xlib and XCB), Quartz, Win32, image buffers, PostScript, PDF, and SVG file output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.",
"homepage": "https://cairographics.org",
"dependencies": [

View File

@ -1081,8 +1081,8 @@
"port-version": 0
},
"cairo": {
"baseline": "1.16.0",
"port-version": 12
"baseline": "1.17.4",
"port-version": 0
},
"cairomm": {
"baseline": "1.16.0",

View File

@ -1,5 +1,10 @@
{
"versions": [
{
"git-tree": "c80532bb0f4abd6b3bba09e48ddab1724bdc0ec1",
"version": "1.17.4",
"port-version": 0
},
{
"git-tree": "ea721528bdf86a3a1fd35b78550e3c9463a8e715",
"version": "1.16.0",