Title: Improved documentation of supported toolchains by firewave · Pull Request #3596 · cppcheck-opensource/cppcheck · GitHub
Open Graph Title: Improved documentation of supported toolchains by firewave · Pull Request #3596 · cppcheck-opensource/cppcheck
X Title: Improved documentation of supported toolchains by firewave · Pull Request #3596 · cppcheck-opensource/cppcheck
Description: We should specify and properly check the tooling we (cl)aim to support. Please feel free to post any additions/omissions as well as opinions and open talking points. At the end I would like to add this list to the readme.md or s separate file we link form there. Here's a short overview: Build systems (minimum): GNU Make CMake 2.8 3.5 Qt qmake Microsoft Visual Studio 2013 2015 Compilers (minimum): GCC 4.6 4.8 5.1 Clang 2.9 3.5 Microsoft Visual Studio Compiler 18 (VS2013) 19.0 (VS2015) Qt: 5.6 5.9.9 5.15.2 6.2+ Python: 2.7 3.4+ 3.6+ Distros/OSes (initial summary to determine tasks): Windows XP(?) Windows 7(?) Windows 10/11 any build system any compiler any(?) Qt version (https://download.qt.io/archive/qt/) any Python version Ubuntu 12.04 (requires EOL repos to install packages) CMake 2.8.7 GCC 4.6.3 Clang 3.0 no Qt5 Python 2.7.3/3.2.3 Ubuntu 14.04 CMake 2.8.12 GCC 4.8.2 Clang 3.4 Qt 5.2.1 Python 2.7.6/3.4.3 Ubuntu 16.04 CMake 3.5.1 GCC 5.4.0 Clang 3.8 Qt 5.5.1 Python 2.7.12/3.5.2 Ubuntu 18.04 CMake 3.10.2 GCC 7.5.0 Clang ? Qt ? Python ?/? Ubuntu 20.04 CMake 3.16.3 GCC 9.3.0 Clang 10.0.0 Qt 5.12.8/no Qt6 Python ?/3.8.2 Ubuntu 22.04 CMake 3.22.1 GCC 11.2.0 (9.5.0) Clang 14.0.0 (11.1.0) Qt 5.15.3/6.2.4 Python ?/3.10.4 Ubuntu 24.04 CMake 3.28.3 GCC 13.2.0 (10.5.0) Clang 18.1.3 (14.0.6) Qt 5.15.13/6.4.2 Python ?/3.12.3 Debian (version?) Fedora (version?) openSUSE (version?) ArchLinux (version?) FreeBSD (version?) Solaris (version?) Oracle Linux 8 CMake 3.26.5 (3.11.4) GCC 8.5.0 (15.2.1) Clang ? (7.0.1 - 21.1.8) Qt 5.13.3/no Qt6 Python 2.7.18/3.6.8 (3.12.13) Kali Linux CentOS 7 CMake 2.8.12 GCC 4.8.5 Clang 3.4.2 Qt 5.9.7 Python 2.7.5/3.6.8 OS/2 (version?) Cygwin MinGW Raspberry Pi OS (version?) MacOS 10.15 Platforms: x86_64 x86 Third-party libraries: PCRE (https://www.pcre.org/ - https://sourceforge.net/projects/pcre) TinyXML2 (https://github.com/leethomason/tinyxml2) PicoJSON (https://github.com/kazuho/picojson) Boost (https://www.boost.org) CI missing: GCC < 4.8 Visual Studio 2013/2015/2017/2022 Qt < 5.9 Clang (explicit build) (no need for explicit build - implicitly done with clang-tidy which also provides compiler warnings) Ubuntu 12.04 (for GCC 4.6 via ppa) (no longer necessary since we raised the minimum GCC version to 4.8) Python 3.4 (no longer available) Visual Studio with msbuild (explicit build - implicitly done in release build - lost recently in regular CI) Windows Installer (only build on release tags) newer MacOS versions failure on compiler warnings (Clang/Visual Studio only currently) optimized GCC build optimized Clang build MinGW cross-compilation Currently not working: MSYS2 on Windows Visual Studio 2015 build - broken by ae86536 Ubuntu 14.04 GUI build - #3596 (comment) Ubuntu 16.04 GUI build with CMake - #3596 (comment) Misc: missing build system feature parity To be discussed: remove support for older Visual Studio versions remove support for EOL Python 3.x versions (depend on platform?) remove support for EOL Qt versions (depended on platform?) remove support for some build systems - currently none of them implement all build features we offer remove Visual Studio project files from repository remove qmake support remove "support" for Ubuntu 12.04 (and similar platforms) since it doesn't even have a proper CMake, Qt5 and Python 3.x version raise the minimum GCC version (seems like we won't be able to run any system with it in the CI) remove Python 2.x support since all platforms seem to have at least Python 3.4 remove support for EOS Ubuntu versions Tasks: raise minimum supported GCC version to 4.8 - #3768 add Python 3.4 to CI - #3683 integrate all Makefile targets/functionality into CMake - #4010 / #4026 integrate all qmake targets/functionality into CMake - #6818 build with Qt version provided by platform on Linux - #3729 build with Python version provided by platform on Linux - #3776 determine actual minimum supported Clang version - #5398 create Windows portable archive (release files without installer) - #4669 remove defines used to control usage of C++11 features remove OVERRIDE / FINAL - #3767 use feature test macros (https://en.cppreference.com/w/cpp/feature_test) for remaining ones remove unnecessary __cplusplus checks - #4036 / 81efa0f prefer Python 3.x over Python 2.x - #3776 / #3812 / #6369 restore msbuild Visual Studio build in CI - #3730 add Visual Studio 2022 to CI - #3730 align configuration of CMake and Visual Studio project files - #4020 add newer MacOs versions to CI - #4117 fail build on compiler warnings - #4036 / #6982 move remaining stuff from defunct Travis configuration to GitHub Actions - #3715 / #7100 remove support for EOL Qt versions - #4957 / #6678 build with minimum supported GCC build with minimum supported Clang
Open Graph Description: We should specify and properly check the tooling we (cl)aim to support. Please feel free to post any additions/omissions as well as opinions and open talking points. At the end I would like to add ...
X Description: We should specify and properly check the tooling we (cl)aim to support. Please feel free to post any additions/omissions as well as opinions and open talking points. At the end I would like to add ...
Opengraph URL: https://github.com/cppcheck-opensource/cppcheck/pull/3596
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/files(.:format) |
| route-controller | pull_requests |
| route-action | files |
| fetch-nonce | v2:85d70d33-8732-7136-871e-325ff18a83f5 |
| current-catalog-service-hash | ae870bc5e265a340912cde392f23dad3671a0a881730ffdadd82f2f57d81641b |
| request-id | CC5C:11DE2:C844F9:111FDE0:6A4D56EB |
| html-safe-nonce | 2e5c7ddeb4cf9ac8f9693082943354950ad6e74474c18e67b7f34be8bd847bd3 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDQzVDOjExREUyOkM4NDRGOToxMTFGREUwOjZBNEQ1NkVCIiwidmlzaXRvcl9pZCI6IjI0MzQwODY4MTMxNTA1NjYxMjMiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | f32be56e5a5a15ac053fa1e7f5a8201b6b77b2c5361bf9017e1a7a007374d580 |
| hovercard-subject-tag | pull_request:794701111 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/cppcheck-opensource/cppcheck/pull/3596/files |
| twitter:image | https://avatars.githubusercontent.com/u/242857?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/242857?s=400&v=4 |
| og:image:alt | We should specify and properly check the tooling we (cl)aim to support. Please feel free to post any additions/omissions as well as opinions and open talking points. At the end I would like to add ... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 2a1443ff9733a3016431263ea73c93d8fe00c195eb4a7670ac30e7848f045441 |
| turbo-cache-control | no-preview |
| diff-view | unified |
| go-import | github.com/cppcheck-opensource/cppcheck git https://github.com/cppcheck-opensource/cppcheck.git |
| octolytics-dimension-user_id | 278097703 |
| octolytics-dimension-user_login | cppcheck-opensource |
| octolytics-dimension-repository_id | 143131 |
| octolytics-dimension-repository_nwo | cppcheck-opensource/cppcheck |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 143131 |
| octolytics-dimension-repository_network_root_nwo | cppcheck-opensource/cppcheck |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | true |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | f3bdd3157ea1f0fd738d408eceeead721acf1dc3 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width