From: Viktor Szakats Date: Fri, 26 Jun 2026 10:22:05 +0000 (+0200) Subject: cmake: tidy-up base directory variable for `include/*`/`CMake/*` files X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=8198e388d31919ec610908d496d34ced2daf4fea;p=thirdparty%2Fcurl.git cmake: tidy-up base directory variable for `include/*`/`CMake/*` files Use `PROJECT_SOURCE_DIR` for these files, replacing `CMAKE_CURRENT_SOURCE_DIR`, to make it consistent with rest of CMake sources and to reflect that the locations of these files are fixed and do not depend on the CMake source location referencing them. Exception: keep as-is before calling `project()`, which is where `PROJECT_SOURCE_DIR` is initialized. Ref: https://cmake.org/cmake/help/v3.18/command/project.html Follow-up to #22187 Follow-up to 9126eb5a8ad96f156586942facb069383a09c046 #15331 Closes #22188 --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 9b0d974daa..5f03499d0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -61,6 +61,7 @@ unset(_curl_version_h_contents) message(STATUS "curl version=[${_curl_version}]") string(REGEX REPLACE "([0-9]+\.[0-9]+\.[0-9]+).+" "\\1" _curl_version_sem "${_curl_version}") +# Initializes PROJECT_BINARY_DIR, PROJECT_SOURCE_DIR project(CURL VERSION "${_curl_version_sem}" LANGUAGES C) @@ -622,9 +623,9 @@ option(_CURL_PREFILL "Fast-track known feature detection results (Windows, some mark_as_advanced(_CURL_PREFILL) if(_CURL_PREFILL) if(WIN32) - include("${CMAKE_CURRENT_SOURCE_DIR}/CMake/win32-cache.cmake") + include("${PROJECT_SOURCE_DIR}/CMake/win32-cache.cmake") elseif(UNIX) - include("${CMAKE_CURRENT_SOURCE_DIR}/CMake/unix-cache.cmake") + include("${PROJECT_SOURCE_DIR}/CMake/unix-cache.cmake") message(STATUS "Pre-filling feature detection results for UNIX") endif() elseif(WIN32) @@ -2430,32 +2431,32 @@ if(NOT CURL_DISABLE_INSTALL) FILES ${_version_config} ${_project_config} - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindBrotli.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindCares.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindGSS.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindGnuTLS.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLDAP.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibbacktrace.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibgsasl.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibidn2.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibpsl.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibssh.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibssh2.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindLibuv.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindMbedTLS.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindNGHTTP2.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindNGHTTP3.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindNGTCP2.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindNettle.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindQuiche.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindRustls.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindWolfSSL.cmake" - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/FindZstd.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindBrotli.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindCares.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindGSS.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindGnuTLS.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLDAP.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibbacktrace.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibgsasl.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibidn2.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibpsl.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibssh.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibssh2.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindLibuv.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindMbedTLS.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindNGHTTP2.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindNGHTTP3.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindNGTCP2.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindNettle.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindQuiche.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindRustls.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindWolfSSL.cmake" + "${PROJECT_SOURCE_DIR}/CMake/FindZstd.cmake" DESTINATION ${_install_cmake_dir}) if(NOT TARGET curl_uninstall) configure_file( - "${CMAKE_CURRENT_SOURCE_DIR}/CMake/cmake_uninstall.in.cmake" + "${PROJECT_SOURCE_DIR}/CMake/cmake_uninstall.in.cmake" "${CMAKE_CURRENT_BINARY_DIR}/CMake/cmake_uninstall.cmake" @ONLY)