-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Upgrade to CMake 3.26 #103088
Upgrade to CMake 3.26 #103088
Conversation
Tagging subscribers to this area: @dotnet/runtime-infrastructure |
set(CMAKE_ASM_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_MultiThreadedDebug "") | ||
set(CMAKE_ASM_COMPILE_OPTIONS_MSVC_RUNTIME_LIBRARY_MultiThreadedDebugDLL "") | ||
set(CMAKE_ASM_COMPILE_OBJECT "<CMAKE_ASM_COMPILER> -g <INCLUDES> <FLAGS> -o <OBJECT> <SOURCE>") | ||
if(CLR_CMAKE_HOST_ARCH_ARM OR CLR_CMAKE_HOST_ARCH_ARM64) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: we have removed support for Windows ARM32
Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
…s from the RESCAN and WHOLE_ARCHIVE lists as they don't apply.
Draft Pull Request was automatically closed for 30 days of inactivity. Please let us know if you'd like to reopen it. |
I'll come back to this after the 9.0 snap. It doesn't need to be done now. |
Now that we've updated our docker images, we can update our CMake minimum version and get some additional cleanup due to newer CMake features.
I selected CMake 3.26 based on the following versions included in various distributions:
We don't want to break our source-build partners, so we are limited by the oldest version included in a source-building distro. In our case, RHEL is our limiting factor at 3.26.
This PR also adopts various CMake features that were introduced since CMake 3.20 to help improve our build infrastructure:
armasm
andarmasm64
compilers so we can remove all of our logic around faking the armasm and armasm64 support (and separately pre-compiling the arm64 assembly files only when using the VS generators).cmake_host_system_information
to query distro identity instead of us doing it manually.