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/rttr | |
Diffstat (limited to 'vcpkg/ports/rttr')
| -rw-r--r-- | vcpkg/ports/rttr/Fix-depends.patch | 14 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/disable-unsupport-header.patch | 13 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/disable-werrorr.patch | 13 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/fix-directory-output.patch | 13 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/portfile.cmake | 59 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/remove-owner-read-perms.patch | 44 | ||||
| -rw-r--r-- | vcpkg/ports/rttr/vcpkg.json | 20 |
7 files changed, 176 insertions, 0 deletions
diff --git a/vcpkg/ports/rttr/Fix-depends.patch b/vcpkg/ports/rttr/Fix-depends.patch new file mode 100644 index 0000000..8357a47 --- /dev/null +++ b/vcpkg/ports/rttr/Fix-depends.patch @@ -0,0 +1,14 @@ +diff --git a/CMake/3rd_party_libs.cmake b/CMake/3rd_party_libs.cmake +index dca5071..4dd4471 100644 +--- a/CMake/3rd_party_libs.cmake ++++ b/CMake/3rd_party_libs.cmake +@@ -51,7 +51,8 @@ if (BUILD_BENCHMARKS) + find_package(Threads REQUIRED) + endif() + +-set(RAPID_JSON_DIR ${RTTR_3RD_PARTY_DIR}/rapidjson-1.1.0) ++find_package(RapidJSON CONFIG REQUIRED) ++set(RAPID_JSON_DIR ${RAPIDJSON_INCLUDE_DIRS}) + set(NONIUS_DIR ${RTTR_3RD_PARTY_DIR}/nonius-1.1.2) + + # Prepare "Catch" library for other executables diff --git a/vcpkg/ports/rttr/disable-unsupport-header.patch b/vcpkg/ports/rttr/disable-unsupport-header.patch new file mode 100644 index 0000000..efe2bb2 --- /dev/null +++ b/vcpkg/ports/rttr/disable-unsupport-header.patch @@ -0,0 +1,13 @@ +diff --git a/src/rttr/detail/misc/flat_map.h b/src/rttr/detail/misc/flat_map.h +index 767c97b..ba97cc7 100644 +--- a/src/rttr/detail/misc/flat_map.h ++++ b/src/rttr/detail/misc/flat_map.h +@@ -36,7 +36,7 @@ + #include <utility> + #include <functional> + #include <algorithm> +-#include <ciso646> // _LIBCPP_VERSION ++//#include <ciso646> // _LIBCPP_VERSION + + namespace rttr + { diff --git a/vcpkg/ports/rttr/disable-werrorr.patch b/vcpkg/ports/rttr/disable-werrorr.patch new file mode 100644 index 0000000..8e9d944 --- /dev/null +++ b/vcpkg/ports/rttr/disable-werrorr.patch @@ -0,0 +1,13 @@ +diff --git a/CMake/utility.cmake b/CMake/utility.cmake +index 8e7a0c6..ac5e305 100644 +--- a/CMake/utility.cmake ++++ b/CMake/utility.cmake +@@ -395,7 +395,7 @@ function( set_compiler_warnings target) + set(WARNINGS "-Werror" + "-Wall") + elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang") +- set(WARNINGS "-Werror" ++ set(WARNINGS + "-Wall") + elseif(MSVC) + set(WARNINGS "/WX" diff --git a/vcpkg/ports/rttr/fix-directory-output.patch b/vcpkg/ports/rttr/fix-directory-output.patch new file mode 100644 index 0000000..97e47f3 --- /dev/null +++ b/vcpkg/ports/rttr/fix-directory-output.patch @@ -0,0 +1,13 @@ +diff --git a/CMake/config.cmake b/CMake/config.cmake +index a718199..eab64c2 100644 +--- a/CMake/config.cmake ++++ b/CMake/config.cmake +@@ -47,7 +47,7 @@ set(CMAKE_EXECUTABLE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin") + + # here we specify the installation directory + if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) +- set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/install" CACHE PATH "RTTR install prefix" FORCE) ++ #set(CMAKE_INSTALL_PREFIX "${PROJECT_BINARY_DIR}/install" CACHE PATH "RTTR install prefix") + endif() + + # in order to group in visual studio the targets into solution filters diff --git a/vcpkg/ports/rttr/portfile.cmake b/vcpkg/ports/rttr/portfile.cmake new file mode 100644 index 0000000..cbb9a15 --- /dev/null +++ b/vcpkg/ports/rttr/portfile.cmake @@ -0,0 +1,59 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO rttrorg/rttr + REF 7edbd580cfad509a3253c733e70144e36f02ecd4 + SHA512 17432728037bc0f8e346c6bd01298c6ee3a4714c83505b2cf1bc23305acea5cc55925e7fc28a8cf182b6ba26abdc9d40ea2f5b168615c030d5ebeec9a8961636 + HEAD_REF master + PATCHES + fix-directory-output.patch + Fix-depends.patch + remove-owner-read-perms.patch + disable-unsupport-header.patch + disable-werrorr.patch +) + +if("${VCPKG_LIBRARY_LINKAGE}" STREQUAL "static" AND "${VCPKG_CRT_LINKAGE}" STREQUAL "static") + set(BUILD_STATIC ON) + set(BUILD_RTTR_DYNAMIC OFF) + set(BUILD_WITH_STATIC_RUNTIME_LIBS OFF) +elseif("${VCPKG_LIBRARY_LINKAGE}" STREQUAL "dynamic" AND "${VCPKG_CRT_LINKAGE}" STREQUAL "static") + set(BUILD_STATIC OFF) + set(BUILD_RTTR_DYNAMIC OFF) + set(BUILD_WITH_STATIC_RUNTIME_LIBS ON) +elseif("${VCPKG_LIBRARY_LINKAGE}" STREQUAL "dynamic" AND "${VCPKG_CRT_LINKAGE}" STREQUAL "dynamic") + set(BUILD_STATIC OFF) + set(BUILD_RTTR_DYNAMIC ON) + set(BUILD_WITH_STATIC_RUNTIME_LIBS OFF) +else() + message(FATAL_ERROR "rttr's build system does not support this configuration: VCPKG_LIBRARY_LINKAGE: ${VCPKG_LIBRARY_LINKAGE} VCPKG_CRT_LINKAGE: ${VCPKG_CRT_LINKAGE}") +endif() + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + OPTIONS + -DBUILD_BENCHMARKS=OFF + -DBUILD_UNIT_TESTS=OFF + -DBUILD_EXAMPLES=OFF + -DBUILD_DOCUMENTATION=OFF + -DBUILD_STATIC=${BUILD_STATIC} + -DBUILD_RTTR_DYNAMIC=${BUILD_RTTR_DYNAMIC} + -DBUILD_WITH_STATIC_RUNTIME_LIBS=${BUILD_WITH_STATIC_RUNTIME_LIBS} +) + +vcpkg_cmake_install() + +if (VCPKG_TARGET_IS_WINDOWS) + vcpkg_cmake_config_fixup(CONFIG_PATH cmake) +else() + vcpkg_cmake_config_fixup(CONFIG_PATH share/rttr/cmake) +endif() + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE.txt") +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/debug/README.md" + "${CURRENT_PACKAGES_DIR}/debug/LICENSE.txt" + "${CURRENT_PACKAGES_DIR}/LICENSE.txt" + "${CURRENT_PACKAGES_DIR}/README.md" +) diff --git a/vcpkg/ports/rttr/remove-owner-read-perms.patch b/vcpkg/ports/rttr/remove-owner-read-perms.patch new file mode 100644 index 0000000..66edabd --- /dev/null +++ b/vcpkg/ports/rttr/remove-owner-read-perms.patch @@ -0,0 +1,44 @@ +diff --git a/CMake/config.cmake b/CMake/config.cmake +index 6b9eba8..e465709 100644 +--- a/CMake/config.cmake ++++ b/CMake/config.cmake +@@ -171,6 +171,5 @@ if (BUILD_INSTALLER) + COMPONENT Devel) + + install(FILES "${LICENSE_FILE}" "${README_FILE}" +- DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR} +- PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) ++ DESTINATION ${RTTR_ADDITIONAL_FILES_INSTALL_DIR}) + endif() +diff --git a/CMake/utility.cmake b/CMake/utility.cmake +index cd1e835..8e7a0c6 100644 +--- a/CMake/utility.cmake ++++ b/CMake/utility.cmake +@@ -165,7 +165,7 @@ function(loadFolder FOLDER _HEADER_FILES _SOURCE_FILES) + getNameOfDir(CMAKE_CURRENT_SOURCE_DIR DIRNAME) + if (${shouldInstall}) + if (NOT ${FULL_HEADER_PATH} MATCHES ".*_p.h$") # we don't want to install header files which are marked as private +- install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}" PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) ++ install(FILES ${FULL_HEADER_PATH} DESTINATION "include/${DIRNAME}/${REL_PATH}") + endif() + endif() + endforeach() +diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt +index de70600..a92d642 100644 +--- a/doc/CMakeLists.txt ++++ b/doc/CMakeLists.txt +@@ -132,12 +132,10 @@ set_target_properties(doc PROPERTIES FOLDER "Documentation") + + install(DIRECTORY "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_CUSTOM_HTML_DIR}" + DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" +- PATTERN "*.*" +- PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) ++ PATTERN "*.*") + + install(FILES "${DOXYGEN_OUTPUT_DIRECTORY}/${DOXYGEN_INDEX_FILE}" +- DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}" +- PERMISSIONS OWNER_READ GROUP_READ WORLD_READ) ++ DESTINATION "${DOXYGEN_DOC_INSTALL_DIR}") + + ######################################################################################### + diff --git a/vcpkg/ports/rttr/vcpkg.json b/vcpkg/ports/rttr/vcpkg.json new file mode 100644 index 0000000..26be709 --- /dev/null +++ b/vcpkg/ports/rttr/vcpkg.json @@ -0,0 +1,20 @@ +{ + "name": "rttr", + "version": "0.9.6+20210811", + "port-version": 1, + "description": "an easy and intuitive way to use reflection in C++", + "homepage": "https://github.com/rttrorg/rttr", + "license": "MIT", + "supports": "(static & staticcrt) | (!static & staticcrt) | (!static & !staticcrt)", + "dependencies": [ + "rapidjson", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} |