-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
[compatibility] define min. cmake version for supported distributions #899
Comments
No, please, no. |
I think you misunderstood: Just as with libusb, I am only talking about the minimum supported version (necessary to keep it running on the oldest supported operating systems). This does NOT imply that this version should be used (on all systems), if a newer one is working and/or available. If the latter is the case, the newest possible should be used of course. BTW: The minimum supported cmake version by the stlink-tools is 2.8.7 currently, as I convinced myself with a recent test on windows... |
I clearly understand what means minimum supported version. |
I don't bother about the following, as they are ruled out anyway by the
but I do for CentOS 7 and 8 as these are used in commercial, scientific and R&D environments, being binary compatible to Red Hat Enterprise Linux (RHEL). So I don't think it is a good idea to drop support here because of cmake. They are both LTS versions. Maybe there are further opinions on this. I feel this is an important decision to make and should therefore be widely discussed. |
The main option for this is download binary of newer cmake that provided by Kitware form https://cmake.org/download/. And the main question is are we(this project) have enough contributors that will support such many configurations. My suggestion is to support the latest Debian/Ubuntu, Win10 as main targets until someone didn't take responsibility for another platform. |
This may work for Windows and macOS (one could implement that similar to as intended to to so with
I don't think it necessary to test many of these other distributions, but we should basically ensure that the tools can install and it does not fail due to versioning of needed packages. Otherwise we will limit support compared to the current state without any significant need - what I would not really like to do. |
take into account that automated builds use cmake 3.12 & 3.15 . |
Yes, but this is the case right now (with cmake 2.8.7+) as well - without any problems. Should a problem occur related to this in the future, we can then address it and raise the minimum requirement just as necessary can't we? |
Looking at this again, I find that CentOS 7 really is the only system that would hold us on cmake 2.8.12.2, otherwise we would be able to go straight up to 3.4.2 making use of the newer code base. Also I found from research that CentOS is used in scientific and commercial environments, yes, but mainly in the role as a server or workstation for a specific task. It appears related to enterprise environments than to faster paced R&D. Thus the field of µC does not quite seem to address this use case. So we may not loose as much here as I thought we possibly would before. |
So we'll likely go to the latest available version for the windows compilation from source and consider the proposal above for the package based systems. |
@slyshykO: Are you fine with this? |
cmake 3.4 is more better than 2.8 |
Closed with commit 27aa888. |
- Added info on version support - Updated compiling instructions - Updated minGW-w64 gcc-TC to v8.1.0 - Minor formatting fixes (Closes stlink-org#896, stlink-org#897, stlink-org#899)
Along with defining new minimum system requirements for
libusb
(#897), it appears useful to take a similar approach forcmake
. Again I did some small research on this topic to find out about the current state of support by various distributions currently maintained.Here is the result from https://pkgs.org/search/?q=cmake (as of Mar 2020):
3.17.0
3.16.x
3.15.x
3.14.x
3.13.x
3.11.x
3.10.x
3.0.x < ... < 3.7.2
... older cmake versions --> would no longer be supported
Looking at this should go to
cmake
3.4.2 as the minimum required version to ensure widespread compatibility together with having the possibility to use the more recent 3.x codebase as well.The text was updated successfully, but these errors were encountered: