Skip to content

[lang] Update minimum requirement for CMAKE#8678

Closed
linull24 wants to merge 4 commits into
taichi-dev:masterfrom
linull24:master
Closed

[lang] Update minimum requirement for CMAKE#8678
linull24 wants to merge 4 commits into
taichi-dev:masterfrom
linull24:master

Conversation

@linull24

@linull24 linull24 commented Apr 19, 2025

Copy link
Copy Markdown
Contributor

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'm closing this PR in favor of #8702, which properly incorporates the upstream updates. My earlier inexperience with Git led to unnecessary back-and-forth - I appreciate your understanding and will ensure cleaner contributions moving forward.

Special thanks for your helpful feedback.

@CLAassistant

CLAassistant commented Apr 19, 2025

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@linull24 linull24 changed the title Update minimum requirement for CMAKE Apr 19, 2025
@linull24 linull24 changed the title [LANG]Update minimum requirement for CMAKE Apr 19, 2025
@linull24 linull24 changed the title [langUpdate minimum requirement for CMAKE Apr 19, 2025
@linull24 linull24 changed the title [lang]Update minimum requirement for CMAKE Apr 19, 2025
@hughperkins

Copy link
Copy Markdown
Contributor

/rebase

1 similar comment
@feisuzhu

Copy link
Copy Markdown
Contributor

/rebase

@hughperkins

Copy link
Copy Markdown
Contributor

Seems like needs to update from master, to get the proxy fix?

@linull24 linull24 closed this Apr 30, 2025
feisuzhu pushed a commit that referenced this pull request Jul 27, 2025
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](https://cmake.org/cmake/help/latest/command/cmake_minimum_required.html)

#### 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 referenced this pull request in hughperkins/quadrants Oct 7, 2025
* [build] Add support for extracting .tar.xz archives in dep.py (#8721)

fix new vulkan extension packages

* [ci] Drop support of Python < 3.9 (#8737)

* [ci] Upgrade setup-python actions (#8739)

* [ci] Migrate to new threading interface (#8731)

### Brief Summary
This small PR resolves the `threading` library warnings, which you can
find in the [CI
logs](https://github.com/taichi-dev/taichi/actions/runs/15284687653/job/42992007742#step:7:6782):
```python
  C:\Users\buildbot\actions-runner\_work\taichi\taichi\tests\python\test_offline_cache.py:46: DeprecationWarning: currentThread() is deprecated, use current_thread() instead
    return join(OFFLINE_CACHE_TEMP_DIR, str(threading.currentThread().ident))
```
It also fixes a small typo along the way.

### Walkthrough

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>

* [build] Replace libtinfo-dev with libncurses-dev in package dependencies (#8718)

* [build] Update sccache download URLs to version 0.10.0 for various plat… (#8717)

upgrade sscache

---------

Co-authored-by: Proton <feisuzhu@163.com>

* [build] Update Vulkan SDK version (#8749)

Issue: #

### Brief Summary

- Vulkan 1.3.236.0 has been removed. 1.3.296.0 (The final 1.3.x) should
be used instead.
- Allow clang 16.
- CMake 3.x should be specified as CMake 4 is not compatible.

### Walkthrough

---------

Co-authored-by: Proton <feisuzhu@163.com>

* [build] Update setup function to use Miniforge and correct download URLs (#8719)

Upgrade to miniforge (mamba is deprecated)

* [build] Identify aarch64 wheels (#8716)

* [build] Add Python 3.13 build (#8748)

* [build] Update minimum requirement for CMAKE (#8703)

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](https://cmake.org/cmake/help/latest/command/cmake_minimum_required.html)

#### 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.

* remove dot-android.tgz

* update python  versions

---------

Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: Johnny <johnnync13@gmail.com>
Co-authored-by: Proton <feisuzhu@163.com>
Co-authored-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
Co-authored-by: T.Yamada <cielartisan@gmail.com>
Co-authored-by: Linull/李林 <2382963480@qq.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

4 participants