Fix Linux builds - #911
Fix Linux builds#911
Conversation
Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
🤖 Augment PR SummaryDefaults bundled Core to its reference cryptography backend on Linux before configuring the dependency. 🤖 Was this summary useful? React with 👍 or 👎 |
There was a problem hiding this comment.
1 issue found across 1 file
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="cmake/FindCore.cmake">
<violation number="1" location="cmake/FindCore.cmake:14">
P2: This forces the reference crypto backend on every Linux configure, so production Linux builds silently drop the OpenSSL backend even when OpenSSL 3.0 is available. The vendored core itself warns for this backend: "Building the reference cryptography backend instead of a system provided production one" (vendor/core/src/core/crypto/CMakeLists.txt). Prefer OpenSSL when present and fall back to the reference backend only when OpenSSL 3.0 is missing, which still fixes the broken builds without downgrading crypto on systems that have OpenSSL.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Re-trigger cubic
| set(SOURCEMETA_CORE_HTTP_USE_SYSTEM_CURL ON CACHE BOOL "Use system cURL") | ||
| endif() | ||
| if(CMAKE_SYSTEM_NAME STREQUAL "Linux") | ||
| set(SOURCEMETA_CORE_CRYPTO_USE_REFERENCE ON CACHE BOOL "Use reference crypto") |
There was a problem hiding this comment.
P2: This forces the reference crypto backend on every Linux configure, so production Linux builds silently drop the OpenSSL backend even when OpenSSL 3.0 is available. The vendored core itself warns for this backend: "Building the reference cryptography backend instead of a system provided production one" (vendor/core/src/core/crypto/CMakeLists.txt). Prefer OpenSSL when present and fall back to the reference backend only when OpenSSL 3.0 is missing, which still fixes the broken builds without downgrading crypto on systems that have OpenSSL.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. When an issue isn't valid or won't be fixed in this PR, reply in its thread with the reason and then resolve the thread. At cmake/FindCore.cmake, line 14:
<comment>This forces the reference crypto backend on every Linux configure, so production Linux builds silently drop the OpenSSL backend even when OpenSSL 3.0 is available. The vendored core itself warns for this backend: "Building the reference cryptography backend instead of a system provided production one" (vendor/core/src/core/crypto/CMakeLists.txt). Prefer OpenSSL when present and fall back to the reference backend only when OpenSSL 3.0 is missing, which still fixes the broken builds without downgrading crypto on systems that have OpenSSL.</comment>
<file context>
@@ -10,6 +10,9 @@ if(NOT Core_FOUND)
set(SOURCEMETA_CORE_HTTP_USE_SYSTEM_CURL ON CACHE BOOL "Use system cURL")
endif()
+ if(CMAKE_SYSTEM_NAME STREQUAL "Linux")
+ set(SOURCEMETA_CORE_CRYPTO_USE_REFERENCE ON CACHE BOOL "Use reference crypto")
+ endif()
add_subdirectory("${PROJECT_SOURCE_DIR}/vendor/core")
</file context>
| set(SOURCEMETA_CORE_CRYPTO_USE_REFERENCE ON CACHE BOOL "Use reference crypto") | |
| find_package(OpenSSL 3.0 QUIET) | |
| if(NOT OpenSSL_FOUND) | |
| set(SOURCEMETA_CORE_CRYPTO_USE_REFERENCE ON CACHE BOOL "Use reference crypto") | |
| endif() |
Signed-off-by: Juan Cruz Viotti jv@jviotti.com