external/cairo/Library_cairo.mk | 171 ++++++++++ external/cairo/Module_cairo.mk | 20 + external/cairo/Package_cairo.mk | 12 external/cairo/Package_pixman.mk | 12 external/cairo/StaticLibrary_pixman.mk | 66 ++++ external/cairo/UnpackedTarball_cairo.mk | 5 external/cairo/UnpackedTarball_pixman.mk | 4 external/cairo/configs/wnt_cairo_config.h | 453 ++++++++++++++++++++++++++++ external/cairo/configs/wnt_cairo_features.h | 38 ++ external/cairo/configs/wnt_pixman_config.h | 195 ++++++++++++ solenv/clang-format/excludelist | 3 11 files changed, 977 insertions(+), 2 deletions(-)
New commits: commit e91eab82583eb2eb5fe59801251074e3079d619b Author: Tor Lillqvist <[email protected]> AuthorDate: Tue Feb 25 19:52:15 2025 +0200 Commit: Caolán McNamara <[email protected]> CommitDate: Tue Dec 2 09:30:52 2025 +0100 Add possibility to build cairo for Windows As a Library, i.e. DLL. Using our build mechanism, not its own. This commit does not yet actually add any configury to get it built, BUILD_TYPE will never contain CAIRO on Windows. Running "make cairo" won't work. Change-Id: Ia0fb98471bea92ffb60a0d2a941a378c1fbc6b29 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194572 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Jenkins CollaboraOffice <[email protected]> diff --git a/external/cairo/Library_cairo.mk b/external/cairo/Library_cairo.mk new file mode 100644 index 000000000000..2aea585a44a3 --- /dev/null +++ b/external/cairo/Library_cairo.mk @@ -0,0 +1,171 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Library_Library,cairo)) + +$(eval $(call gb_Library_set_include,cairo,\ + -I$(call gb_UnpackedTarball_get_dir,cairo) \ + -I$(call gb_UnpackedTarball_get_dir,cairo)/src \ + -I$(call gb_UnpackedTarball_get_dir,pixman)/pixman \ + -I$(call gb_UnpackedTarball_get_dir,freetype)/include \ + -I$(call gb_UnpackedTarball_get_dir,fontconfig) \ + $$(INCLUDE) \ +)) + +$(eval $(call gb_Library_add_defs,cairo,\ + -wd4057 \ + -wd4100 \ + -wd4146 \ + -wd4267 \ + -wd4702 \ +)) + +$(eval $(call gb_Library_use_static_libraries,cairo, \ + expat \ + fontconfig \ + freetype \ + pixman \ +)) + +$(eval $(call gb_Library_use_externals,cairo,\ + zlib \ +)) + +$(eval $(call gb_Library_use_system_win32_libs,cairo,\ + ole32 \ + shell32 \ +)) + +$(eval $(call gb_Library_add_generated_cobjects,cairo,\ + $(addprefix UnpackedTarball/cairo/src/, \ + cairo-analysis-surface \ + cairo-arc \ + cairo-array \ + cairo-atomic \ + cairo-base64-stream \ + cairo-base85-stream \ + cairo-bentley-ottmann-rectangular \ + cairo-bentley-ottmann-rectilinear \ + cairo-bentley-ottmann \ + cairo-botor-scan-converter \ + cairo-boxes-intersect \ + cairo-boxes \ + cairo-cache \ + cairo-clip-boxes \ + cairo-clip-polygon \ + cairo-clip-region \ + cairo-clip-surface \ + cairo-clip-tor-scan-converter \ + cairo-clip \ + cairo-color \ + cairo-composite-rectangles \ + cairo-compositor \ + cairo-contour \ + cairo-damage \ + cairo-debug \ + cairo-default-context \ + cairo-device \ + cairo-error \ + cairo-fallback-compositor \ + cairo-fixed \ + cairo-font-face-twin-data \ + cairo-font-face-twin \ + cairo-font-face \ + cairo-font-options \ + cairo-freed-pool \ + cairo-freelist \ + cairo-gstate \ + cairo-hash \ + cairo-hull \ + cairo-image-compositor \ + cairo-image-info \ + cairo-image-source \ + cairo-image-surface \ + cairo-line \ + cairo-lzw \ + cairo-mask-compositor \ + cairo-matrix \ + cairo-mempool \ + cairo-mesh-pattern-rasterizer \ + cairo-misc \ + cairo-mono-scan-converter \ + cairo-mutex \ + cairo-no-compositor \ + cairo-observer \ + cairo-output-stream \ + cairo-paginated-surface \ + cairo-path-bounds \ + cairo-path-fill \ + cairo-path-fixed \ + cairo-path-in-fill \ + cairo-path-stroke-boxes \ + cairo-path-stroke-polygon \ + cairo-path-stroke-traps \ + cairo-path-stroke-tristrip \ + cairo-path-stroke \ + cairo-path \ + cairo-pattern \ + cairo-pen \ + cairo-polygon-intersect \ + cairo-polygon-reduce \ + cairo-polygon \ + cairo-raster-source-pattern \ + cairo-recording-surface \ + cairo-rectangle \ + cairo-rectangular-scan-converter \ + cairo-region \ + cairo-rtree \ + cairo-scaled-font \ + cairo-shape-mask-compositor \ + cairo-slope \ + cairo-spans-compositor \ + cairo-spans \ + cairo-spline \ + cairo-stroke-dash \ + cairo-stroke-style \ + cairo-surface-clipper \ + cairo-surface-fallback \ + cairo-surface-observer \ + cairo-surface-offset \ + cairo-surface-snapshot \ + cairo-surface-subsurface \ + cairo-surface-wrapper \ + cairo-surface \ + cairo-time \ + cairo-tor-scan-converter \ + cairo-tor22-scan-converter \ + cairo-toy-font-face \ + cairo-traps-compositor \ + cairo-traps \ + cairo-tristrip \ + cairo-unicode \ + cairo-user-font \ + cairo-version \ + cairo-wideint \ + cairo \ + cairo-cff-subset \ + cairo-scaled-font-subsets \ + cairo-truetype-subset \ + cairo-type1-fallback \ + cairo-type1-glyph-names \ + cairo-type1-subset \ + cairo-type3-glyph-surface \ + cairo-script-surface \ + cairo-pdf-surface \ + cairo-pdf-interchange \ + cairo-pdf-operators \ + cairo-pdf-shading \ + cairo-tag-attributes \ + cairo-tag-stack \ + cairo-deflate-stream \ + cairo-ft-font \ + ) \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/cairo/Module_cairo.mk b/external/cairo/Module_cairo.mk index 6d8a29add558..0ca3c6d855d4 100644 --- a/external/cairo/Module_cairo.mk +++ b/external/cairo/Module_cairo.mk @@ -9,13 +9,29 @@ $(eval $(call gb_Module_Module,cairo)) +$(eval $(call gb_Module_add_targets,cairo,\ + UnpackedTarball_cairo \ + UnpackedTarball_pixman \ +)) + +ifeq ($(COM),MSC) + +$(eval $(call gb_Module_add_targets,cairo,\ + StaticLibrary_pixman \ + Library_cairo \ + Package_cairo \ + Package_pixman \ +)) + +else + $(eval $(call gb_Module_add_targets,cairo,\ ExternalPackage_cairo \ ExternalPackage_pixman \ ExternalProject_cairo \ ExternalProject_pixman \ - UnpackedTarball_cairo \ - UnpackedTarball_pixman \ )) +endif + # vim: set noet sw=4 ts=4: diff --git a/external/cairo/Package_cairo.mk b/external/cairo/Package_cairo.mk new file mode 100644 index 000000000000..0a68c50363e5 --- /dev/null +++ b/external/cairo/Package_cairo.mk @@ -0,0 +1,12 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Package_Package,cairo,$(SRCDIR)/external/cairo)) + +# vim:set noet sw=4 ts=4: diff --git a/external/cairo/Package_pixman.mk b/external/cairo/Package_pixman.mk new file mode 100644 index 000000000000..87acbc4c40cc --- /dev/null +++ b/external/cairo/Package_pixman.mk @@ -0,0 +1,12 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_Package_Package,pixman,$(SRCDIR)/external/cairo)) + +# vim:set noet sw=4 ts=4: diff --git a/external/cairo/StaticLibrary_pixman.mk b/external/cairo/StaticLibrary_pixman.mk new file mode 100644 index 000000000000..b4c83ca70ef8 --- /dev/null +++ b/external/cairo/StaticLibrary_pixman.mk @@ -0,0 +1,66 @@ +# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- +# +# This file is part of the LibreOffice project. +# +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. +# + +$(eval $(call gb_StaticLibrary_StaticLibrary,pixman)) + +$(eval $(call gb_StaticLibrary_set_include,pixman,\ + -I$(call gb_UnpackedTarball_get_dir,pixman) \ + -I$(call gb_UnpackedTarball_get_dir,pixman)/pixman \ + $$(INCLUDE) \ +)) + +$(eval $(call gb_StaticLibrary_add_defs,pixman,\ + -DHAVE_CONFIG_H \ + -wd4100 \ + -wd4127 \ + -wd4189 \ +)) + +$(eval $(call gb_StaticLibrary_add_generated_cobjects,pixman,\ + $(addprefix UnpackedTarball/pixman/pixman/, \ + pixman-access \ + pixman-access-accessors \ + pixman-arm-neon \ + pixman-arm-simd \ + pixman-arm \ + pixman-bits-image \ + pixman-combine-float \ + pixman-combine32 \ + pixman-conical-gradient \ + pixman-edge \ + pixman-edge-accessors \ + pixman-fast-path \ + pixman-filter \ + pixman-general \ + pixman-glyph \ + pixman-gradient-walker \ + pixman-image \ + pixman-implementation \ + pixman-linear-gradient \ + pixman-matrix \ + pixman-mips-dspr2 \ + pixman-mips \ + pixman-mmx \ + pixman-noop \ + pixman-ppc \ + pixman-radial-gradient \ + pixman-region16 \ + pixman-region32 \ + pixman-solid-fill \ + pixman-sse2 \ + pixman-ssse3 \ + pixman-timer \ + pixman-trap \ + pixman-utils \ + pixman-x86 \ + pixman \ + ) \ +)) + +# vim: set noet sw=4 ts=4: diff --git a/external/cairo/UnpackedTarball_cairo.mk b/external/cairo/UnpackedTarball_cairo.mk index 76c1b8115c57..95b396c859a1 100644 --- a/external/cairo/UnpackedTarball_cairo.mk +++ b/external/cairo/UnpackedTarball_cairo.mk @@ -11,6 +11,11 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,cairo)) $(eval $(call gb_UnpackedTarball_set_tarball,cairo,$(CAIRO_TARBALL),,cairo)) +ifeq ($(OS)-$(ENABLE_HEADLESS),WNT-TRUE) +$(eval $(call gb_UnpackedTarball_add_file,cairo,config.h,external/cairo/configs/wnt_cairo_config.h)) +$(eval $(call gb_UnpackedTarball_add_file,cairo,src/cairo-features.h,external/cairo/configs/wnt_cairo_features.h)) +endif + # cairo >= 1.17.6 was probably created in Fedora where # https://salsa.debian.org/mckinstry/libtool/-/commit/26c23f951d049241128e5e04a7bbc263e5b145f1 # isn't applied, so add that in to avoid: /usr/bin/ld: unrecognized option '--gdb-index' diff --git a/external/cairo/UnpackedTarball_pixman.mk b/external/cairo/UnpackedTarball_pixman.mk index 922ed9f24f22..d857ab4a5da7 100644 --- a/external/cairo/UnpackedTarball_pixman.mk +++ b/external/cairo/UnpackedTarball_pixman.mk @@ -11,6 +11,10 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,pixman)) $(eval $(call gb_UnpackedTarball_set_tarball,pixman,$(PIXMAN_TARBALL),,cairo)) +ifeq ($(OS)-$(ENABLE_HEADLESS),WNT-TRUE) +$(eval $(call gb_UnpackedTarball_add_file,pixman,config.h,external/cairo/configs/wnt_pixman_config.h)) +endif + $(eval $(call gb_UnpackedTarball_add_patches,pixman,\ external/cairo/pixman/pixman-0.24.4.patch \ external/cairo/pixman/pixman-ubsan.patch \ diff --git a/external/cairo/configs/wnt_cairo_config.h b/external/cairo/configs/wnt_cairo_config.h new file mode 100644 index 000000000000..3e4c51d1cd58 --- /dev/null +++ b/external/cairo/configs/wnt_cairo_config.h @@ -0,0 +1,453 @@ +/* config.h for Windows build of cairo, manually created from one for Linux: */ + +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* whether memory barriers are needed around atomic operations */ +/* #undef ATOMIC_OP_NEEDS_MEMORY_BARRIER */ + +/* Define to 1 if the PDF backend can be tested (need poppler and other + dependencies for pdf2png) */ +/* #undef CAIRO_CAN_TEST_PDF_SURFACE */ + +/* Define to 1 if the PS backend can be tested (needs ghostscript) */ +/* #undef CAIRO_CAN_TEST_PS_SURFACE */ + +/* Define to 1 if the SVG backend can be tested */ +/* #undef CAIRO_CAN_TEST_SVG_SURFACE */ + +/* Define to 1 if the Win32 Printing backend can be tested (needs ghostscript) + */ +/* #undef CAIRO_CAN_TEST_WIN32_PRINTING_SURFACE */ + +/* Define to 1 if dlsym is available */ +/* #undef CAIRO_HAS_DLSYM */ + +/* Define to 1 to enable cairo's cairo-script-interpreter feature */ +/* #undef CAIRO_HAS_INTERPRETER */ + +/* Define to 1 to enable cairo's pthread feature */ +/* #undef CAIRO_HAS_PTHREAD */ + +/* Define to 1 if we have full pthread support */ +/* #undef CAIRO_HAS_REAL_PTHREAD */ + +/* Define to 1 if libspectre is available */ +/* #undef CAIRO_HAS_SPECTRE */ + +/* Define to 1 to enable cairo's symbol-lookup feature */ +/* #undef CAIRO_HAS_SYMBOL_LOOKUP */ + +/* Define to 1 to enable cairo's test surfaces feature */ +/* #undef CAIRO_HAS_TEST_SURFACES */ + +/* Define to 1 to enable cairo's cairo-trace feature */ +/* #undef CAIRO_HAS_TRACE */ + +/* Define to 1 to disable certain code paths that rely heavily on double + precision floating-point calculation */ +/* #undef DISABLE_SOME_FLOATING_POINT */ + +/* Define to 1 if your system stores words within floats with the most + significant word first */ +/* #undef FLOAT_WORDS_BIGENDIAN */ + +/* Define to (0) if freetype2 does not support color fonts */ +/* #undef FT_HAS_COLOR */ + +/* Enable pixman glyph cache */ +#define HAS_PIXMAN_GLYPHS 1 + +/* Define to 1 if you have the `alarm' function. */ +/* #undef HAVE_ALARM */ + +/* Define to 1 if you have the binutils development files installed */ +/* #undef HAVE_BFD */ + +/* Define to 1 if your compiler supports the __builtin_return_address() + intrinsic. */ +/* #undef HAVE_BUILTIN_RETURN_ADDRESS */ + +/* Define to 1 if you have the <byteswap.h> header file. */ +/* #undef HAVE_BYTESWAP_H */ + +/* Define to 1 if you have the `clock_gettime' function. */ +/* #undef HAVE_CLOCK_GETTIME */ + +/* Define to 1 if you have the `ctime_r' function. */ +/* #undef HAVE_CTIME_R */ + +/* Enable if your compiler supports the GCC __atomic_* atomic primitives */ +/* #undef HAVE_CXX11_ATOMIC_PRIMITIVES */ + +/* Define to 1 if you have the <dlfcn.h> header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Define to 1 if you have the `drand48' function. */ +/* #undef HAVE_DRAND48 */ + +/* Define to 1 if you have the `FcFini' function. */ +#define HAVE_FCFINI 1 + +/* Define to 1 if you have the `FcInit' function. */ +#define HAVE_FCINIT 1 + +/* Define to 1 if you have the <fcntl.h> header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `feclearexcept' function. */ +#define HAVE_FECLEAREXCEPT 1 + +/* Define to 1 if you have the `fedisableexcept' function. */ +#define HAVE_FEDISABLEEXCEPT 1 + +/* Define to 1 if you have the `feenableexcept' function. */ +#define HAVE_FEENABLEEXCEPT 1 + +/* Define to 1 if you have the <fenv.h> header file. */ +#define HAVE_FENV_H 1 + +/* Define to 1 if you have the `flockfile' function. */ +/* #undef HAVE_FLOCKFILE */ + +/* Define to 1 if you have the `fork' function. */ +/* #undef HAVE_FORK */ + +/* Define to 1 if you have the `FT_Done_MM_Var' function. */ +#define HAVE_FT_DONE_MM_VAR 1 + +/* Define to 1 if you have the `FT_Get_Var_Design_Coordinates' function. */ +#define HAVE_FT_GET_VAR_DESIGN_COORDINATES 1 + +/* Define to 1 if you have the `FT_Get_X11_Font_Format' function. */ +#define HAVE_FT_GET_X11_FONT_FORMAT 1 + +/* Define to 1 if you have the `FT_GlyphSlot_Embolden' function. */ +#define HAVE_FT_GLYPHSLOT_EMBOLDEN 1 + +/* Define to 1 if you have the `FT_GlyphSlot_Oblique' function. */ +#define HAVE_FT_GLYPHSLOT_OBLIQUE 1 + +/* Define to 1 if you have the `FT_Library_SetLcdFilter' function. */ +#define HAVE_FT_LIBRARY_SETLCDFILTER 1 + +/* Define to 1 if you have the `FT_Load_Sfnt_Table' function. */ +#define HAVE_FT_LOAD_SFNT_TABLE 1 + +/* Define to 1 if you have the `FT_Palette_Set_Foreground_Color' function. */ +#define HAVE_FT_PALETTE_SET_FOREGROUND_COLOR 1 + +/* Define to 1 if you have the `funlockfile' function. */ +/* #undef HAVE_FUNLOCKFILE */ + +/* Enable if your compiler supports the legacy GCC __sync_* atomic primitives + */ +/* #undef HAVE_GCC_LEGACY_ATOMICS */ + +/* Whether you have gcov */ +/* #undef HAVE_GCOV */ + +/* Define to 1 if you have the `getline' function. */ +#define HAVE_GETLINE 1 + +/* Define to 1 if you have the `gmtime_r' function. */ +/* #undef HAVE_GMTIME_R */ + +/* Define to 1 if you have the <inttypes.h> header file. */ +/* #undef HAVE_INTTYPES_H */ + +/* Define to 1 if you have the <io.h> header file. */ +/* #undef HAVE_IO_H */ + +/* Define to 1 if you have the <libgen.h> header file. */ +/* #undef HAVE_LIBGEN_H */ + +/* Define to 1 if you have the `rt' library (-lrt). */ +/* #undef HAVE_LIBRT */ + +/* Enable if you have libatomic-ops-dev installed */ +/* #undef HAVE_LIB_ATOMIC_OPS */ + +/* Define to 1 if you have the `link' function. */ +/* #undef HAVE_LINK */ + +/* Define to 1 if you have the `localtime_r' function. */ +/* #undef HAVE_LOCALTIME_R */ + +/* Define to 1 if you have the Valgrind lockdep tool */ +/* #undef HAVE_LOCKDEP */ + +/* Define to 1 if you have lzo available */ +/* #undef HAVE_LZO */ + +/* Define to 1 if you have the Valgrind memfault tool */ +/* #undef HAVE_MEMFAULT */ + +/* Define to 1 if you have the <memory.h> header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to non-zero if your system has mkdir, and to 2 if your version of + mkdir requires a mode parameter */ +#define HAVE_MKDIR 2 + +/* Define to 1 if you have the `mmap' function. */ +/* #undef HAVE_MMAP */ + +/* Define to 1 if you have the `newlocale' function. */ + /* #undef HAVE_NEWLOCALE */ + +/* Enable if you have MacOS X atomic operations */ +/* #undef HAVE_OS_ATOMIC_OPS */ + +/* Define to 1 if you have the <poll.h> header file. */ +/* #undef HAVE_POLL_H */ + +/* Define to 1 if you have the `poppler_page_render' function. */ +/* #undef HAVE_POPPLER_PAGE_RENDER */ + +/* Define to 1 if you have the `raise' function. */ +#define HAVE_RAISE 1 + +/* Define to 1 if you have the `rsvg_pixbuf_from_file' function. */ +/* #undef HAVE_RSVG_PIXBUF_FROM_FILE */ + +/* Define to 1 if you have the `sched_getaffinity' function. */ +/* #undef HAVE_SCHED_GETAFFINITY */ + +/* Define to 1 if you have the <sched.h> header file. */ +/* #undef HAVE_SCHED_H */ + +/* Define to 1 if you have the <setjmp.h> header file. */ +#define HAVE_SETJMP_H 1 + +/* Define to 1 if you have the <signal.h> header file. */ +#define HAVE_SIGNAL_H 1 + +/* Define to 1 if you have the <stdint.h> header file. */ +/* MSC does have <stdint.h> but cairo seems to compile better without it */ +/* #undef HAVE_STDINT_H */ + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the <strings.h> header file. */ +/* #undef HAVE_STRINGS_H */ + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the `strndup' function. */ +#define HAVE_STRNDUP 1 + +/* Define to 1 if you have the `strtod_l' function. */ +/* #undef HAVE_STRTOD_L */ + +/* Define to 1 if you have the <sys/int_types.h> header file. */ +/* #undef HAVE_SYS_INT_TYPES_H */ + +/* Define to 1 if you have the <sys/ioctl.h> header file. */ +/* #undef HAVE_SYS_IOCTL_H */ + +/* Define to 1 if you have the <sys/mman.h> header file. */ +/* #undef HAVE_SYS_MMAN_H */ + +/* Define to 1 if you have the <sys/poll.h> header file. */ +/* #undef HAVE_SYS_POLL_H */ + +/* Define to 1 if you have the <sys/socket.h> header file. */ +/* #undef HAVE_SYS_SOCKET_H */ + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +/* #undef HAVE_SYS_TYPES_H */ + +/* Define to 1 if you have the <sys/un.h> header file. */ +/* #undef HAVE_SYS_UN_H */ + +/* Define to 1 if you have the <sys/wait.h> header file. */ +/* #undef HAVE_SYS_WAIT_H */ + +/* Define to 1 if you have the <time.h> header file. */ +#define HAVE_TIME_H 1 + +/* Define to 1 if typeof works with your compiler. */ +#define HAVE_TYPEOF 1 + +/* Define to 1 if the system has the type `uint128_t'. */ +/* #undef HAVE_UINT128_T */ + +/* Define to 1 if the system has the type `uint64_t'. */ +/* #undef HAVE_UINT64_T */ + +/* Define to 1 if you have the <unistd.h> header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to 1 if you have Valgrind */ +/* #undef HAVE_VALGRIND */ + +/* Define to 1 if you have the `waitpid' function. */ +/* #undef HAVE_WAITPID */ + +/* Define to 1 if you have the <X11/extensions/shmproto.h> header file. */ +/* #undef HAVE_X11_EXTENSIONS_SHMPROTO_H */ + +/* Define to 1 if you have the <X11/extensions/shmstr.h> header file. */ +/* #undef HAVE_X11_EXTENSIONS_SHMSTR_H */ + +/* Define to 1 if you have the <X11/extensions/XShm.h> header file. */ +/* #undef HAVE_X11_EXTENSIONS_XSHM_H */ + +/* Define to 1 if you have the <xlocale.h> header file. */ +/* #undef HAVE_XLOCALE_H */ + +/* Define to 1 if you have the `XRenderCreateConicalGradient' function. */ +/* #undef HAVE_XRENDERCREATECONICALGRADIENT */ + +/* Define to 1 if you have the `XRenderCreateLinearGradient' function. */ +/* #undef HAVE_XRENDERCREATELINEARGRADIENT */ + +/* Define to 1 if you have the `XRenderCreateRadialGradient' function. */ +/* #undef HAVE_XRENDERCREATERADIALGRADIENT */ + +/* Define to 1 if you have the `XRenderCreateSolidFill' function. */ +/* #undef HAVE_XRENDERCREATESOLIDFILL Ä/ + +/* Define to 1 if you have zlib available */ +#define HAVE_ZLIB 1 + +/* Define to 1 if the system has the type `__uint128_t'. */ +/* #undef HAVE___UINT128_T */ + +/* Define to 1 if shared memory segments are released deferred. */ +/* #undef IPC_RMID_DEFERRED_RELEASE */ + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "https://gitlab.freedesktop.org/cairo/cairo/-/issues" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME USE_cairo_INSTEAD + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING USE_cairo_version_OR_cairo_version_string_INSTEAD + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME USE_cairo_INSTEAD + +/* Define to the home page for this package. */ +#define PACKAGE_URL "https://cairographics.org/" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION USE_cairo_version_OR_cairo_version_string_INSTEAD + +/* Shared library file extension */ +#define SHARED_LIB_EXT "dll" + +/* The size of `int', as computed by sizeof. */ +#define SIZEOF_INT 4 + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* The size of `long long', as computed by sizeof. */ +#define SIZEOF_LONG_LONG 8 + +/* The size of `size_t', as computed by sizeof. */ +#define SIZEOF_SIZE_T 8 + +/* The size of `void *', as computed by sizeof. */ +#define SIZEOF_VOID_P 8 + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# define _ALL_SOURCE 1 +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# define _POSIX_PTHREAD_SEMANTICS 1 +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# define _TANDEM_SOURCE 1 +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# define __EXTENSIONS__ 1 +#endif + + +/* Define to the value your compiler uses to support the warn-unused-result + attribute */ +#define WARN_UNUSED_RESULT __attribute__((__warn_unused_result__)) + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + + +/* Deal with multiple architecture compiles on Mac OS X */ +#ifdef __APPLE_CC__ +#ifdef __BIG_ENDIAN__ +#define WORDS_BIGENDIAN 1 +#define FLOAT_WORDS_BIGENDIAN 1 +#else +/* #undef WORDS_BIGENDIAN */ +/* #undef FLOAT_WORDS_BIGENDIAN */ +#endif +#endif + + +/* Define to 1 if the X Window System is missing or not being used. */ +/* #undef X_DISPLAY_MISSING */ + +/* Enable large inode numbers on Mac OS X 10.5. */ +#ifndef _DARWIN_USE_64_BIT_INODE +# define _DARWIN_USE_64_BIT_INODE 1 +#endif + +/* Number of bits in a file offset, on hosts where this is settable. */ +/* #undef _FILE_OFFSET_BITS */ + +/* Define for large files, on AIX-style hosts. */ +/* #undef _LARGE_FILES */ + +/* Define to 1 if on MINIX. */ +/* #undef _MINIX */ + +/* Define to 2 if the system does not provide POSIX.1 features except with + this defined. */ +/* #undef _POSIX_1_SOURCE */ + +/* Define to 1 if you need to in order for `stat' and other things to work. */ +/* #undef _POSIX_SOURCE */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to __typeof__ if your compiler spells it that way. */ +/* #undef typeof */ diff --git a/external/cairo/configs/wnt_cairo_features.h b/external/cairo/configs/wnt_cairo_features.h new file mode 100644 index 000000000000..e4b4328d402d --- /dev/null +++ b/external/cairo/configs/wnt_cairo_features.h @@ -0,0 +1,38 @@ +/* Manually edited */ +#ifndef CAIRO_FEATURES_H +#define CAIRO_FEATURES_H + +#define CAIRO_HAS_FC_FONT 1 +#define CAIRO_HAS_FT_FONT 1 +/* #undef CAIRO_HAS_GOBJECT_FUNCTIONS */ +#define CAIRO_HAS_IMAGE_SURFACE 1 +/* #undef CAIRO_HAS_MIME_SURFACE */ +#define CAIRO_HAS_OBSERVER_SURFACE 1 +#define CAIRO_HAS_PDF_SURFACE 1 +/* #undef CAIRO_HAS_PNG_FUNCTIONS */ +/* #undef CAIRO_HAS_PS_SURFACE */ +#define CAIRO_HAS_RECORDING_SURFACE 1 +#define CAIRO_HAS_SCRIPT_SURFACE 1 +#define CAIRO_HAS_USER_FONT 1 +/* #undef CAIRO_HAS_XCB_SHM_FUNCTIONS */ +/* #undef CAIRO_HAS_XCB_SURFACE */ +/* #undef CAIRO_HAS_XLIB_SURFACE */ +/* #undef CAIRO_HAS_XLIB_XRENDER_SURFACE */ + +/*#undef CAIRO_HAS_EGL_FUNCTIONS */ +/*#undef CAIRO_HAS_GLESV2_SURFACE */ +/*#undef CAIRO_HAS_GLESV3_SURFACE */ +/*#undef CAIRO_HAS_GLX_FUNCTIONS */ +/*#undef CAIRO_HAS_GL_SURFACE */ +/*#undef CAIRO_HAS_QUARTZ_FONT */ +/*#undef CAIRO_HAS_QUARTZ_IMAGE_SURFACE */ +/*#undef CAIRO_HAS_QUARTZ_SURFACE */ +/*#undef CAIRO_HAS_SVG_SURFACE */ +/*#undef CAIRO_HAS_TEE_SURFACE */ +/*#undef CAIRO_HAS_WGL_FUNCTIONS */ +/*#undef CAIRO_HAS_WIN32_FONT */ +/*#undef CAIRO_HAS_WIN32_SURFACE */ +/*#undef CAIRO_HAS_XLIB_XCB_FUNCTIONS */ +/*#undef CAIRO_HAS_XML_SURFACE */ + +#endif diff --git a/external/cairo/configs/wnt_pixman_config.h b/external/cairo/configs/wnt_pixman_config.h new file mode 100644 index 000000000000..180a8f93df15 --- /dev/null +++ b/external/cairo/configs/wnt_pixman_config.h @@ -0,0 +1,195 @@ +/* config.h for Windows build of pixman, manually created from one for Linux: */ + +/* config.h. Generated from config.h.in by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Whether we have alarm() */ +/* #undef HAVE_ALARM */ + +/* Whether the compiler supports __builtin_clz */ +/* #undef HAVE_BUILTIN_CLZ */ + +/* Define to 1 if you have the <dlfcn.h> header file. */ +/* #undef HAVE_DLFCN_H */ + +/* Whether we have FE_DIVBYZERO */ +/* #undef HAVE_FEDIVBYZERO */ + +/* Whether we have feenableexcept() */ +/* #undef HAVE_FEENABLEEXCEPT */ + +/* Define to 1 if we have <fenv.h> */ +/* #undef HAVE_FENV_H 1 + +/* Whether the tool chain supports __float128 */ +/* #undef HAVE_FLOAT128 */ + +/* Whether the compiler supports GCC vector extensions */ +/* #undef HAVE_GCC_VECTOR_EXTENSIONS */ + +/* Define to 1 if you have the `getisax' function. */ +/* #undef HAVE_GETISAX */ + +/* Whether we have getpagesize() */ +/* #undef HAVE_GETPAGESIZE */ + +/* Whether we have gettimeofday() */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the `pixman-1' library (-lpixman-1). */ +/* #undef HAVE_LIBPIXMAN_1 */ + +/* Whether we have libpng */ +/* #undef HAVE_LIBPNG */ + +/* Whether we have mmap() */ +/* #undef HAVE_MMAP */ + +/* Whether we have mprotect() */ +/* #undef HAVE_MPROTECT */ + +/* Whether we have posix_memalign() */ +/* #undef HAVE_POSIX_MEMALIGN */ + +/* Whether pthreads is supported */ +/* #undef HAVE_PTHREADS */ + +/* Whether we have sigaction() */ +/* #undef HAVE_SIGACTION */ + +/* Define to 1 if you have the <stdint.h> header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the <stdio.h> header file. */ +#define HAVE_STDIO_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the <strings.h> header file. */ +/* #undef HAVE_STRINGS_H */ + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if we have <sys/mman.h> */ +/* #undef HAVE_SYS_MMAN_H */ + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +/* #undef HAVE_SYS_TYPES_H */ + +/* Define to 1 if you have the <unistd.h> header file. */ +/* #undef HAVE_UNISTD_H */ + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + +/* Name of package */ +#define PACKAGE "pixman" + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "[email protected]" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "pixman" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "pixman 0.42.2" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "pixman" + +/* Define to the home page for this package. */ +#define PACKAGE_URL "" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "0.42.2" + +/* enable output that can be piped to gnuplot */ +/* #undef PIXMAN_GNUPLOT */ + +/* enable TIMER_BEGIN/TIMER_END macros */ +/* #undef PIXMAN_TIMERS */ + +/* The size of `long', as computed by sizeof. */ +#define SIZEOF_LONG 4 + +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ +#define STDC_HEADERS 1 + +/* The compiler supported TLS storage class */ +#define TLS __declspec(thread) + +/* Whether the tool chain supports __attribute__((constructor)) */ +/* #undef TOOLCHAIN_SUPPORTS_ATTRIBUTE_CONSTRUCTOR */ + +/* use ARM A64_NEON assembly optimizations */ +/* #undef USE_ARM_A64_NEON */ + +/* use ARM IWMMXT compiler intrinsics */ +/* #undef USE_ARM_IWMMXT */ + +/* use ARM NEON assembly optimizations */ +/* #undef USE_ARM_NEON */ + +/* use ARM SIMD assembly optimizations */ +/* #undef USE_ARM_SIMD */ + +/* use GNU-style inline assembler */ +/* #undef USE_GCC_INLINE_ASM */ + +/* use Loongson Multimedia Instructions */ +/* #undef USE_LOONGSON_MMI */ + +/* use MIPS DSPr2 assembly optimizations */ +/* #undef USE_MIPS_DSPR2 */ + +/* use OpenMP in the test suite */ +/* #undef USE_OPENMP */ + +/* use SSE2 compiler intrinsics */ +#define USE_SSE2 1 + +/* use SSSE3 compiler intrinsics */ +#define USE_SSSE3 1 + +/* use VMX compiler intrinsics */ +/* #undef USE_VMX */ + +/* use x86 MMX compiler intrinsics */ +/* #undef USE_X86_MMX */ + +/* Version number of package */ +#define VERSION "0.42.2" + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +/* # undef WORDS_BIGENDIAN */ +# endif +#endif + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif + +/* Define to sqrt if you do not have the `sqrtf' function. */ +/* #undef sqrtf */ diff --git a/solenv/clang-format/excludelist b/solenv/clang-format/excludelist index cda2f63a84ff..c510f44560d6 100644 --- a/solenv/clang-format/excludelist +++ b/solenv/clang-format/excludelist @@ -3814,6 +3814,9 @@ extensions/test/ole/unoTocomCalls/XCallback_Impl/Simple.cpp extensions/test/ole/unoTocomCalls/XCallback_Impl/Simple.h extensions/test/ole/unoTocomCalls/XCallback_Impl/resource.h external/bluez_bluetooth/inc/bluetooth/bluetooth.h +external/cairo/configs/wnt_cairo_config.h +external/cairo/configs/wnt_cairo_features.h +external/cairo/configs/wnt_pixman_config.h external/clew/source/clew.c external/clew/source/include/clew/clew.h external/clucene/configs/_clucene-config-LINUX.h
