iree icon indicating copy to clipboard operation
iree copied to clipboard

Migrate to CMake version 3.29+ and adopt `CMAKE_LINKER_TYPE` option

Open ScottTodd opened this issue 1 year ago • 0 comments

If we update, we should be able to use https://cmake.org/cmake/help/latest/variable/CMAKE_LINKER_TYPE.html instead of our custom IREE_USE_LINKER and IREE_ENABLE_LLD: https://github.com/iree-org/iree/blob/3773a48f8f8c640e87124fa46a77b6d948d67414/CMakeLists.txt#L599-L607

Tasks:

  • [ ] Test that CMAKE_LINKER_TYPE can substitute for IREE_ENABLE_LLD
  • [ ] Update CMake version in https://github.com/iree-org/base-docker-images/ and any other locations needed for CI (GitHub hosted Ubuntu runners already include 3.30.3: https://github.com/actions/runner-images/blob/main/images/ubuntu/Ubuntu2204-Readme.md#installed-software)
  • [ ] Update our cmake_minimum_required in IREE, and perhaps also other downstream projects (e.g. iree-turbine, shortfin, template repos): https://github.com/iree-org/iree/blob/3773a48f8f8c640e87124fa46a77b6d948d67414/CMakeLists.txt#L7
  • [ ] Mention the CMake minimum version change in IREE release notes
  • [ ] Update our docs (e.g. https://iree.dev/building-from-source/getting-started/#__tabbed_2_1), CMake source, scripts, and CI workflows from IREE_ENABLE_LLD to CMAKE_LINKER_TYPE

We can also see if there are other features between our current min version (3.21) and the new min version that we want to adopt: https://cmake.org/cmake/help/latest/release/index.html.

ScottTodd avatar Sep 25 '24 17:09 ScottTodd