From b990cd2e2a82d1b04807b17d444823bb5fbafef2 Mon Sep 17 00:00:00 2001 From: Biswapriyo Nath Date: Fri, 21 Jul 2023 00:42:50 +0530 Subject: [PATCH] rapidjson: Fix case in cmake variables This changes the variable RapidJSON_INCLUDE_DIR(S) to RAPIDJSON_INCLUDE_DIR(S) --- .../0008-cmake-relocate-dirs.patch | 83 +++++++++++++++++++ mingw-w64-rapidjson/PKGBUILD | 9 +- 2 files changed, 89 insertions(+), 3 deletions(-) create mode 100644 mingw-w64-rapidjson/0008-cmake-relocate-dirs.patch diff --git a/mingw-w64-rapidjson/0008-cmake-relocate-dirs.patch b/mingw-w64-rapidjson/0008-cmake-relocate-dirs.patch new file mode 100644 index 0000000000..9ca6469f26 --- /dev/null +++ b/mingw-w64-rapidjson/0008-cmake-relocate-dirs.patch @@ -0,0 +1,83 @@ +From b91c515afea9f0ba6a81fc670889549d77c83db3 Mon Sep 17 00:00:00 2001 +From: Clemens Arth +Date: Tue, 14 Mar 2017 10:27:36 +0100 +Subject: [PATCH] update to create config file which is independent from actual + install location + +--- + CMakeLists.txt | 38 +++++++++++++++++++++++++++++--------- + RapidJSONConfig.cmake.in | 18 +++++++++++++++--- + 2 files changed, 44 insertions(+), 12 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9257926c1..d6823a8aa 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -173,15 +173,35 @@ install(DIRECTORY example/ + # Provide config and version files to be used by other applications + # =============================== + +-export(PACKAGE ${PROJECT_NAME}) +- +-# cmake-modules +-CONFIGURE_FILE(${PROJECT_NAME}Config.cmake.in +- ${PROJECT_NAME}Config.cmake +- @ONLY) +-CONFIGURE_FILE(${PROJECT_NAME}ConfigVersion.cmake.in +- ${PROJECT_NAME}ConfigVersion.cmake +- @ONLY) ++################################################################################ ++# Export package for use from the build tree ++EXPORT( PACKAGE ${PROJECT_NAME} ) ++ ++# Create the RapidJSONConfig.cmake file for other cmake projects. ++# ... for the build tree ++SET( CONFIG_SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}) ++SET( CONFIG_DIR ${CMAKE_CURRENT_BINARY_DIR}) ++CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in ++ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY ) ++CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}ConfigVersion.cmake.in ++ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake @ONLY) ++ ++# ... for the install tree ++SET( CMAKECONFIG_INSTALL_DIR lib/cmake/${PROJECT_NAME} ) ++FILE( RELATIVE_PATH REL_INCLUDE_DIR ++ "${CMAKE_INSTALL_PREFIX}/${CMAKECONFIG_INSTALL_DIR}" ++ "${CMAKE_INSTALL_PREFIX}/include" ) ++ ++SET( ${PROJECT_NAME}_INCLUDE_DIR "\${${PROJECT_NAME}_CMAKE_DIR}/${REL_INCLUDE_DIR}" ) ++SET( CONFIG_SOURCE_DIR ) ++SET( CONFIG_DIR ) ++CONFIGURE_FILE( ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}Config.cmake.in ++ ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake @ONLY ) ++ ++INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/${PROJECT_NAME}Config.cmake" ++ DESTINATION ${CMAKECONFIG_INSTALL_DIR} ) ++ ++# Install files + INSTALL(FILES + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake + ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake +diff --git a/RapidJSONConfig.cmake.in b/RapidJSONConfig.cmake.in +index 9fa12186a..e3c65a541 100644 +--- a/RapidJSONConfig.cmake.in ++++ b/RapidJSONConfig.cmake.in +@@ -1,3 +1,15 @@ +-get_filename_component(RAPIDJSON_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) +-set(RAPIDJSON_INCLUDE_DIRS "@INCLUDE_INSTALL_DIR@") +-message(STATUS "RapidJSON found. Headers: ${RAPIDJSON_INCLUDE_DIRS}") ++################################################################################ ++# RapidJSON source dir ++set( RapidJSON_SOURCE_DIR "@CONFIG_SOURCE_DIR@") ++ ++################################################################################ ++# RapidJSON build dir ++set( RapidJSON_DIR "@CONFIG_DIR@") ++ ++################################################################################ ++# Compute paths ++get_filename_component(RapidJSON_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH) ++ ++set( RAPIDJSON_INCLUDE_DIR "@RapidJSON_INCLUDE_DIR@" ) ++set( RAPIDJSON_INCLUDE_DIRS "@RapidJSON_INCLUDE_DIR@" ) ++message(STATUS "RapidJSON found. Headers: ${RAPIDJSON_INCLUDE_DIRS}") diff --git a/mingw-w64-rapidjson/PKGBUILD b/mingw-w64-rapidjson/PKGBUILD index 63dfc02a71..caed069803 100644 --- a/mingw-w64-rapidjson/PKGBUILD +++ b/mingw-w64-rapidjson/PKGBUILD @@ -4,7 +4,7 @@ _realname=rapidjson pkgbase=mingw-w64-${_realname} pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" pkgver=1.1.0 -pkgrel=6 +pkgrel=7 pkgdesc='A fast JSON parser/generator for C++ with both SAX/DOM style API (mingw-w64)' arch=('any') mingw_arch=('mingw32' 'mingw64' 'ucrt64' 'clang64' 'clang32' 'clangarm64') @@ -22,7 +22,7 @@ source=("${_realname}-${pkgver}.tar.gz::https://github.com/Tencent/rapidjson/arc '0005-PrettyWriter.patch' '0006-aarch64.patch' '0007-fix-pkgconfig-file.patch' - "0008-cmake-relocate-dirs.patch::https://github.com/Tencent/rapidjson/commit/0bc856a747ce6b56107c29c80e5f86eb0fee151e.patch") + '0008-cmake-relocate-dirs.patch') sha256sums=('bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e' '5a838fe611b367f8939231aae1f604f83fd97108d3b2ac66def00ff1205afcf2' '8160d2ef142055cecb520b23cf11e90e0a6e92719427fa33755800cc748cf8be' @@ -31,7 +31,7 @@ sha256sums=('bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e' 'e3efdb8263bafb3fc3af7558c7f57f9d8a3d2ab231f05c693cc615d7784cd320' 'a2bd02572ffd4eb39d2248b3e818072d07948a65cb440f90d2fd5688e370570b' '3c186ea46d4ab1b67f4cd577799a059b6312dd43bf7b28e0b86c0a1bedac5cf8' - '4d67f350c00347d1951ff45f097353c7849fae707230cf4526030054579fec98') + '3e5bc65df66e77e183c8046e3133132606c969754930a999f318f5ca5c6bd190') prepare() { cd "${_realname}-${pkgver}" @@ -50,6 +50,9 @@ prepare() { fi patch -p1 -i "${srcdir}/0007-fix-pkgconfig-file.patch" + + # With uppercase RAPIDJSON_ variables, using + # https://github.com/Tencent/rapidjson/commit/0bc856a747ce6b56107c29c80e5f86eb0fee151e patch -p1 -i "${srcdir}/0008-cmake-relocate-dirs.patch" find -name CMakeLists.txt | xargs sed -e 's|-Werror||' -i # Don't use -Werror