aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/rapidjson
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/rapidjson
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/rapidjson')
-rw-r--r--vcpkg/ports/rapidjson/portfile.cmake44
-rw-r--r--vcpkg/ports/rapidjson/vcpkg.json17
2 files changed, 61 insertions, 0 deletions
diff --git a/vcpkg/ports/rapidjson/portfile.cmake b/vcpkg/ports/rapidjson/portfile.cmake
new file mode 100644
index 0000000..ee13be6
--- /dev/null
+++ b/vcpkg/ports/rapidjson/portfile.cmake
@@ -0,0 +1,44 @@
+#header-only library
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO Tencent/rapidjson
+ REF 24b5e7a8b27f42fa16b96fc70aade9106cf7102f # accessed on 2025-02-26
+ SHA512 50f8723414a6e63eadd45f97be5c44e9fff2d06216c8cc4df802f5bfc2a9416a039f2c69e9bb1882f7e756cd38a7097eea05cab76c739f45805dc41617140799
+ FILE_DISAMBIGUATOR 2
+ HEAD_REF master
+)
+
+# Use RapidJSON's own build process, skipping examples and tests
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DRAPIDJSON_BUILD_DOC=OFF
+ -DRAPIDJSON_BUILD_EXAMPLES=OFF
+ -DRAPIDJSON_BUILD_TESTS=OFF
+)
+vcpkg_cmake_install()
+
+if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_cmake_config_fixup(CONFIG_PATH cmake)
+else()
+ vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/RapidJSON)
+endif()
+
+vcpkg_fixup_pkgconfig()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+
+if(VCPKG_TARGET_IS_WINDOWS)
+ file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug" "${CURRENT_PACKAGES_DIR}/lib")
+endif()
+
+file(READ "${CURRENT_PACKAGES_DIR}/share/${PORT}/RapidJSONConfig.cmake" _contents)
+string(REPLACE "VERSION 3.0" "VERSION 3.5...3.30" _contents "${_contents}")
+string(REPLACE "\${RapidJSON_SOURCE_DIR}" "\${RapidJSON_CMAKE_DIR}/../.." _contents "${_contents}")
+string(REPLACE "set( RapidJSON_SOURCE_DIR \"${SOURCE_PATH}\")" "" _contents "${_contents}")
+string(REPLACE "set( RapidJSON_DIR \"${CURRENT_BUILDTREES_DIR}/${TARGET_TRIPLET}-rel\")" "" _contents "${_contents}")
+string(REPLACE "\${RapidJSON_CMAKE_DIR}/../../../include" "\${RapidJSON_CMAKE_DIR}/../../include" _contents "${_contents}")
+file(WRITE "${CURRENT_PACKAGES_DIR}/share/${PORT}/RapidJSONConfig.cmake" "${_contents}\nset(RAPIDJSON_INCLUDE_DIRS \"\${RapidJSON_INCLUDE_DIRS}\")\n")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/license.txt")
diff --git a/vcpkg/ports/rapidjson/vcpkg.json b/vcpkg/ports/rapidjson/vcpkg.json
new file mode 100644
index 0000000..9141abc
--- /dev/null
+++ b/vcpkg/ports/rapidjson/vcpkg.json
@@ -0,0 +1,17 @@
+{
+ "name": "rapidjson",
+ "version-date": "2025-02-26",
+ "description": "A fast JSON parser/generator for C++ with both SAX/DOM style API <http://rapidjson.org/>",
+ "homepage": "http://rapidjson.org/",
+ "license": "MIT",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}