summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schauer Marin Rodrigues <josch@debian.org>2023-10-28 07:04:53 +0200
committerJohannes Schauer Marin Rodrigues <josch@debian.org>2023-10-28 07:39:57 +0200
commite003215356b1edd8120a856e7af64e246e76f50c (patch)
treea5ccf810bb5b7f99f7be0cd8be0b8c96e3ae533c
parent421589d4b9bc1b62f4e62edbe5599de40cb2e44c (diff)
add patch for catch2 v3
closes: #1054682
-rw-r--r--debian/patches/catch2v3240
-rw-r--r--debian/patches/series1
2 files changed, 241 insertions, 0 deletions
diff --git a/debian/patches/catch2v3 b/debian/patches/catch2v3
new file mode 100644
index 0000000..cead37d
--- /dev/null
+++ b/debian/patches/catch2v3
@@ -0,0 +1,240 @@
+--- a/fuzzylite/test/BenchmarkTest.cpp
++++ b/fuzzylite/test/BenchmarkTest.cpp
+@@ -16,7 +16,7 @@
+
+ #include "fl/Benchmark.h"
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ #include <vector>
+--- a/fuzzylite/test/MainTest.cpp
++++ b/fuzzylite/test/MainTest.cpp
+@@ -16,7 +16,7 @@
+
+ #define CATCH_CONFIG_RUNNER
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+
+ #include "fl/Headers.h"
+
+--- a/fuzzylite/test/QuickTest.cpp
++++ b/fuzzylite/test/QuickTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/activation/ThresholdTest.cpp
++++ b/fuzzylite/test/activation/ThresholdTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/hedge/HedgeFunctionTest.cpp
++++ b/fuzzylite/test/hedge/HedgeFunctionTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/imex/FldExporterTest.cpp
++++ b/fuzzylite/test/imex/FldExporterTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/imex/FllImporterTest.cpp
++++ b/fuzzylite/test/imex/FllImporterTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/imex/RScriptExporterTest.cpp
++++ b/fuzzylite/test/imex/RScriptExporterTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+ #include <fstream>
+
+--- a/fuzzylite/test/norm/NormFunctionTest.cpp
++++ b/fuzzylite/test/norm/NormFunctionTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/term/AggregatedTest.cpp
++++ b/fuzzylite/test/term/AggregatedTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/term/DiscreteTest.cpp
++++ b/fuzzylite/test/term/DiscreteTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/term/FunctionTest.cpp
++++ b/fuzzylite/test/term/FunctionTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+@@ -70,7 +70,7 @@ namespace fl {
+ CHECK_THROWS(f.parse(text)->evaluate(&f.variables));
+
+ text = "~5 *4/sin(~pi/2)";
+- CHECK(f.parse(text)->evaluate(&f.variables) == Approx(20));
++ CHECK(f.parse(text)->evaluate(&f.variables) == Catch::Approx(20));
+
+ f.load(text);
+
+--- a/fuzzylite/test/term/TrapezoidTest.cpp
++++ b/fuzzylite/test/term/TrapezoidTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/term/TriangleTest.cpp
++++ b/fuzzylite/test/term/TriangleTest.cpp
+@@ -14,7 +14,7 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+ namespace fl {
+--- a/fuzzylite/test/variable/VariableTest.cpp
++++ b/fuzzylite/test/variable/VariableTest.cpp
+@@ -14,13 +14,15 @@
+ fuzzylite is a registered trademark of FuzzyLite Limited.
+ */
+
+-#include "catch2/catch.hpp"
++#include "catch2/catch_all.hpp"
+ #include "fl/Headers.h"
+
+-#include <algorithm> // std::random_shuffle
++#include <algorithm> // std::shuffle
+
+ namespace fl {
+
++ auto rng = std::default_random_engine{ std::random_device{}() };
++
+ /**
+ * Tests: variable/Variable
+ *
+@@ -33,7 +35,7 @@ namespace fl {
+ for (int i = 0; i <= 20; ++i) {
+ variable.addTerm(new Constant(Op::str(i), i - 10));
+ }
+- std::random_shuffle(variable.terms().begin(), variable.terms().end());
++ std::shuffle(variable.terms().begin(), variable.terms().end(), rng);
+ FL_DBG(variable.toString());
+ REQUIRE(variable.numberOfTerms() == 21);
+ variable.sort();
+@@ -53,7 +55,7 @@ namespace fl {
+ for (int i = 0; i <= 20; ++i) {
+ variable.addTerm(new Triangle(Op::str(i), i - 1, i, i + 1));
+ }
+- std::random_shuffle(variable.terms().begin(), variable.terms().end());
++ std::shuffle(variable.terms().begin(), variable.terms().end(), rng);
+ FL_DBG(variable.toString());
+ REQUIRE(variable.numberOfTerms() == 21);
+ variable.sort();
+--- a/fuzzylite/CMakeLists.txt
++++ b/fuzzylite/CMakeLists.txt
+@@ -53,16 +53,17 @@ if (MSVC AND CMAKE_CXX_COMPILER_VERSION
+ endif()
+ endif()
+
++set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ if(FL_CPP98)
+ add_definitions(-DFL_CPP98)
+ if(NOT MSVC)
+ #Set C++98 by default in Clang and others
+- add_definitions(-std=c++98)
++ set(CMAKE_CXX_STANDARD 98)
+ endif()
+ else()
+ if(NOT MSVC)
+ #Set C++11 by default in Clang and others
+- add_definitions(-std=c++11)
++ set(CMAKE_CXX_STANDARD 11)
+ endif()
+ endif(FL_CPP98)
+
+@@ -96,7 +97,7 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL
+ if (FL_CPP98)
+ #set the default to C++98
+ #Fix error: 'template<class> class std::auto_ptr' is deprecated with gcc-6
+- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++98")
++ set(CMAKE_CXX_STANDARD 98)
+ endif()
+ endif()
+ #In GNU gcc 4.7, Op::str(T, std::size_t(0)) raises a warning of type-limits
+@@ -197,6 +198,7 @@ if(FL_BUILD_TESTS)
+ find_package(Catch2)
+ add_executable(fl-test ${fl-headers} ${fl-tests})
+ target_link_libraries(fl-test Catch2::Catch2)
++ set_target_properties(fl-test PROPERTIES CXX_STANDARD 14)
+ set_target_properties(fl-test PROPERTIES OUTPUT_NAME fuzzylite-tests)
+ set_target_properties(fl-test PROPERTIES OUTPUT_NAME fuzzylite-tests IMPORT_PREFIX tmp-) #To prevent LNK1149 in Windows
+ set_target_properties(fl-test PROPERTIES DEBUG_POSTFIX -debug)
diff --git a/debian/patches/series b/debian/patches/series
index 7a28790..29d162b 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@ fix-tests.patch
fix-tests2.patch
when-testing-large-float-numbers-for-equ.patch
0001-fuzzylite-src-main.cpp-support-building-with-gcc-12.patch
+catch2v3