[gentoo-commits] repo/gentoo:master commit in: dev-cpp/catch/files/, dev-cpp/catch/

2022-02-26 Thread David Seifert
commit: 51d418d15538531b3c3d5c5ab48fd9bb1731ee9f
Author: David Seifert  gentoo  org>
AuthorDate: Sat Feb 26 14:31:07 2022 +
Commit: David Seifert  gentoo  org>
CommitDate: Sat Feb 26 14:31:07 2022 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51d418d1

dev-cpp/catch: add patch for brittle output test

Closes: https://bugs.gentoo.org/834066
Signed-off-by: David Seifert  gentoo.org>

 dev-cpp/catch/catch-2.13.8.ebuild |  2 ++
 dev-cpp/catch/files/catch-2.13.8-musl-tests.patch | 24 +++
 2 files changed, 26 insertions(+)

diff --git a/dev-cpp/catch/catch-2.13.8.ebuild 
b/dev-cpp/catch/catch-2.13.8.ebuild
index a57a9d4e9d0f..9711bc919ca8 100644
--- a/dev-cpp/catch/catch-2.13.8.ebuild
+++ b/dev-cpp/catch/catch-2.13.8.ebuild
@@ -28,6 +28,8 @@ RESTRICT="!test? ( test )"
 
 BDEPEND="test? ( ${PYTHON_DEPS} )"
 
+PATCHES=( "${FILESDIR}"/${P}-musl-tests.patch )
+
 pkg_setup() {
use test && python-any-r1_pkg_setup
 }

diff --git a/dev-cpp/catch/files/catch-2.13.8-musl-tests.patch 
b/dev-cpp/catch/files/catch-2.13.8-musl-tests.patch
new file mode 100644
index ..86c60c15f34d
--- /dev/null
+++ b/dev-cpp/catch/files/catch-2.13.8-musl-tests.patch
@@ -0,0 +1,24 @@
+From 3e88ccff3ba573fb6d1ab746596411eebe310a6b Mon Sep 17 00:00:00 2001
+From: John Zimmermann 
+Date: Thu, 31 Dec 2020 16:24:16 +0100
+Subject: [PATCH] Do not match exact amount of spaces for errno macro expansion
+ in approvalTests.py
+
+E.g. musl libc expands errno() to __errno_location() without a space between, 
glibc has 1 space.
+---
+ scripts/approvalTests.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/scripts/approvalTests.py b/scripts/approvalTests.py
+index f8b9425c7c..73e9b83239 100755
+--- a/scripts/approvalTests.py
 b/scripts/approvalTests.py
+@@ -44,7 +44,7 @@
+ 
+ # errno macro expands into various names depending on platform, so we need to 
fix them up as well
+ errnoParser = re.compile(r'''
+-\(\*__errno_location\ \(\)\)
++\(\*__errno_location\s*\(\)\)
+ |
+ \(\*__error\(\)\)
+ |



[gentoo-commits] repo/gentoo:master commit in: dev-cpp/catch/files/, dev-cpp/catch/

2021-12-28 Thread Sam James
commit: 7571d22a49cdce0626968667e68638ff2111471e
Author: Sam James  gentoo  org>
AuthorDate: Tue Dec 28 23:49:38 2021 +
Commit: Sam James  gentoo  org>
CommitDate: Wed Dec 29 00:13:51 2021 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7571d22a

dev-cpp/catch: patch for glibc-2.34

Kind of cheesy patch but it is what it is, Catch1 is dead anyway.

Closes: https://bugs.gentoo.org/803962
Signed-off-by: Sam James  gentoo.org>

 dev-cpp/catch/catch-1.12.2-r1.ebuild   | 44 ++
 .../files/catch-1.12.2-glibc-2.34-sigstksz.patch   | 67 ++
 2 files changed, 111 insertions(+)

diff --git a/dev-cpp/catch/catch-1.12.2-r1.ebuild 
b/dev-cpp/catch/catch-1.12.2-r1.ebuild
new file mode 100644
index ..9120c50ed593
--- /dev/null
+++ b/dev-cpp/catch/catch-1.12.2-r1.ebuild
@@ -0,0 +1,44 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake
+
+if [[ ${PV} == * ]]; then
+   inherit git-r3
+   EGIT_REPO_URI="https://github.com/catchorg/Catch2.git";
+   EGIT_BRANCH="Catch1.x"
+else
+   MY_P=${PN^}-${PV}
+   SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> 
${MY_P}.tar.gz"
+   KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+
+   S="${WORKDIR}/${PN^}2-${PV}"
+fi
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/catchorg/Catch2";
+
+LICENSE="Boost-1.0"
+SLOT="1"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="!https://src.fedoraproject.org/rpms/catch1/raw/rawhide/f/catch1-sigstksz.patch
+https://bugs.gentoo.org/803962
+
+commit 34650cd9ea2f7e4aa1e61b84ecf9913b87870680
+Author: Tom Hughes 
+Date:   Fri Feb 19 10:45:49 2021 +
+
+Patch for non-constant SIGSTKSZ
+
+--- a/include/internal/catch_fatal_condition.hpp
 b/include/internal/catch_fatal_condition.hpp
+@@ -136,7 +136,7 @@ namespace Catch {
+ static bool isSet;
+ static struct sigaction oldSigActions 
[sizeof(signalDefs)/sizeof(SignalDefs)];
+ static stack_t oldSigStack;
+-static char altStackMem[SIGSTKSZ];
++static char altStackMem[32768];
+ 
+ static void handleSignal( int sig ) {
+ std::string name = "";
+@@ -156,7 +156,7 @@ namespace Catch {
+ isSet = true;
+ stack_t sigStack;
+ sigStack.ss_sp = altStackMem;
+-sigStack.ss_size = SIGSTKSZ;
++sigStack.ss_size = 32768;
+ sigStack.ss_flags = 0;
+ sigaltstack(&sigStack, &oldSigStack);
+ struct sigaction sa = { 0 };
+@@ -188,7 +188,7 @@ namespace Catch {
+ bool FatalConditionHandler::isSet = false;
+ struct sigaction 
FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = 
{};
+ stack_t FatalConditionHandler::oldSigStack = {};
+-char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
++char FatalConditionHandler::altStackMem[32768] = {};
+ 
+ 
+ } // namespace Catch
+--- a/single_include/catch.hpp
 b/single_include/catch.hpp
+@@ -6540,7 +6540,7 @@ namespace Catch {
+ static bool isSet;
+ static struct sigaction oldSigActions 
[sizeof(signalDefs)/sizeof(SignalDefs)];
+ static stack_t oldSigStack;
+-static char altStackMem[SIGSTKSZ];
++static char altStackMem[32768];
+ 
+ static void handleSignal( int sig ) {
+ std::string name = "";
+@@ -6560,7 +6560,7 @@ namespace Catch {
+ isSet = true;
+ stack_t sigStack;
+ sigStack.ss_sp = altStackMem;
+-sigStack.ss_size = SIGSTKSZ;
++sigStack.ss_size = 32768;
+ sigStack.ss_flags = 0;
+ sigaltstack(&sigStack, &oldSigStack);
+ struct sigaction sa = { 0 };
+@@ -6591,7 +6591,7 @@ namespace Catch {
+ bool FatalConditionHandler::isSet = false;
+ struct sigaction 
FatalConditionHandler::oldSigActions[sizeof(signalDefs)/sizeof(SignalDefs)] = 
{};
+ stack_t FatalConditionHandler::oldSigStack = {};
+-char FatalConditionHandler::altStackMem[SIGSTKSZ] = {};
++char FatalConditionHandler::altStackMem[32768] = {};
+ 
+ } // namespace Catch
+ 



[gentoo-commits] repo/gentoo:master commit in: dev-cpp/catch/files/, dev-cpp/catch/

2018-08-25 Thread David Seifert
commit: 9edabe5400b81e731dcadefaaf2e8ba6e5f36a9b
Author: David Seifert  gentoo  org>
AuthorDate: Sat Aug 25 21:24:23 2018 +
Commit: David Seifert  gentoo  org>
CommitDate: Sat Aug 25 21:24:23 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9edabe54

dev-cpp/catch: Version bump to 2.3.0

Package-Manager: Portage-2.3.44, Repoman-2.3.10

 dev-cpp/catch/Manifest |  1 +
 dev-cpp/catch/catch-2.3.0.ebuild   | 48 ++
 .../catch/files/catch-2.3.0-python-automagic.patch | 25 +++
 3 files changed, 74 insertions(+)

diff --git a/dev-cpp/catch/Manifest b/dev-cpp/catch/Manifest
index dcfd1f2c0ee..dc01d5f3e0e 100644
--- a/dev-cpp/catch/Manifest
+++ b/dev-cpp/catch/Manifest
@@ -1,2 +1,3 @@
 DIST Catch-1.11.0.tar.gz 376132 BLAKE2B 
23a1a6292dd91ec1c71923b4902b42b59ff6be5227b666f68ef0dc33756a58a63edd70a9b139dda0b1860c2b7a0cfec7ab9262e6447eff3184cfe28ea9b0aa77
 SHA512 
33085c2671f78c7562eace909564b2730eabcaf4490cd463402e66ab4ac2be1fe4fe360916c11aa589ba4a010622444126ee2ae747783b5869b5d7276361f132
 DIST Catch2-2.2.2.tar.gz 497244 BLAKE2B 
d5073d56b9399bd7f50bafc7758e60e31ba4434e229f92ca92cd04257f4a54cec925ad3180cc964c4f69edbaa7fc14f8af8e828421e2bb2b4f6c59eaea5cc06d
 SHA512 
ab91036c6c3ace087d0382ce99f26b2c30a4b75d52f285619ca282a618470fe388afe47495f3b2764268d600c6834c60ba464483d06f3a1c4316c099477c8e38
+DIST Catch2-2.3.0.tar.gz 506374 BLAKE2B 
f692eb0933ca578edf0f15cb83139d2fab03390b3980a686ea495101165d612c848b642ad1e7233bce5bb164c80958c9cbfbc229e72a1ae6947aa4dffdf27556
 SHA512 
e9a089b504c339e87bda0fb1a4040d9d19c932a4bc7dca41bdad6edfcf8c428f4152ff1e0c898dfdf6b20bd5d901c343bed00ad89351fa5182f3c106e0fb4b03

diff --git a/dev-cpp/catch/catch-2.3.0.ebuild b/dev-cpp/catch/catch-2.3.0.ebuild
new file mode 100644
index 000..94a870ee7ce
--- /dev/null
+++ b/dev-cpp/catch/catch-2.3.0.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 python3_{5,6,7} )
+
+: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
+inherit cmake-utils python-any-r1
+
+if [[ ${PV} == * ]]; then
+   inherit git-r3
+   EGIT_REPO_URI="https://github.com/catchorg/Catch2.git";
+else
+   MY_P=${PN^}2-${PV}
+   SRC_URI="https://github.com/catchorg/Catch2/archive/v${PV}.tar.gz -> 
${MY_P}.tar.gz"
+   KEYWORDS="~amd64 ~x86"
+
+   S=${WORKDIR}/${MY_P}
+fi
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/catchorg/Catch2";
+
+LICENSE="Boost-1.0"
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DEPEND="test? ( ${PYTHON_DEPS} )"
+
+PATCHES=(
+   "${FILESDIR}"/${PN}-2.3.0-python-automagic.patch
+)
+
+pkg_setup() {
+   use test && python-any-r1_pkg_setup
+}
+
+src_configure() {
+   local mycmakeargs=(
+   -DCATCH_ENABLE_WERROR=OFF
+   -DBUILD_TESTING=$(usex test)
+   -DCMAKE_INSTALL_DOCDIR="share/doc/${PF}"
+   -DPYTHON_EXECUTABLE="${PYTHON}"
+   )
+   cmake-utils_src_configure
+}

diff --git a/dev-cpp/catch/files/catch-2.3.0-python-automagic.patch 
b/dev-cpp/catch/files/catch-2.3.0-python-automagic.patch
new file mode 100644
index 000..c7fa4c6d22f
--- /dev/null
+++ b/dev-cpp/catch/files/catch-2.3.0-python-automagic.patch
@@ -0,0 +1,25 @@
+--- a/CMakeLists.txt
 b/CMakeLists.txt
+@@ -36,7 +36,11 @@
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} 
/ENTRY:wmainCRTStartup")
+ endif()
+ 
++find_package(PythonInterp)
+ if (BUILD_TESTING AND CATCH_BUILD_TESTING AND NOT_SUBPROJECT)
++if (NOT PYTHONINTERP_FOUND)
++message(FATAL_ERROR "Python not found, but required for tests")
++endif()
+ add_subdirectory(projects)
+ endif()
+ 
+--- a/projects/CMakeLists.txt
 b/projects/CMakeLists.txt
+@@ -317,7 +317,7 @@
+ set_tests_properties(NoTest PROPERTIES PASS_REGULAR_EXPRESSION "No test cases 
matched")
+ 
+ # AppVeyor has a Python 2.7 in path, but doesn't have .py files as 
autorunnable
+-add_test(NAME ApprovalTests COMMAND python 
${CATCH_DIR}/scripts/approvalTests.py $)
++add_test(NAME ApprovalTests COMMAND ${PYTHON_EXECUTABLE} 
${CATCH_DIR}/scripts/approvalTests.py $)
+ set_tests_properties(ApprovalTests PROPERTIES FAIL_REGULAR_EXPRESSION 
"Results differed")
+ 
+ if (CATCH_USE_VALGRIND)