diff options
| author | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
|---|---|---|
| committer | Ethan Morgan <ethan@gweithio.com> | 2026-02-14 16:44:06 +0000 |
| commit | 54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch) | |
| tree | d915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/rapidjson | |
Diffstat (limited to 'vcpkg/ports/rapidjson')
| -rw-r--r-- | vcpkg/ports/rapidjson/portfile.cmake | 44 | ||||
| -rw-r--r-- | vcpkg/ports/rapidjson/vcpkg.json | 17 |
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 + } + ] +} |