aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/cmark
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/cmark
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/cmark')
-rw-r--r--vcpkg/ports/cmark/add-feature-tools.patch36
-rw-r--r--vcpkg/ports/cmark/portfile.cmake44
-rw-r--r--vcpkg/ports/cmark/vcpkg.json23
3 files changed, 103 insertions, 0 deletions
diff --git a/vcpkg/ports/cmark/add-feature-tools.patch b/vcpkg/ports/cmark/add-feature-tools.patch
new file mode 100644
index 0000000..ad0c23d
--- /dev/null
+++ b/vcpkg/ports/cmark/add-feature-tools.patch
@@ -0,0 +1,36 @@
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 523b2cb..fac823e 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -51,6 +51,7 @@ generate_export_header(cmark
+ # path for OSS Fuzz.
+ add_custom_target(cmark_static DEPENDS cmark)
+
++if (BUILD_TOOLS)
+ add_executable(cmark_exe
+ main.c)
+ cmark_add_compile_options(cmark_exe)
+@@ -59,14 +60,22 @@ set_target_properties(cmark_exe PROPERTIES
+ INSTALL_RPATH "${Base_rpath}")
+ target_link_libraries(cmark_exe PRIVATE
+ cmark)
++endif()
+
+-install(TARGETS cmark_exe cmark
++install(TARGETS cmark
+ EXPORT cmark-targets
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ )
+
++if (BUILD_TOOLS)
++ install(TARGETS cmark_exe
++ EXPORT cmark-targets
++ RUNTIME DESTINATION tools/cmark
++ )
++endif()
++
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libcmark.pc
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+
diff --git a/vcpkg/ports/cmark/portfile.cmake b/vcpkg/ports/cmark/portfile.cmake
new file mode 100644
index 0000000..20de0cd
--- /dev/null
+++ b/vcpkg/ports/cmark/portfile.cmake
@@ -0,0 +1,44 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO commonmark/cmark
+ REF "${VERSION}"
+ SHA512 3b4f8b47d8ea270078ab986aa22fc32b227786459bd33c7225aac578d8dd014e3d8788a6add60ea10571fdb4c7dc6a1ece960815a02f04f153b1775c73ccff8f
+ HEAD_REF master
+ PATCHES
+ add-feature-tools.patch
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" CMARK_STATIC)
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "dynamic" CMARK_SHARED)
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ tools BUILD_TOOLS
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ ${FEATURE_OPTIONS}
+ -DBUILD_TESTING=OFF
+ -DCMARK_SHARED=${CMARK_SHARED}
+ -DCMARK_STATIC=${CMARK_STATIC}
+)
+
+vcpkg_cmake_install()
+
+vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/cmark)
+
+vcpkg_fixup_pkgconfig()
+
+if ("tools" IN_LIST FEATURES)
+ vcpkg_copy_tools(TOOL_NAMES cmark SEARCH_DIR "${CURRENT_PACKAGES_DIR}/tools/cmark" AUTO_CLEAN)
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+
+if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
+endif()
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/COPYING")
diff --git a/vcpkg/ports/cmark/vcpkg.json b/vcpkg/ports/cmark/vcpkg.json
new file mode 100644
index 0000000..922e55f
--- /dev/null
+++ b/vcpkg/ports/cmark/vcpkg.json
@@ -0,0 +1,23 @@
+{
+ "name": "cmark",
+ "version-semver": "0.31.1",
+ "description": "CommonMark parsing and rendering library",
+ "homepage": "https://github.com/commonmark/cmark",
+ "license": "BSD-2-Clause",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ],
+ "features": {
+ "tools": {
+ "description": "Build tools",
+ "supports": "!uwp"
+ }
+ }
+}