You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Jiri Daněk (Jira)" <ji...@apache.org> on 2021/04/13 20:52:00 UTC

[jira] [Updated] (DISPATCH-1942) Use modern idiomatic cmake 3.x

     [ https://issues.apache.org/jira/browse/DISPATCH-1942?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jiri Daněk updated DISPATCH-1942:
---------------------------------
    Description: 
There has been a [CMake modernization PR|https://github.com/apache/qpid-dispatch/pull/288] and an issue DISPATCH-1268. Many CMake modernizations could not be applied due to RHEL 6 support. Both RHEL 6 and 7 bundle cmake 2.8.12.2. Ubuntu and Fedora do not suffer from ancient CMake.

Can we raise the minimum required CMake version without impacting RHEL 7/8?

* There is cmake 3.14.6 and cmake 3.17.5 [available in EPEL|https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/c/] for aarch64 and x86_64, respectively. The full package name (for x86_64) is cmake3-3.17.5-1.el7.x86_64.rpm.
* There is cmake 3.6.2 for RHEL 7 available as part of the llvm-toolset-9-rhel7 repository. The full package name is llvm-toolset-9.0-cmake-3.6.2-12.el7.x86_64.rpm. There is also llvm-toolset-10, but it has the same CMake version in it. [Docs|https://access.redhat.com/documentation/en-us/red_hat_developer_tools/1/html-single/using_llvm_10.0.1_toolset/index].

On the RHEL 8 front, RHEL 8.3 brings cmake-3.11.4-3.el8.x86_64.rpm and it does not have any CMake in its EPEL. Upcoming [RHEL 8.4 is promised to bring CMake 3.18|https://bugzilla.redhat.com/show_bug.cgi?id=1756974].

Given the info I collected above, it seems to me that Dispatch can easily go to CMake 3.11 in short time, and will be able to further leap to CMake 3.12 (the one that [improved locating Python|https://cmake.org/cmake/help/v3.12/release/3.12.html#modules]) when RHEL 8.4 is out. Depending on the situation on other platforms, even newer version than 3.12 might be possible then. IMO we should aim for CMake 3.15, because it improved locating Python (prior versions look for newest Python on entire PATH, since 3.15 its possible to look for first satisfying. That helps with Virtual environments a lot.

It is necessary to check that the version of CMake is also available on AArch64 and on IBM/z.

  was:
There has been a [CMake modernization PR|https://github.com/apache/qpid-dispatch/pull/288] and an issue DISPATCH-1268. Many CMake modernizations could not be applied due to RHEL 6 support. Both RHEL 6 and 7 bundle cmake 2.8.12.2. Ubuntu and Fedora do not suffer from ancient CMake.

Can we raise the minimum required CMake version without impacting RHEL 7/8?

* There is cmake 3.14.6 and cmake 3.17.5 [available in EPEL|https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/c/] for aarch64 and x86_64, respectively. The full package name (for x86_64) is cmake3-3.17.5-1.el7.x86_64.rpm.
* There is cmake 3.6.2 for RHEL 7 available as part of the llvm-toolset-9-rhel7 repository. The full package name is llvm-toolset-9.0-cmake-3.6.2-12.el7.x86_64.rpm. There is also llvm-toolset-10, but it has the same CMake version in it. [Docs|https://access.redhat.com/documentation/en-us/red_hat_developer_tools/1/html-single/using_llvm_10.0.1_toolset/index].

On the RHEL 8 front, RHEL 8.3 brings cmake-3.11.4-3.el8.x86_64.rpm and it does not have any CMake in its EPEL. Upcoming [RHEL 8.4 is promised to bring CMake 3.18|https://bugzilla.redhat.com/show_bug.cgi?id=1756974].

Given the info I collected above, it seems to me that Dispatch can easily go to CMake 3.11 in short time, and will be able to further leap to CMake 3.12 (the one that [improved locating Python|https://cmake.org/cmake/help/v3.12/release/3.12.html#modules]) when RHEL 8.4 is out. Depending on the situation on other platforms, even newer version than 3.12 might be possible then. IMO we should aim for CMake 3.15, because it improved locating Python (prior versions look for newest Python on entire PATH, since 3.15 its possible to look for first satisfying. That helps with Virtual environments a lot.


> Use modern idiomatic cmake 3.x
> ------------------------------
>
>                 Key: DISPATCH-1942
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-1942
>             Project: Qpid Dispatch
>          Issue Type: Improvement
>    Affects Versions: 1.15.0
>            Reporter: Jiri Daněk
>            Assignee: Jiri Daněk
>            Priority: Major
>
> There has been a [CMake modernization PR|https://github.com/apache/qpid-dispatch/pull/288] and an issue DISPATCH-1268. Many CMake modernizations could not be applied due to RHEL 6 support. Both RHEL 6 and 7 bundle cmake 2.8.12.2. Ubuntu and Fedora do not suffer from ancient CMake.
> Can we raise the minimum required CMake version without impacting RHEL 7/8?
> * There is cmake 3.14.6 and cmake 3.17.5 [available in EPEL|https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/c/] for aarch64 and x86_64, respectively. The full package name (for x86_64) is cmake3-3.17.5-1.el7.x86_64.rpm.
> * There is cmake 3.6.2 for RHEL 7 available as part of the llvm-toolset-9-rhel7 repository. The full package name is llvm-toolset-9.0-cmake-3.6.2-12.el7.x86_64.rpm. There is also llvm-toolset-10, but it has the same CMake version in it. [Docs|https://access.redhat.com/documentation/en-us/red_hat_developer_tools/1/html-single/using_llvm_10.0.1_toolset/index].
> On the RHEL 8 front, RHEL 8.3 brings cmake-3.11.4-3.el8.x86_64.rpm and it does not have any CMake in its EPEL. Upcoming [RHEL 8.4 is promised to bring CMake 3.18|https://bugzilla.redhat.com/show_bug.cgi?id=1756974].
> Given the info I collected above, it seems to me that Dispatch can easily go to CMake 3.11 in short time, and will be able to further leap to CMake 3.12 (the one that [improved locating Python|https://cmake.org/cmake/help/v3.12/release/3.12.html#modules]) when RHEL 8.4 is out. Depending on the situation on other platforms, even newer version than 3.12 might be possible then. IMO we should aim for CMake 3.15, because it improved locating Python (prior versions look for newest Python on entire PATH, since 3.15 its possible to look for first satisfying. That helps with Virtual environments a lot.
> It is necessary to check that the version of CMake is also available on AArch64 and on IBM/z.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org