Skip to content

GH-49601: [C++] Update bundled AWS SDK C++ for C23#49604

Merged
kou merged 1 commit intoapache:mainfrom
kou:cpp-aws-lc
Mar 28, 2026
Merged

GH-49601: [C++] Update bundled AWS SDK C++ for C23#49604
kou merged 1 commit intoapache:mainfrom
kou:cpp-aws-lc

Conversation

@kou
Copy link
Copy Markdown
Member

@kou kou commented Mar 27, 2026

Rationale for this change

aws-lc can't be built with C23:
aws/aws-lc#2995

It's fixed in upstream:
aws/aws-lc#3008

What changes are included in this PR?

Update bundled AWS SDK C++ related products to the latest version.

Are these changes tested?

Yes.

Are there any user-facing changes?

Yes.

aws-lc can't be built with C23:
aws/aws-lc#2995

It's fixed in upstream:
aws/aws-lc#3008
Copilot AI review requested due to automatic review settings March 27, 2026 02:19
@kou kou added the CI: Extra: Package: Linux Run extra Linux Packages CI label Mar 27, 2026
@github-actions
Copy link
Copy Markdown

⚠️ GitHub issue #49601 has been automatically assigned in GitHub to PR creator.

@github-actions github-actions bot added Component: C++ and removed CI: Extra: Package: Linux Run extra Linux Packages CI labels Mar 27, 2026
@github-actions github-actions bot added the awaiting committer review Awaiting committer review label Mar 27, 2026
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the bundled AWS SDK for C++ dependency set (including aws-lc) to versions that can be built with C23, addressing the aws-lc build failure referenced in GH-49601.

Changes:

  • Bumped bundled AWS C libraries, aws-crt-cpp, aws-lc, aws-sdk-cpp, and s2n-tls versions and corresponding SHA256 checksums.
  • Added a GCC-specific compile flag suppression (-Wno-implicit-fallthrough) during the AWS SDK from-source build.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
cpp/thirdparty/versions.txt Updates AWS-related thirdparty version pins and SHA256 checksums (including aws-lc) to newer releases.
cpp/cmake_modules/ThirdpartyToolchain.cmake Adjusts AWS SDK build configuration by adding a GCC-specific warning suppression flag.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +3885 to +3888
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
string(APPEND CMAKE_C_FLAGS " -Wno-implicit-fallthrough")
string(APPEND CMAKE_CXX_FLAGS " -Wno-implicit-fallthrough")
endif()
Copy link

Copilot AI Mar 27, 2026

Choose a reason for hiding this comment

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

The -Wno-implicit-fallthrough flag is being added based on CMAKE_CXX_COMPILER_ID, but it’s appended to both CMAKE_C_FLAGS and CMAKE_CXX_FLAGS. In mixed-toolchain setups (different C and C++ compilers), this can fail to apply when needed or apply based on the wrong compiler. Consider checking CMAKE_C_COMPILER_ID for the C flags and CMAKE_CXX_COMPILER_ID for the C++ flags (or guarding each independently), ideally using check_c_compiler_flag/check_cxx_compiler_flag so unsupported flags don’t break builds.

Copilot uses AI. Check for mistakes.
@kou kou added the CI: Extra: Package: Linux Run extra Linux Packages CI label Mar 27, 2026
@kou
Copy link
Copy Markdown
Member Author

kou commented Mar 27, 2026

@kou kou added the CI: Extra Run extra CI label Mar 27, 2026
@kou
Copy link
Copy Markdown
Member Author

kou commented Mar 28, 2026

+1

@kou kou merged commit aa30af3 into apache:main Mar 28, 2026
156 of 174 checks passed
@kou kou removed the awaiting committer review Awaiting committer review label Mar 28, 2026
@kou kou deleted the cpp-aws-lc branch March 28, 2026 08:21
@conbench-apache-arrow
Copy link
Copy Markdown

After merging your PR, Conbench analyzed the 3 benchmarking runs that have been run so far on merge-commit aa30af3.

There were no benchmark performance regressions. 🎉

The full Conbench report has more details. It also includes information about 8 possible false positives for unstable benchmarks that are known to sometimes produce them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI: Extra: Package: Linux Run extra Linux Packages CI CI: Extra Run extra CI Component: C++

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants