From 5e3b610613b22ba3a7c0041488c19302efbfaca2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Wed, 1 Jun 2022 17:38:19 +0200 Subject: [PATCH] doc: remove Clang 3.8 references, advertise Clang 6+ as supported. Hey, do you also remember the times where people were excited to upgrade from Clang 3.6 to 3.7, GCC 4.7 to 4.8 or Firefox 1.1 to Firefox 1.5? Not Clang 12 to 14, GCC 10 to 13 or Chrome 102 to 126. --- doc/building.dox | 5 ++-- doc/changelog.dox | 3 +++ src/Magnum/ShaderTools/AbstractConverter.cpp | 8 +++---- src/Magnum/Trade/AbstractImageConverter.cpp | 24 +++++++++---------- src/Magnum/Trade/AbstractSceneConverter.cpp | 2 +- .../Trade/Test/AbstractSceneConverterTest.cpp | 2 +- .../TgaImageConverter/TgaImageConverter.cpp | 2 +- 7 files changed, 25 insertions(+), 21 deletions(-) diff --git a/doc/building.dox b/doc/building.dox index bcc11f585..a3ece2914 100644 --- a/doc/building.dox +++ b/doc/building.dox @@ -38,8 +38,9 @@ namespace Magnum { Minimal set of tools and libraries required for building is: - C++ compiler with good C++11 support. Compilers which are tested to have - everything needed are **GCC** >= 4.8.1, **Clang** >= 3.3 and **MSVC** - >= 2015. On Windows you can also use **Clang-CL** or **MinGW-w64**. + everything needed are **GCC** >= 4.8.1, **Clang** >= 6 (or equivalently + **Apple Clang** >= 10) and **MSVC** >= 2015. On Windows you can also use + **Clang-CL** or **MinGW-w64**. - **CMake** >= 3.4 - **Corrade** --- Plugin management and utility library. See @ref building-corrade "Corrade download and installation guide" for more diff --git a/doc/changelog.dox b/doc/changelog.dox index dfa11c6ff..be6643a91 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -569,6 +569,9 @@ See also: @subsection changelog-latest-buildsystem Build system +- The oldest supported Clang version is now 6.0 (available on Ubuntu 18.04), + or equivalently Apple Clang 10.0 (Xcode 10). Oldest supported GCC version + is still 4.8. - Fixed compilation of the @ref GL library on macOS with ANGLE --- new code assumed macOS is always desktop GL (see [mosra/magnum#452](https://github.com/mosra/magnum/issues/452)) - Avoiding conflicts of Magnum's own GL headers with `GLES3/gl32.h` (see diff --git a/src/Magnum/ShaderTools/AbstractConverter.cpp b/src/Magnum/ShaderTools/AbstractConverter.cpp index b3f0c49b6..54b527bd9 100644 --- a/src/Magnum/ShaderTools/AbstractConverter.cpp +++ b/src/Magnum/ShaderTools/AbstractConverter.cpp @@ -287,7 +287,7 @@ AbstractConverter::convertDataToData(const Stage stage, const Containers::ArrayV CORRADE_ASSERT(!out || !out->deleter(), "ShaderTools::AbstractConverter::convertDataToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::OptionalButAlsoArray{std::move(out)}; #else @@ -435,7 +435,7 @@ AbstractConverter::convertFileToData(const Stage stage, const Containers::String CORRADE_ASSERT(!out || !out->deleter(), "ShaderTools::AbstractConverter::convertFileToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::OptionalButAlsoArray{std::move(out)}; #else @@ -479,7 +479,7 @@ AbstractConverter::linkDataToData(const Containers::ArrayViewdeleter(), "ShaderTools::AbstractConverter::linkDataToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::OptionalButAlsoArray{std::move(out)}; #else @@ -693,7 +693,7 @@ AbstractConverter::linkFilesToData(const Containers::ArrayViewdeleter(), "ShaderTools::AbstractConverter::linkFilesToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::OptionalButAlsoArray{std::move(out)}; #else diff --git a/src/Magnum/Trade/AbstractImageConverter.cpp b/src/Magnum/Trade/AbstractImageConverter.cpp index bfcc85b76..e21af8147 100644 --- a/src/Magnum/Trade/AbstractImageConverter.cpp +++ b/src/Magnum/Trade/AbstractImageConverter.cpp @@ -308,7 +308,7 @@ AbstractImageConverter::convertToData(const ImageView1D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -341,7 +341,7 @@ AbstractImageConverter::convertToData(const ImageView2D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -381,7 +381,7 @@ AbstractImageConverter::convertToData(const ImageView3D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -414,7 +414,7 @@ AbstractImageConverter::convertToData(const CompressedImageView1D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -447,7 +447,7 @@ AbstractImageConverter::convertToData(const CompressedImageView2D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -487,7 +487,7 @@ AbstractImageConverter::convertToData(const CompressedImageView3D& image) { Containers::Optional> out = doConvertToData(image); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -603,7 +603,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -642,7 +642,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -681,7 +681,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -720,7 +720,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -759,7 +759,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else @@ -798,7 +798,7 @@ AbstractImageConverter::convertToData(const Containers::ArrayView> out = doConvertToData(imageLevels); CORRADE_ASSERT(!out || !out->deleter(), "Trade::AbstractImageConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::ImageConverterOptionalButAlsoArray{std::move(out)}; #else diff --git a/src/Magnum/Trade/AbstractSceneConverter.cpp b/src/Magnum/Trade/AbstractSceneConverter.cpp index b4c795855..309ab7807 100644 --- a/src/Magnum/Trade/AbstractSceneConverter.cpp +++ b/src/Magnum/Trade/AbstractSceneConverter.cpp @@ -163,7 +163,7 @@ AbstractSceneConverter::convertToData(const MeshData& mesh) { CORRADE_ASSERT(!out || !out->deleter() || out->deleter() == static_cast(Implementation::nonOwnedArrayDeleter) || out->deleter() == ArrayAllocator::deleter, "Trade::AbstractSceneConverter::convertToData(): implementation is not allowed to use a custom Array deleter", {}); - /* GCC 4.8 and Clang 3.8 need an explicit conversion here */ + /* GCC 4.8 needs an explicit conversion here */ #ifdef MAGNUM_BUILD_DEPRECATED return Implementation::SceneConverterOptionalButAlsoArray{std::move(out)}; #else diff --git a/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp b/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp index 6c2a2e287..06761c6c9 100644 --- a/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp +++ b/src/Magnum/Trade/Test/AbstractSceneConverterTest.cpp @@ -516,7 +516,7 @@ void AbstractSceneConverterTest::convertMeshToDataGrowableDeleter() { Containers::Array out; Containers::arrayAppend(out, {'h', 'e', 'l', 'l', 'o'}); - /* GCC 4.8 and Clang 3.8 need extra help here */ + /* GCC 4.8 needs extra help here */ return Containers::optional(std::move(out)); } } converter; diff --git a/src/MagnumPlugins/TgaImageConverter/TgaImageConverter.cpp b/src/MagnumPlugins/TgaImageConverter/TgaImageConverter.cpp index 258df9f43..2a9863fb8 100644 --- a/src/MagnumPlugins/TgaImageConverter/TgaImageConverter.cpp +++ b/src/MagnumPlugins/TgaImageConverter/TgaImageConverter.cpp @@ -86,7 +86,7 @@ Containers::Optional> TgaImageConverter::doConvertToData pixel = Math::gather<'b', 'g', 'r', 'a'>(pixel); } - /* GCC 4.8 and Clang 3.8 need extra help here */ + /* GCC 4.8 needs extra help here */ return Containers::optional(std::move(data)); }