Skip to content

[lang] Update minimum requirement for CMAKE #8703

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

linull24
Copy link

Issue: #8673

Brief Summary

copilot:summary
This PR resolves CMake 4.0 compilation failures by standardizing the minimum required version to 3.17 across all submodules (TaichiExamples/TaichiCAPITests/TaichiCAPI/TaichiTests), ensuring compatibility with modern Linux distributions.

Walkthrough

copilot:walkthrough

Context

  • CMake 4.0 dropped legacy support (including CMake 3.5) causing build failures on updated distros
  • Reference: CMake Version Policy

Changes Made

  1. Updated version requirement in:
    • TaichiExamples.cmake
    • TaichiCAPITests.cmake
    • TaichiCAPI.cmake
    • TaichiTests.cmake
  2. Unified requirement to CMake 3.17 (already the de facto standard)

Impact Analysis

  • No breaking changes (3.17 was already the effective minimum)
  • Improves forward compatibility
  • Affects only build system configuration

Verification

  • No new tests needed (version requirement change only)
  • Confirmed via manual build testing

Additional Notes

  • Aligns with CMake's modern version policy
  • Prevents future issues on rolling-release distros
  • Maintains backward compatibility

I sincerely apologize for the additional PR noise (#8701, #8678). Due to my initial lack of Git proficiency, I inadvertently created redundant PRs while attempting to sync with upstream. This new PR (#8703) consolidates all changes with proper rebasing.

Thank you for your patience, and I appreciate your guidance throughout this process.

@hughperkins
Copy link
Contributor

hughperkins commented Apr 30, 2025

Note: @linull24

  • I might have been wrong to suggest you needed to merge from master, since /rebase should already handle t hat I think :)
  • the builds are a little flaky. when somethign fails:
    • check the build logs
      • if it's related to your change, then fix that
      • otherwise, if you are sure it's not from your own change, then I would recommend restarting the build
        • you can do that by pushing a dummy commit:
git commit -m "dummy" --allow-empty
git push

@hughperkins
Copy link
Contributor

In this case, looks like a bot runner failure:

Screenshot 2025-04-30 at 7 11 57 AM

@CLAassistant
Copy link

CLAassistant commented Apr 30, 2025

CLA assistant check
All committers have signed the CLA.

@linull24
Copy link
Author

I've seen #8697.After four dummy commits , and it finally worked.🤣🤣🤣.
May I just need some patience.

@hughperkins
Copy link
Contributor

@linull24 Looks like an temporary infa issue:
Screenshot 2025-05-02 at 5 22 32 AM

Probably good to retry another dummy commit.

@linull24
Copy link
Author

linull24 commented May 5, 2025

@hughperkins please review

@hughperkins
Copy link
Contributor

Hi @linull24 I'm just a bystander, and have no access to merge, but the changes look great to me. You're just going to have to keep pushing dummy commits until the tests pass I feel :). It might take a few days. I think the PR is very useful, to avoid error messages about cmake version :)

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.

3 participants