Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/xmake.lua
diff options
context:
space:
mode:
authorLeitwolf112026-11-01 00:25:59 +0300
committerLeitwolf112026-11-01 00:25:59 +0300
commitff1da91edffa9ee887e9fe737fcd87ec540dfa60 (patch)
tree25841e888932ebac3a51c4b59f77cea5a87ae5bd /xmake.lua
parent42c68725c816963ec6529dd635d5aaaac23b1c05 (diff)
downloadcatch3-chore/cpp17-descriptions.tar.gz
Say C++17 everywhere the project describes itselfchore/cpp17-descriptions
The move to C++17 left a trail of older claims. The Runner's own .clang-format still said c++20; the result is byte for byte the same under either value. Premake and Xmake still compiled the library as C++20 and the main library as C++14, which meant their CI jobs were not testing the language the project promises. Both now use C++17 for every target. The rest is text: the Meson pkg-config description claimed C++14, comments in the CMake and Meson files explained requirements that no longer exist, .clang-tidy gave C++14 as the reason for two exclusions, issue templates asked for C++20 samples, and the example headers named -std=c++14 and catch2-with-main. The release notes and the migration guide state the C++17 minimum. Doxygen's brief called the project "Catch2's test API", which presents it as Catch2. Meson declared only BSL-1.0; it now names both licenses of the tree. The amalgamated files are regenerated.
Diffstat (limited to 'xmake.lua')
-rw-r--r--xmake.lua8
1 files changed, 2 insertions, 6 deletions
diff --git a/xmake.lua b/xmake.lua
index 85a5b995..fd94efb8 100644
--- a/xmake.lua
+++ b/xmake.lua
@@ -3,7 +3,7 @@
set_project("Catch3")
set_version("0.3.0")
-set_languages("cxx14")
+set_languages("cxx17")
set_warnings("all")
local repository_root = os.projectdir()
@@ -15,11 +15,9 @@ includes("third_party/yyjson", "third_party/pugixml")
-- The Catch2-compatible engine, the Catch3 runner, which replaced Catch2's
-- session, command line and reporters, property testing and snapshots. The
--- library is C++20; the engine's headers still need only C++14 in the code
--- that includes them.
+-- library and the code that includes it need C++17.
target("catch3")
set_kind("static")
- set_languages("cxx20")
on_load(function(target)
-- File I/O is restricted to Xmake's script domain, so generate here
-- rather than while the declarative project file is being evaluated.
@@ -46,14 +44,12 @@ target("catch3")
target("catch3_main")
set_kind("static")
- set_languages("cxx14")
add_files("src/Progmasoft/Catch3/Internal/Main.cpp")
add_deps("catch3")
add_includedirs("src", generated_include, {public = true})
target("ProgmasoftPropertyTests")
set_kind("binary")
- set_languages("cxx20")
add_files(
"tests/Progmasoft/Generators.tests.cpp",
"tests/Progmasoft/Property.tests.cpp",