early-access version 2853
This commit is contained in:
16
externals/vcpkg/ports/cairo/cairo_static_fix.patch
vendored
Executable file
16
externals/vcpkg/ports/cairo/cairo_static_fix.patch
vendored
Executable file
@@ -0,0 +1,16 @@
|
||||
--- meson.build.orig 2022-03-19 03:40:07.000000000 +0900
|
||||
+++ meson.build 2022-03-29 21:32:41.000000000 +0900
|
||||
@@ -100,6 +100,13 @@
|
||||
# Autotools compatibility
|
||||
add_project_arguments('-DHAVE_CONFIG_H', language: 'c')
|
||||
|
||||
+if host_machine.system() == 'windows'
|
||||
+ lib_default = get_option('default_library')
|
||||
+ if lib_default == 'static'
|
||||
+ add_project_arguments('-DCAIRO_WIN32_STATIC_BUILD', language: 'c')
|
||||
+ endif
|
||||
+endif
|
||||
+
|
||||
# Make sure source directory hasn't been configured with autotools
|
||||
fs = import('fs')
|
||||
if fs.exists('config.h') or fs.exists('src/cairo-features.h') or fs.exists('src/cairo-supported-features.h')
|
||||
13
externals/vcpkg/ports/cairo/disable-atomic-ops-check.patch
vendored
Executable file
13
externals/vcpkg/ports/cairo/disable-atomic-ops-check.patch
vendored
Executable file
@@ -0,0 +1,13 @@
|
||||
diff --git a/meson.build b/meson.build
|
||||
index e3ec5d9..7b20c0c 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -870,7 +870,7 @@ if cc.links(files('meson-cc-tests/atomic-ops-cxx11.c'), name: 'Atomic ops: cxx11
|
||||
conf.set('HAVE_CXX11_ATOMIC_PRIMITIVES', 1)
|
||||
elif cc.links(files('meson-cc-tests/atomic-ops-gcc-legacy.c'), name: 'Atomic ops: gcc legacy')
|
||||
conf.set('HAVE_GCC_LEGACY_ATOMICS', 1)
|
||||
-elif cc.has_header('atomic_ops.h')
|
||||
+elif false
|
||||
conf.set('HAVE_LIB_ATOMIC_OPS', 1)
|
||||
elif cc.has_header('libkern/OSAtomic.h')
|
||||
conf.set('HAVE_OS_ATOMIC_OPS', 1)
|
||||
90
externals/vcpkg/ports/cairo/portfile.cmake
vendored
Executable file
90
externals/vcpkg/ports/cairo/portfile.cmake
vendored
Executable file
@@ -0,0 +1,90 @@
|
||||
set(CAIRO_VERSION 1.17.4)
|
||||
|
||||
vcpkg_from_gitlab(
|
||||
GITLAB_URL https://gitlab.freedesktop.org
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
REPO cairo/cairo
|
||||
REF b43e7c6f3cf7855e16170a06d3a9c7234c60ca94 #v1.17.6
|
||||
SHA512 2d8f0cbb11638610eda104a370bb8450e28d835852b0f861928738a60949e0aaba7a554a9f9efabbefda10a37616d4cd0d3021b3fbb4ced1d52db1edb49bc358
|
||||
HEAD_REF master
|
||||
PATCHES
|
||||
cairo_static_fix.patch
|
||||
disable-atomic-ops-check.patch # See https://gitlab.freedesktop.org/cairo/cairo/-/issues/554
|
||||
)
|
||||
|
||||
if("fontconfig" IN_LIST FEATURES)
|
||||
list(APPEND OPTIONS -Dfontconfig=enabled)
|
||||
else()
|
||||
list(APPEND OPTIONS -Dfontconfig=disabled)
|
||||
endif()
|
||||
|
||||
if("freetype" IN_LIST FEATURES)
|
||||
list(APPEND OPTIONS -Dfreetype=enabled)
|
||||
else()
|
||||
list(APPEND OPTIONS -Dfreetype=disabled)
|
||||
endif()
|
||||
|
||||
if ("x11" IN_LIST FEATURES)
|
||||
if (VCPKG_TARGET_IS_WINDOWS)
|
||||
message(FATAL_ERROR "Feature x11 only support UNIX.")
|
||||
endif()
|
||||
message(WARNING "You will need to install Xorg dependencies to use feature x11:\nsudo apt install libx11-dev libxft-dev libxext-dev\n")
|
||||
list(APPEND OPTIONS -Dxlib=enabled)
|
||||
else()
|
||||
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 -Dglib=enabled)
|
||||
else()
|
||||
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_meson(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
OPTIONS ${OPTIONS}
|
||||
-Dtests=disabled
|
||||
-Dzlib=enabled
|
||||
-Dpng=enabled
|
||||
-Dspectre=auto
|
||||
-Dgtk2-utils=disabled
|
||||
-Dsymbol-lookup=disabled
|
||||
)
|
||||
vcpkg_install_meson()
|
||||
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
|
||||
|
||||
set(_file "${CURRENT_PACKAGES_DIR}/include/cairo/cairo.h")
|
||||
file(READ ${_file} CAIRO_H)
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
string(REPLACE "defined (CAIRO_WIN32_STATIC_BUILD)" "1" CAIRO_H "${CAIRO_H}")
|
||||
else()
|
||||
string(REPLACE "defined (CAIRO_WIN32_STATIC_BUILD)" "0" CAIRO_H "${CAIRO_H}")
|
||||
endif()
|
||||
file(WRITE ${_file} "${CAIRO_H}")
|
||||
|
||||
vcpkg_copy_pdbs()
|
||||
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()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
48
externals/vcpkg/ports/cairo/vcpkg.json
vendored
Executable file
48
externals/vcpkg/ports/cairo/vcpkg.json
vendored
Executable file
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"name": "cairo",
|
||||
"version": "1.17.6",
|
||||
"port-version": 2,
|
||||
"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",
|
||||
"license": "MPL-1.1",
|
||||
"dependencies": [
|
||||
"dirent",
|
||||
"expat",
|
||||
"libpng",
|
||||
"lzo",
|
||||
"pixman",
|
||||
"pthread",
|
||||
{
|
||||
"name": "vcpkg-tool-meson",
|
||||
"host": true
|
||||
},
|
||||
"zlib"
|
||||
],
|
||||
"default-features": [
|
||||
"fontconfig",
|
||||
"freetype"
|
||||
],
|
||||
"features": {
|
||||
"fontconfig": {
|
||||
"description": "build with fontconfig",
|
||||
"dependencies": [
|
||||
"fontconfig"
|
||||
]
|
||||
},
|
||||
"freetype": {
|
||||
"description": "use the freetype font backend",
|
||||
"dependencies": [
|
||||
"freetype"
|
||||
]
|
||||
},
|
||||
"gobject": {
|
||||
"description": "build gobject module",
|
||||
"dependencies": [
|
||||
"glib"
|
||||
]
|
||||
},
|
||||
"x11": {
|
||||
"description": "build with x11 support"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user