diff options
| author | Alexandre Bique <bique.alexandre@gmail.com> | 2021-04-20 00:30:03 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-04-19 15:30:03 -0700 |
| commit | 4c830b15161ac060fb48d175e0031677ba6e773e (patch) | |
| tree | ab32c6d58aaeee07806879f574a8c5254a75dd08 /ports/cairomm | |
| parent | 3ec41f57e64f691a723fd6e89830d01cc9be93e1 (diff) | |
| download | vcpkg-4c830b15161ac060fb48d175e0031677ba6e773e.tar.gz vcpkg-4c830b15161ac060fb48d175e0031677ba6e773e.zip | |
[cairo,cairomm] add fontconfig and quartz feature, raise cairo version (#16825)
Diffstat (limited to 'ports/cairomm')
| -rw-r--r-- | ports/cairomm/CMakeLists.txt | 45 | ||||
| -rw-r--r-- | ports/cairomm/CONTROL | 6 | ||||
| -rw-r--r-- | ports/cairomm/portfile.cmake | 9 | ||||
| -rw-r--r-- | ports/cairomm/vcpkg.json | 78 |
4 files changed, 117 insertions, 21 deletions
diff --git a/ports/cairomm/CMakeLists.txt b/ports/cairomm/CMakeLists.txt index 1cc029786..41591f558 100644 --- a/ports/cairomm/CMakeLists.txt +++ b/ports/cairomm/CMakeLists.txt @@ -34,9 +34,6 @@ configure_file("build/cmake/cairomm.rc.cmake" "cairomm.rc" @ONLY) #build set(cairomm_cc cairomm/context.cc - cairomm/context_surface_quartz.cc - cairomm/context_surface_win32.cc - cairomm/context_surface_xlib.cc cairomm/device.cc cairomm/exception.cc cairomm/fontface.cc @@ -45,16 +42,11 @@ set(cairomm_cc cairomm/path.cc cairomm/pattern.cc cairomm/private.cc - cairomm/quartz_font.cc - cairomm/quartz_surface.cc cairomm/region.cc cairomm/scaledfont.cc cairomm/script.cc cairomm/script_surface.cc - cairomm/surface.cc - cairomm/win32_font.cc - cairomm/win32_surface.cc - cairomm/xlib_surface.cc) + cairomm/surface.cc) set(cairomm_public_h cairomm/cairomm.h @@ -67,18 +59,13 @@ set(cairomm_public_h cairomm/matrix.h cairomm/path.h cairomm/pattern.h - cairomm/quartz_font.h - cairomm/quartz_surface.h cairomm/refptr.h cairomm/region.h cairomm/scaledfont.h cairomm/script.h cairomm/script_surface.h cairomm/surface.h - cairomm/types.h - cairomm/win32_font.h - cairomm/win32_surface.h - cairomm/xlib_surface.h) + cairomm/types.h) set(cairomm_private_h cairomm/context_private.h @@ -87,6 +74,34 @@ set(cairomm_private_h set(cairomm_rc ${CMAKE_BINARY_DIR}/cairomm.rc) +if(WITH_QUARTZ) + list(APPEND cairomm_cc + cairomm/context_surface_quartz.cc + cairomm/quartz_font.cc + cairomm/quartz_surface.cc) + list(APPEND cairomm_public_h + cairomm/xlib_surface.h) +endif() + +if(WITH_X11) + list(APPEND cairomm_cc + cairomm/xlib_surface.cc + cairomm/context_surface_xlib.cc) + list(APPEND cairomm_public_h + cairomm/quartz_font.h + cairomm/quartz_surface.h) +endif() + +if(WIN32) + list(APPEND cairomm_cc + cairomm/context_surface_win32.cc + cairomm/win32_font.cc + cairomm/win32_surface.cc) + list(APPEND cairomm_public_h + cairomm/win32_font.h + cairomm/win32_surface.h) +endif() + add_library(cairomm-1.0 ${cairomm_cc} ${cairomm_rc}) target_link_libraries(cairomm-1.0 ${CAIRO_LIBRARY} ${SIGC++_LIBRARY} Freetype::Freetype) target_include_directories(cairomm-1.0 PRIVATE diff --git a/ports/cairomm/CONTROL b/ports/cairomm/CONTROL deleted file mode 100644 index 7a89c9ec1..000000000 --- a/ports/cairomm/CONTROL +++ /dev/null @@ -1,6 +0,0 @@ -Source: cairomm
-Version: 1.15.3
-Port-Version: 5
-Homepage: https://www.cairographics.org
-Description: A C++ wrapper for the cairo graphics library
-Build-Depends: cairo, libsigcpp
diff --git a/ports/cairomm/portfile.cmake b/ports/cairomm/portfile.cmake index c1adb249b..dc5d2c9ff 100644 --- a/ports/cairomm/portfile.cmake +++ b/ports/cairomm/portfile.cmake @@ -19,6 +19,15 @@ vcpkg_extract_source_archive_ex( file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH}) file(COPY ${CMAKE_CURRENT_LIST_DIR}/cmake DESTINATION ${SOURCE_PATH}/build) +vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS + FEATURES + x11 WITH_X11 + gobject WITH_GOBJECT + freetype WITH_FREETYPE + fontconfig WITH_FONTCONFIG + quartz WITH_QUARTZ +) + vcpkg_configure_cmake( SOURCE_PATH ${SOURCE_PATH} PREFER_NINJA diff --git a/ports/cairomm/vcpkg.json b/ports/cairomm/vcpkg.json new file mode 100644 index 000000000..7c7d62b1b --- /dev/null +++ b/ports/cairomm/vcpkg.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://raw.githubusercontent.com/microsoft/vcpkg/master/scripts/vcpkg.schema.json", + "name": "cairomm", + "version-string": "1.15.3", + "port-version": 6, + "description": "A C++ wrapper for the cairo graphics library.", + "homepage": "https://cairographics.org", + "dependencies": [ + "cairo", + "libsigcpp" + ], + "default-features": [ + "fontconfig", + "freetype" + ], + "features": { + "fontconfig": { + "description": "build with fontconfig", + "dependencies": [ + { + "name": "cairo", + "default-features": false, + "features": [ + "fontconfig" + ] + } + ] + }, + "freetype": { + "description": "use the freetype font backend", + "dependencies": [ + { + "name": "cairo", + "default-features": false, + "features": [ + "freetype" + ] + } + ] + }, + "gobject": { + "description": "build gobject module", + "dependencies": [ + { + "name": "cairo", + "default-features": false, + "features": [ + "gobject" + ] + } + ] + }, + "quartz": { + "description": "build with quartz support", + "dependencies": [ + { + "name": "cairo", + "default-features": false, + "features": [ + "quartz" + ] + } + ] + }, + "x11": { + "description": "build with x11 support", + "dependencies": [ + { + "name": "cairo", + "default-features": false, + "features": [ + "x11" + ] + } + ] + } + } +} |
