-
Notifications
You must be signed in to change notification settings - Fork 451
Closed
Description
Even the old and venerable Ubuntu 14.04 (that's currently probably used only on Travis CI) has 4.8 as a default, so I think it's time to drop GCC 4.7. Moreover, Travis has 16.04 now, so it's time to drop CMake 2.8.12 as well.
Things to do:
- check what version of GCC 4.8 has rvalue overloads for
this(it was not 4.8.0, probably4.8.1?)- check if we can use 4.9 or 5 (no we can't, CentOS is on 4.8.5)
- make that version as minimal (update docs in all repos)
- remove
CORRADE_GCC47_COMPATIBILITYfrom everywhere and all related workarounds - update Travis configs to use 4.8 instead of 4.7 (i think they now default to some 5.3, newer than the one that's stock in Ubuntu 14.04)
- verify we can drop CMake 2.8.12 (yes, 14.04 is too old to bother with)
- check if we can use something newer than 3.0
(no, Debian 8 (Jessie) has 3.0.2)3.1, 3.0 has a bug - make that version as minimal, suggest using prebuilt versions on ancient distros
- check if we can use something newer than 3.0
- remove CMake 2.8.12-specific workarounds in all repos
- remove all CMake policies that get activated in
3.03.1 from everywhere(CMP0050 and below)(all of them) -
3.0 supportsnopemessage(DEPRECATED), any use for that (except all the deprecated things from 2016 I'm now removing)? - there is a nasty regression in 3.0 breaking the build because
Corrade::PluginManagerdependency is not propagated upwards, probably need to bump to 3.1 because of that (and make Debian 8 unsupported) ...or is a workaround possible? maybe reverting https://cmake.org/cmake/help/v3.12/policy/CMP0028.html ?nope- 3.1 has 64bit prebuilt binaries, so I can clean up
travis.yml - 3.1 has the
CMP0054property implicit (last one we actually use) -
I could jump all the way to 3.5, since the next oldest supported version is 3.5.1 in 16.04 (Jessie backports have 3.6)nope, play it safe-
3.3 hascompletely orthogonal to thisCROSSCOMPILING_EMULATOR, could be used to avoid dependency on native Corrade for Emscripten (at least) ... which we could support right away because Emscripten needs 3.7 anyway -
3.3 has alsonot important, also could have that version-specificCOMPILE_LANGUAGEgenerator expression, which could help with makingCORRADE_PEDANTIC_FLAGSwork correctly for C sources -
3.5 has imported targets inwho caresFindPNG -
3.5 shows deprecation warnings by defaulti don't have any
-
- 3.1 has 64bit prebuilt binaries, so I can clean up
- be happy because another annoyance got removed 🥃 ✨ 🍻 🎉
- update bootstrap repos as well
This is postponed to after 2018.08 2018.10 to avoid breaking stuff too early. If anyone still needs 4.7, please let me know.
Metadata
Metadata
Assignees
Labels
Projects
Status
Done