Sitelet https://github.com/sourcemeta/jsonschema/pull/911
Skip to content

Fix Linux builds - #911

Merged
jviotti merged 1 commit into
mainfrom
fix-crypto-reference
Oct 4, 2026
Merged

jviotti merged 1 commit into
mainfrom
fix-crypto-reference

Conversation

@jviotti

@jviotti jviotti commented Oct 4, 2026 •

Copy link
Copy Markdown
Member

Signed-off-by: Juan Cruz Viotti jv@jviotti.com

Review in cubic

Signed-off-by: Juan Cruz Viotti <jv@jviotti.com>
@augmentcode

augmentcode Bot commented Oct 4, 2026

Copy link
Copy Markdown
🤖 Augment PR Summary

Defaults bundled Core to its reference cryptography backend on Linux before configuring the dependency.
This avoids Core's OpenSSL 3.0 requirement for fresh Linux builds while leaving other platforms unchanged.

🤖 Was this summary useful? React with 👍 or 👎

@augmentcode augmentcode Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. No suggestions at this time.

Comment augment review to trigger a new review at any time.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Comment thread cmake/FindCore.cmake
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")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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>
Suggested change
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()

@jviotti
jviotti merged commit 0dec31d into main Oct 4, 2026
16 checks passed
@jviotti
jviotti deleted the fix-crypto-reference branch October 4, 2026 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant