public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2019-11-10 21:00 Sergei Trofimovich
  0 siblings, 0 replies; 6+ messages in thread
From: Sergei Trofimovich @ 2019-11-10 21:00 UTC (permalink / raw
  To: gentoo-commits

commit:     1970c8483469a84eb94249f30b0423ee298d1bb5
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 10 20:59:51 2019 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sun Nov 10 20:59:51 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1970c848

dev-util/rr: drop old

Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 dev-util/rr/Manifest                       |  3 --
 dev-util/rr/files/rr-4.5.0-sysmacros.patch | 28 --------------
 dev-util/rr/rr-4.5.0.ebuild                | 59 -----------------------------
 dev-util/rr/rr-5.0.0.ebuild                | 60 -----------------------------
 dev-util/rr/rr-5.1.0.ebuild                | 60 -----------------------------
 dev-util/rr/rr-5.2.0.ebuild                | 61 ------------------------------
 6 files changed, 271 deletions(-)

diff --git a/dev-util/rr/Manifest b/dev-util/rr/Manifest
index a220ff84724..34ad1590c2b 100644
--- a/dev-util/rr/Manifest
+++ b/dev-util/rr/Manifest
@@ -1,4 +1 @@
-DIST mozilla-rr-4.5.0.tar.gz 683371 BLAKE2B 1654de3811be4eac40ed751b910aed0ddca2100147e47e2e068f625c607964f98d33033c38cdf3a2146284bc477b08299e3432389342e7b058e331f0b924686f SHA512 8e9b7c6eaa9908e75853b5e19f61954b57e6e5afa7a8b6fe55f31aee36bab6ff315b5c3511d14c93dca5da19055a7879b6f3b9f51c349b1bb9acea130187a5e6
-DIST mozilla-rr-5.0.0.tar.gz 1143119 BLAKE2B b08f8ade8856b03fa94057a8c850000cfacc0722090ac3f7d1c147a3c4e7c2bbfe58a740711495e88476d90eb02c6e9a5b85078dcb4fcf3ed107ad281dd3dcf8 SHA512 aaec0869e68290d5f7b752d02e89fc4f83dd2fce4abf91b36c006eeec97555b7adc69da311eadd48c9891599245305b585ed1a53580f7c616dba401f1592c5f2
-DIST mozilla-rr-5.1.0.tar.gz 1158274 BLAKE2B f150e9d05b0a6a32c818f968879d0a394beb6524469cad905a21024e0d79e229f261c766f17aecbacdb81cf8e7408e62d1fdf8677569de8ed4d882b91f93b83d SHA512 8cb7da20ddb2bfbeaf57d9bca76a3b5495d4bd74a00092c40c948570a2cda3dca6cb1e73ed65af099fe405a4d29ff1a852496baf0fcb6119258443649a65766a
 DIST mozilla-rr-5.2.0.tar.gz 1168734 BLAKE2B 2f15c4ec4a271f930334577e98b14e37d2a0eb7cd3443e7110d3562ac4ef30c310e6448a588f4e31f2943a6d4ff0af006cbbafc50722543436fcae3bdc8e453f SHA512 4465985f67e9812b62b91ac7942105a9f976faf0c0d7c352a99a638fe6bdfde024f939b3daa922d431c7fc87118ae4d9d039b00345760fb547c349e8737dc168

diff --git a/dev-util/rr/files/rr-4.5.0-sysmacros.patch b/dev-util/rr/files/rr-4.5.0-sysmacros.patch
deleted file mode 100644
index 573d5956598..00000000000
--- a/dev-util/rr/files/rr-4.5.0-sysmacros.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-https://github.com/mozilla/rr/pull/1981
-
-From fefdb3b89e98192601dfdc98c8927c9a91f07f9f Mon Sep 17 00:00:00 2001
-From: Mike Frysinger <vapier@gentoo.org>
-Date: Mon, 13 Feb 2017 16:01:52 -0500
-Subject: [PATCH] tests: include sys/sysmacros.h for minor/major funcs
-
-Newer versions of glibc are deprecating the implicit sys/sysmacros.h
-include via sys/types.h, so include it explicitly.
----
- src/test/rrutil.h | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/test/rrutil.h b/src/test/rrutil.h
-index 60de6e47a57b..bb5b527c4c9a 100644
---- a/src/test/rrutil.h
-+++ b/src/test/rrutil.h
-@@ -76,6 +76,7 @@
- #include <sys/socket.h>
- #include <sys/stat.h>
- #include <sys/sysinfo.h>
-+#include <sys/sysmacros.h>
- #include <sys/time.h>
- #include <sys/timerfd.h>
- #include <sys/times.h>
--- 
-2.11.0
-

diff --git a/dev-util/rr/rr-4.5.0.ebuild b/dev-util/rr/rr-4.5.0.ebuild
deleted file mode 100644
index 55b04f3fab3..00000000000
--- a/dev-util/rr/rr-4.5.0.ebuild
+++ /dev/null
@@ -1,59 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-CMAKE_BUILD_TYPE=Release
-
-inherit cmake-utils linux-info python-single-r1
-
-DESCRIPTION="Record and Replay Framework"
-HOMEPAGE="https://rr-project.org/"
-SRC_URI="https://github.com/mozilla/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
-
-LICENSE="MIT BSD-2"
-SLOT="0"
-KEYWORDS="~amd64 ~x86"
-IUSE="test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
-	sys-libs/zlib
-	${PYTHON_DEPS}"
-RDEPEND="${DEPEND}
-	sys-devel/gdb[xml]"
-# Add all the deps needed only at build/test time.
-DEPEND+="
-	test? (
-		dev-python/pexpect[${PYTHON_USEDEP}]
-		sys-devel/gdb[xml]
-	)"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-sysmacros.patch
-)
-
-pkg_setup() {
-	if use kernel_linux; then
-		CONFIG_CHECK="SECCOMP"
-		linux-info_pkg_setup
-	fi
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	sed -i 's:-Werror::' CMakeLists.txt || die #609192
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_TESTS=$(usex test)
-	)
-
-	cmake-utils_src_configure
-}

diff --git a/dev-util/rr/rr-5.0.0.ebuild b/dev-util/rr/rr-5.0.0.ebuild
deleted file mode 100644
index 19ae612d07d..00000000000
--- a/dev-util/rr/rr-5.0.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-CMAKE_BUILD_TYPE=Release
-
-inherit cmake-utils linux-info python-single-r1
-
-DESCRIPTION="Record and Replay Framework"
-HOMEPAGE="https://rr-project.org/"
-SRC_URI="https://github.com/mozilla/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
-
-LICENSE="MIT BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
-	sys-libs/zlib
-	dev-libs/capnproto
-	${PYTHON_DEPS}"
-RDEPEND="${DEPEND}
-	sys-devel/gdb[xml]"
-# Add all the deps needed only at build/test time.
-DEPEND+="
-	test? (
-		dev-python/pexpect[${PYTHON_USEDEP}]
-		sys-devel/gdb[xml]
-	)"
-
-RESTRICT="!test? ( test )"
-
-#PATCHES=(
-#	"${FILESDIR}"/${P}-sysmacros.patch
-#)
-
-pkg_setup() {
-	if use kernel_linux; then
-		CONFIG_CHECK="SECCOMP"
-		linux-info_pkg_setup
-	fi
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	sed -i 's:-Werror::' CMakeLists.txt || die #609192
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_TESTS=$(usex test)
-	)
-
-	cmake-utils_src_configure
-}

diff --git a/dev-util/rr/rr-5.1.0.ebuild b/dev-util/rr/rr-5.1.0.ebuild
deleted file mode 100644
index 19ae612d07d..00000000000
--- a/dev-util/rr/rr-5.1.0.ebuild
+++ /dev/null
@@ -1,60 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-CMAKE_BUILD_TYPE=Release
-
-inherit cmake-utils linux-info python-single-r1
-
-DESCRIPTION="Record and Replay Framework"
-HOMEPAGE="https://rr-project.org/"
-SRC_URI="https://github.com/mozilla/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
-
-LICENSE="MIT BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
-	sys-libs/zlib
-	dev-libs/capnproto
-	${PYTHON_DEPS}"
-RDEPEND="${DEPEND}
-	sys-devel/gdb[xml]"
-# Add all the deps needed only at build/test time.
-DEPEND+="
-	test? (
-		dev-python/pexpect[${PYTHON_USEDEP}]
-		sys-devel/gdb[xml]
-	)"
-
-RESTRICT="!test? ( test )"
-
-#PATCHES=(
-#	"${FILESDIR}"/${P}-sysmacros.patch
-#)
-
-pkg_setup() {
-	if use kernel_linux; then
-		CONFIG_CHECK="SECCOMP"
-		linux-info_pkg_setup
-	fi
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	sed -i 's:-Werror::' CMakeLists.txt || die #609192
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_TESTS=$(usex test)
-	)
-
-	cmake-utils_src_configure
-}

diff --git a/dev-util/rr/rr-5.2.0.ebuild b/dev-util/rr/rr-5.2.0.ebuild
deleted file mode 100644
index 721384938a4..00000000000
--- a/dev-util/rr/rr-5.2.0.ebuild
+++ /dev/null
@@ -1,61 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python2_7 )
-CMAKE_BUILD_TYPE=Release
-
-inherit cmake-utils linux-info python-single-r1
-
-DESCRIPTION="Record and Replay Framework"
-HOMEPAGE="https://rr-project.org/"
-SRC_URI="https://github.com/mozilla/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
-
-LICENSE="MIT BSD-2"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
-	sys-libs/zlib
-	dev-libs/capnproto
-	${PYTHON_DEPS}"
-RDEPEND="${DEPEND}
-	sys-devel/gdb[xml]"
-# Add all the deps needed only at build/test time.
-DEPEND+="
-	test? (
-		dev-python/pexpect[${PYTHON_USEDEP}]
-		sys-devel/gdb[xml]
-	)"
-
-RESTRICT="!test? ( test )"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-ucontext_t.patch
-	"${FILESDIR}"/${P}-c++14.patch
-)
-
-pkg_setup() {
-	if use kernel_linux; then
-		CONFIG_CHECK="SECCOMP"
-		linux-info_pkg_setup
-	fi
-	python-single-r1_pkg_setup
-}
-
-src_prepare() {
-	cmake-utils_src_prepare
-
-	sed -i 's:-Werror::' CMakeLists.txt || die #609192
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DBUILD_TESTS=$(usex test)
-	)
-
-	cmake-utils_src_configure
-}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2022-10-17 21:45 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-10-17 21:45 UTC (permalink / raw
  To: gentoo-commits

commit:     68931941b28cdeebc2e0b6e9624584652b69ba92
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 17 21:43:20 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct 17 21:43:38 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=68931941

dev-util/rr: fix build with linux-headers-6.0

Revbump given the nature of rr & possible runtime breakage.

Closes: https://bugs.gentoo.org/877157
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch | 62 +++++++++++++++++
 dev-util/rr/rr-5.6.0-r1.ebuild                     | 80 ++++++++++++++++++++++
 2 files changed, 142 insertions(+)

diff --git a/dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch b/dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch
new file mode 100644
index 000000000000..36a911bcbece
--- /dev/null
+++ b/dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch
@@ -0,0 +1,62 @@
+https://github.com/rr-debugger/rr/commit/2979c60ef8bbf7c940afd90172ddc5d8863f766e
+https://github.com/rr-debugger/rr/issues/3369
+https://bugs.gentoo.org/877157
+
+From 2979c60ef8bbf7c940afd90172ddc5d8863f766e Mon Sep 17 00:00:00 2001
+From: Robert O'Callahan <robert@ocallahan.org>
+Date: Thu, 25 Aug 2022 20:40:59 +1200
+Subject: [PATCH] Avoid creating a struct with elements after
+ ethtool_sset_info's variable-length-array.
+
+Resolves #3369
+--- a/src/record_syscall.cc
++++ b/src/record_syscall.cc
+@@ -1450,17 +1450,17 @@ template <typename Arch> void get_ethtool_gstrings_arch(RecordTask* t) {
+   AutoRemoteSyscalls remote(t);
+ 
+   // Do a ETHTOOL_GSSET_INFO to get the number of strings
+-  struct SingleStringSet {
+-    ethtool_sset_info et;
+-    uint32_t data;
+-  };
+-  SingleStringSet sss;
+-  sss.et.cmd = ETHTOOL_GSSET_INFO;
+-  sss.et.reserved = 0;
+-  sss.et.sset_mask = 1 << et_gstrings.string_set;
+-  AutoRestoreMem sss_mem(remote, &sss, sizeof(sss));
+-
+-  ifreq.ifr_ifru.ifru_data = sss_mem.get();
++  ethtool_sset_info et;
++  et.cmd = ETHTOOL_GSSET_INFO;
++  et.reserved = 0;
++  et.sset_mask = 1 << et_gstrings.string_set;
++  std::vector<uint8_t> buffer;
++  buffer.resize(sizeof(et) + sizeof(uint32_t));
++  memcpy(buffer.data(), &et, sizeof(et));
++  memset(buffer.data() + sizeof(et), 0, sizeof(uint32_t));
++  AutoRestoreMem et_mem(remote, buffer.data(), buffer.size());
++
++  ifreq.ifr_ifru.ifru_data = et_mem.get();
+   AutoRestoreMem ifr_mem(remote, &ifreq, sizeof(ifreq));
+ 
+   long ret = remote.syscall(regs.original_syscallno(), regs.arg1(),
+@@ -1470,8 +1470,7 @@ template <typename Arch> void get_ethtool_gstrings_arch(RecordTask* t) {
+     return;
+   }
+ 
+-  sss = t->read_mem(sss_mem.get().cast<SingleStringSet>());
+-
++  uint32_t data = t->read_mem((et_mem.get() + sizeof(et)).cast<uint32_t>());
+   // Now do the ETHTOOL_GSTRINGS call
+   ret = remote.syscall(regs.original_syscallno(), regs.arg1(), SIOCETHTOOL,
+       regs.arg3());
+@@ -1479,7 +1478,7 @@ template <typename Arch> void get_ethtool_gstrings_arch(RecordTask* t) {
+   if (ret < 0) {
+     return;
+   }
+-  t->record_remote(orig_gstrings, sizeof(ethtool_gstrings) + ETH_GSTRING_LEN*sss.data);
++  t->record_remote(orig_gstrings, sizeof(ethtool_gstrings) + ETH_GSTRING_LEN*data);
+ }
+ 
+ static void get_ethtool_gstrings(RecordTask* t) {
+

diff --git a/dev-util/rr/rr-5.6.0-r1.ebuild b/dev-util/rr/rr-5.6.0-r1.ebuild
new file mode 100644
index 000000000000..096ff7b1f8c8
--- /dev/null
+++ b/dev-util/rr/rr-5.6.0-r1.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{8,9,10} )
+CMAKE_BUILD_TYPE=Release
+
+inherit cmake linux-info python-single-r1
+
+DESCRIPTION="Record and Replay Framework"
+HOMEPAGE="https://rr-project.org/"
+SRC_URI="https://github.com/rr-debugger/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
+
+LICENSE="MIT BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="multilib test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+	${PYTHON_DEPS}
+	dev-libs/capnproto:=
+	sys-libs/zlib:=
+"
+RDEPEND="
+	${DEPEND}
+	sys-devel/gdb[xml]
+"
+# Add all the deps needed only at build/test time.
+DEPEND+="
+	test? (
+		$(python_gen_cond_dep '
+			dev-python/pexpect[${PYTHON_USEDEP}]
+		')
+		sys-devel/gdb[xml]
+	)"
+
+QA_FLAGS_IGNORED="
+	usr/lib.*/rr/librrpage.so
+	usr/lib.*/rr/librrpage_32.so
+"
+
+RESTRICT="test" # toolchain and kernel version dependent
+
+PATCHES=(
+	"${FILESDIR}"/${P}-linux-headers-6.0.patch
+)
+
+pkg_setup() {
+	if use kernel_linux; then
+		CONFIG_CHECK="SECCOMP"
+		linux-info_pkg_setup
+	fi
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	cmake_src_prepare
+
+	sed -i 's:-Werror::' CMakeLists.txt || die #609192
+}
+
+src_test() {
+	if has usersandbox ${FEATURES} ; then
+		ewarn "Test suite fails under FEATURES=usersandbox (bug #632394). Skipping."
+		return 0
+	fi
+
+	cmake_src_test
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_TESTS=$(usex test)
+		-Ddisable32bit=$(usex !multilib) #636786
+	)
+
+	cmake_src_configure
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2022-12-05  3:58 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2022-12-05  3:58 UTC (permalink / raw
  To: gentoo-commits

commit:     8e01b6d92642b831beab864edaa9ca31ff49fdb7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Dec  5 03:57:22 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Dec  5 03:57:22 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8e01b6d9

dev-util/rr: fix tests w/ clang 16

Tests are restricted right now but I've seen the patch so I may
as well throw it in, especially given upstream releases are
infrequent.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/rr/files/rr-5.6.0-tests-clang16.patch | 19 +++++++++++++++++++
 dev-util/rr/rr-5.6.0-r1.ebuild                 |  1 +
 2 files changed, 20 insertions(+)

diff --git a/dev-util/rr/files/rr-5.6.0-tests-clang16.patch b/dev-util/rr/files/rr-5.6.0-tests-clang16.patch
new file mode 100644
index 000000000000..8262b10817d4
--- /dev/null
+++ b/dev-util/rr/files/rr-5.6.0-tests-clang16.patch
@@ -0,0 +1,19 @@
+https://github.com/rr-debugger/rr/commit/548fab2071054cb7e906c53930b6fab19316dd61
+
+From 548fab2071054cb7e906c53930b6fab19316dd61 Mon Sep 17 00:00:00 2001
+From: Florian Weimer <fweimer@redhat.com>
+Date: Sat, 3 Dec 2022 12:44:48 +0100
+Subject: [PATCH] test: Include <sys/mount.h> in util.h
+
+The mount_ns_exec test needs it to call the mount function.
+--- a/src/test/util.h
++++ b/src/test/util.h
+@@ -80,6 +80,7 @@
+ #include <sys/ioctl.h>
+ #include <sys/ipc.h>
+ #include <sys/mman.h>
++#include <sys/mount.h>
+ #include <sys/msg.h>
+ #include <sys/prctl.h>
+ #include <sys/ptrace.h>
+

diff --git a/dev-util/rr/rr-5.6.0-r1.ebuild b/dev-util/rr/rr-5.6.0-r1.ebuild
index 096ff7b1f8c8..3092495a06e7 100644
--- a/dev-util/rr/rr-5.6.0-r1.ebuild
+++ b/dev-util/rr/rr-5.6.0-r1.ebuild
@@ -45,6 +45,7 @@ RESTRICT="test" # toolchain and kernel version dependent
 
 PATCHES=(
 	"${FILESDIR}"/${P}-linux-headers-6.0.patch
+	"${FILESDIR}"/${P}-tests-clang16.patch
 )
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2023-01-21 20:42 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-01-21 20:42 UTC (permalink / raw
  To: gentoo-commits

commit:     c475a15534e162c894808eabb0d5d7f85d1efd16
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 21 18:24:17 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Jan 21 20:41:56 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c475a155

dev-util/rr: fix build w/ gcc 13

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/rr/files/rr-5.6.0-gcc13.patch | 32 ++++++++++++++++++++++++++++++++
 dev-util/rr/rr-5.6.0-r2.ebuild         |  1 +
 2 files changed, 33 insertions(+)

diff --git a/dev-util/rr/files/rr-5.6.0-gcc13.patch b/dev-util/rr/files/rr-5.6.0-gcc13.patch
new file mode 100644
index 000000000000..41092a958dd7
--- /dev/null
+++ b/dev-util/rr/files/rr-5.6.0-gcc13.patch
@@ -0,0 +1,32 @@
+https://github.com/rr-debugger/rr/commit/2248c85c424e8c257ca88af2732782574d6a3544
+
+From 2248c85c424e8c257ca88af2732782574d6a3544 Mon Sep 17 00:00:00 2001
+From: William Cohen <wcohen@redhat.com>
+Date: Wed, 18 Jan 2023 12:15:04 -0500
+Subject: [PATCH] Explicitly include <cstdint> where required.
+
+The uint8_t and uintptr_t ptr types are from the header <cstdint>.
+Earlier versions of gcc appear to declare them even if the header
+is not included, but gcc-13 does not.  Explicitly including the
+header to allow compilations with gcc-13.
+--- a/src/log.h
++++ b/src/log.h
+@@ -9,6 +9,7 @@
+ #include <iostream>
+ #include <type_traits>
+ #include <vector>
++#include <cstdint>
+ 
+ /**
+  * Print siginfo on ostream.
+--- a/src/remote_ptr.h
++++ b/src/remote_ptr.h
+@@ -5,6 +5,7 @@
+ 
+ #include <cstddef>
+ #include <iostream>
++#include <cstdint>
+ 
+ namespace rr {
+ 
+

diff --git a/dev-util/rr/rr-5.6.0-r2.ebuild b/dev-util/rr/rr-5.6.0-r2.ebuild
index e8ea3b984e22..27ec0c68e8a2 100644
--- a/dev-util/rr/rr-5.6.0-r2.ebuild
+++ b/dev-util/rr/rr-5.6.0-r2.ebuild
@@ -46,6 +46,7 @@ RESTRICT="test" # toolchain and kernel version dependent
 PATCHES=(
 	"${FILESDIR}"/${P}-linux-headers-6.0.patch
 	"${FILESDIR}"/${P}-tests-clang16.patch
+	"${FILESDIR}"/${P}-gcc13.patch
 )
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2023-04-12  6:26 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2023-04-12  6:26 UTC (permalink / raw
  To: gentoo-commits

commit:     f5e0ac5711c94279073106adf04977cb07db37c7
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Apr 12 06:25:18 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Apr 12 06:26:08 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5e0ac57

dev-util/rr: backport gcc 13 workaround; add epoll_pwait2 support

Only really doing the epoll_pwait2 bit because it touches the same
files as the gcc 13 workaround.

Closes: https://bugs.gentoo.org/897874
Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/rr/files/rr-5.6.0-epoll_pwait2.patch     |  78 ++++++++
 dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch | 222 ++++++++++++++++++++++
 dev-util/rr/rr-5.6.0-r3.ebuild                    |  89 +++++++++
 3 files changed, 389 insertions(+)

diff --git a/dev-util/rr/files/rr-5.6.0-epoll_pwait2.patch b/dev-util/rr/files/rr-5.6.0-epoll_pwait2.patch
new file mode 100644
index 000000000000..02d90d36e7dc
--- /dev/null
+++ b/dev-util/rr/files/rr-5.6.0-epoll_pwait2.patch
@@ -0,0 +1,78 @@
+https://github.com/rr-debugger/rr/commit/7d1b31dd76d18e9e810455f4abd804e76b0a6c1f
+
+From 7d1b31dd76d18e9e810455f4abd804e76b0a6c1f Mon Sep 17 00:00:00 2001
+From: Robert O'Callahan <robert@ocallahan.org>
+Date: Sun, 26 Mar 2023 23:52:44 +1300
+Subject: [PATCH] Support epoll_pwait2
+
+Resolves #3462
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -933,6 +933,7 @@ set(BASIC_TESTS
+   epoll_edge
+   epoll_many
+   epoll_pwait_eintr_sigmask
++  epoll_pwait2
+   eventfd
+   exec_flags
+   exec_no_env
+--- a/src/record_syscall.cc
++++ b/src/record_syscall.cc
+@@ -4841,6 +4841,7 @@ static Switchable rec_prepare_syscall_arch(RecordTask* t,
+               sizeof(typename Arch::epoll_event)));
+       return ALLOW_SWITCH;
+ 
++    case Arch::epoll_pwait2:
+     case Arch::epoll_pwait: {
+       syscall_state.reg_parameter(
+           2, ParamSize::from_syscall_result<int>(sizeof(typename Arch::epoll_event) * regs.arg3_signed(),
+--- a/src/syscalls.py
++++ b/src/syscalls.py
+@@ -1729,7 +1729,7 @@ def __init__(self, **kwargs):
+ openat2 = UnsupportedSyscall(x86=437, x64=437, generic=437)
+ pidfd_getfd = UnsupportedSyscall(x86=438, x64=438, generic=438)
+ process_madvise = UnsupportedSyscall(x86=440, x64=440, generic=440)
+-epoll_pwait2 = UnsupportedSyscall(x86=441, x64=441, generic=441)
++epoll_pwait2 = IrregularEmulatedSyscall(x86=441, x64=441, generic=441)
+ mount_setattr = UnsupportedSyscall(x86=442, x64=442, generic=442)
+ quotactl_fd = UnsupportedSyscall(x86=443, x64=443, generic=443)
+ landlock_create_ruleset = UnsupportedSyscall(x86=444, x64=444, generic=444)
+--- /dev/null
++++ b/src/test/epoll_pwait2.c
+@@ -0,0 +1,35 @@
++/* -*- Mode: C; tab-width: 8; c-basic-offset: 2; indent-tabs-mode: nil; -*- */
++
++#include "util.h"
++
++static void handle_sig(__attribute__((unused)) int sig) {
++  /* Don't do anything, just go through the signal handler motions */
++}
++
++int main(void) {
++  int pipe_fd[2];
++  int epfd;
++  struct timespec ts = { 5, 0 };
++  struct epoll_event ev;
++  sigset_t sigmask;
++  sigemptyset(&sigmask);
++  sigaddset(&sigmask, SIGCHLD);
++
++  signal(SIGALRM, handle_sig);
++
++  test_assert(0 == pipe(pipe_fd));
++  test_assert(0 <= (epfd = epoll_create(1 /*num events*/)));
++
++  ev.events = EPOLLIN;
++  ev.data.fd = pipe_fd[0];
++  test_assert(0 == epoll_ctl(epfd, EPOLL_CTL_ADD, ev.data.fd, &ev));
++
++  // Make sure something will wake us from the epoll_pwait2.
++  alarm(1);
++  // But also use the epoll_pwait to modify the signal mask.
++  epoll_pwait2(epfd, &ev, 1, &ts, &sigmask);
++  test_assert(errno == EINTR || errno == ENOSYS);
++
++  atomic_puts("EXIT-SUCCESS");
++  return 0;
++}
+

diff --git a/dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch b/dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch
new file mode 100644
index 000000000000..30dad8d9fa20
--- /dev/null
+++ b/dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch
@@ -0,0 +1,222 @@
+https://bugs.gentoo.org/897874
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109420
+https://github.com/rr-debugger/rr/issues/3485
+https://github.com/rr-debugger/rr/commit/e32502d00b18a5225d3b7fbab75fb1e63cb367d2
+
+From e32502d00b18a5225d3b7fbab75fb1e63cb367d2 Mon Sep 17 00:00:00 2001
+From: Robert O'Callahan <robert@ocallahan.org>
+Date: Wed, 5 Apr 2023 08:15:23 +1200
+Subject: [PATCH] Avoid having type members and enum members of `Arch` with the
+ same name
+
+Resolves #3485
+--- a/src/kernel_abi.h
++++ b/src/kernel_abi.h
+@@ -1282,7 +1282,7 @@ struct BaseArch : public wordsize,
+   };
+   RR_VERIFY_TYPE_EXPLICIT(struct ::timezone, timezone);
+ 
+-  struct statfs {
++  struct statfs_t {
+     __statfs_word f_type;
+     __statfs_word f_bsize;
+     __statfs_word f_blocks;
+@@ -1298,9 +1298,9 @@ struct BaseArch : public wordsize,
+     __statfs_word f_flags;
+     __statfs_word f_spare[4];
+   };
+-  RR_VERIFY_TYPE_EXPLICIT(struct ::statfs, statfs);
++  RR_VERIFY_TYPE_EXPLICIT(struct ::statfs, statfs_t);
+ 
+-  struct statfs64 {
++  struct statfs64_t {
+     __statfs_word f_type;
+     __statfs_word f_bsize;
+     uint64_t f_blocks;
+@@ -1316,7 +1316,7 @@ struct BaseArch : public wordsize,
+     __statfs_word f_flags;
+     __statfs_word f_spare[4];
+   };
+-  RR_VERIFY_TYPE_EXPLICIT(struct ::statfs64, statfs64);
++  RR_VERIFY_TYPE_EXPLICIT(struct ::statfs64, statfs64_t);
+ 
+   struct itimerval {
+     timeval it_interval;
+@@ -1338,7 +1338,7 @@ struct BaseArch : public wordsize,
+   } stack_t;
+   RR_VERIFY_TYPE(stack_t);
+ 
+-  struct sysinfo {
++  struct sysinfo_t {
+     __kernel_long_t uptime;
+     __kernel_ulong_t loads[3];
+     __kernel_ulong_t totalram;
+@@ -1355,7 +1355,7 @@ struct BaseArch : public wordsize,
+     uint32_t mem_unit;
+     char _f[20 - 2 * sizeof(__kernel_ulong_t) - sizeof(uint32_t)];
+   };
+-  RR_VERIFY_TYPE_EXPLICIT(struct ::sysinfo, sysinfo);
++  RR_VERIFY_TYPE_EXPLICIT(struct ::sysinfo, sysinfo_t);
+ 
+   static const ::size_t UTSNAME_LENGTH = 65;
+   struct utsname {
+@@ -2093,7 +2093,7 @@ struct X64Arch : public BaseArch<SupportedArch::x86_64, WordSize64Defs> {
+   // Can't verify this one because glibc leaves out the last two members and the
+   // kernel header isn't available to userspace.
+ 
+-  struct stat {
++  struct stat_t {
+     dev_t st_dev;
+     ino_t st_ino;
+     nlink_t st_nlink;
+@@ -2110,10 +2110,10 @@ struct X64Arch : public BaseArch<SupportedArch::x86_64, WordSize64Defs> {
+     struct timespec st_ctim;
+     syscall_slong_t __rr_unused[3];
+   };
+-  RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, struct ::stat, struct stat);
++  RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, struct ::stat, struct stat_t);
+ 
+-  struct stat64 : public stat {};
+-  RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, struct ::stat64, struct stat64);
++  struct stat64_t : public stat_t {};
++  RR_VERIFY_TYPE_ARCH(SupportedArch::x86_64, struct ::stat64, struct stat64_t);
+ 
+   struct semid64_ds {
+     ipc64_perm sem_perm;
+@@ -2291,7 +2291,7 @@ struct X86Arch : public BaseArch<SupportedArch::x86, WordSize32Defs> {
+   };
+   RR_VERIFY_TYPE_X86_ARCH(SupportedArch::x86, ::user, user);
+ 
+-  struct stat {
++  struct stat_t {
+     dev_t st_dev;
+     unsigned_short __pad1;
+     ino_t st_ino;
+@@ -2310,9 +2310,9 @@ struct X86Arch : public BaseArch<SupportedArch::x86, WordSize32Defs> {
+     unsigned_long __unused4;
+     unsigned_long __unused5;
+   };
+-  RR_VERIFY_TYPE_ARCH(SupportedArch::x86, struct ::stat, struct stat);
++  RR_VERIFY_TYPE_ARCH(SupportedArch::x86, struct ::stat, struct stat_t);
+ 
+-  struct __attribute__((packed)) stat64 {
++  struct __attribute__((packed)) stat64_t {
+     dev_t st_dev;
+     unsigned_int __pad1;
+     ino_t __st_ino;
+@@ -2330,7 +2330,7 @@ struct X86Arch : public BaseArch<SupportedArch::x86, WordSize32Defs> {
+     timespec st_ctim;
+     ino64_t st_ino;
+   };
+-  RR_VERIFY_TYPE_ARCH(SupportedArch::x86, struct ::stat64, struct stat64);
++  RR_VERIFY_TYPE_ARCH(SupportedArch::x86, struct ::stat64, struct stat64_t);
+ 
+   struct semid64_ds {
+     ipc64_perm sem_perm;
+@@ -2377,7 +2377,7 @@ struct GenericArch : public BaseArch<arch_, wordsize> {
+   typedef uint32_t legacy_uid_t;
+   typedef uint32_t legacy_gid_t;
+ 
+-  struct stat {
++  struct stat_t {
+     dev_t st_dev;
+     ino_t st_ino;
+     mode_t st_mode;
+@@ -2405,7 +2405,7 @@ struct GenericArch : public BaseArch<arch_, wordsize> {
+     typename BaseArch<arch_, wordsize>::unsigned_long __unused4;
+   };
+ 
+-  struct stat64 : public stat {};
++  struct stat64_t : public stat_t {};
+ };
+ 
+ struct ARM64Arch : public GenericArch<SupportedArch::aarch64, WordSize64Defs> {
+--- a/src/syscalls.py
++++ b/src/syscalls.py
+@@ -544,7 +544,7 @@ def __init__(self, **kwargs):
+ # system.  path is the pathname of any file within the mounted file
+ # system.  buf is a pointer to a statfs structure defined
+ # approximately as follows:
+-statfs = EmulatedSyscall(x86=99, x64=137, generic=43, arg2="struct Arch::statfs")
++statfs = EmulatedSyscall(x86=99, x64=137, generic=43, arg2="struct Arch::statfs_t")
+ 
+ #  int fstatfs(int fd, struct statfs *buf)
+ #
+@@ -552,7 +552,7 @@ def __init__(self, **kwargs):
+ # system.  path is the pathname of any file within the
+ # get_time(GET_TID(thread_id));mounted file system.  buf is a pointer
+ # to a statfs structure defined approximately as follows:
+-fstatfs = EmulatedSyscall(x86=100, x64=138, generic=44, arg2="struct Arch::statfs")
++fstatfs = EmulatedSyscall(x86=100, x64=138, generic=44, arg2="struct Arch::statfs_t")
+ 
+ ioperm = EmulatedSyscall(x86=101, x64=173)
+ 
+@@ -574,9 +574,9 @@ def __init__(self, **kwargs):
+ # stored there.
+ setitimer = EmulatedSyscall(x86=104, x64=38, generic=103, arg3="typename Arch::itimerval")
+ getitimer = EmulatedSyscall(x86=105, x64=36, generic=102, arg2="typename Arch::itimerval")
+-stat = EmulatedSyscall(x86=106, x64=4, arg2="struct Arch::stat")
+-lstat = EmulatedSyscall(x86=107, x64=6, arg2="struct Arch::stat")
+-fstat = EmulatedSyscall(x86=108, x64=5, generic=80, arg2="struct Arch::stat")
++stat = EmulatedSyscall(x86=106, x64=4, arg2="struct Arch::stat_t")
++lstat = EmulatedSyscall(x86=107, x64=6, arg2="struct Arch::stat_t")
++fstat = EmulatedSyscall(x86=108, x64=5, generic=80, arg2="struct Arch::stat_t")
+ olduname = UnsupportedSyscall(x86=109)
+ iopl = EmulatedSyscall(x86=110, x64=172)
+ vhangup = UnsupportedSyscall(x86=111, x64=153, generic=58)
+@@ -596,7 +596,7 @@ def __init__(self, **kwargs):
+ #
+ # sysinfo() provides a simple way of getting overall system
+ # statistics.
+-sysinfo = EmulatedSyscall(x86=116, x64=99, generic=179, arg1="struct Arch::sysinfo")
++sysinfo = EmulatedSyscall(x86=116, x64=99, generic=179, arg1="struct Arch::sysinfo_t")
+ #  int ipc(unsigned int call, int first, int second, int third, void *ptr, long
+ #fifth);
+ #
+@@ -992,20 +992,20 @@ def __init__(self, **kwargs):
+ # int stat(const char *path, struct stat *buf);
+ #
+ # stat() stats the file pointed to by path and fills in buf.
+-stat64 = EmulatedSyscall(x86=195, arg2="struct Arch::stat64")
++stat64 = EmulatedSyscall(x86=195, arg2="struct Arch::stat64_t")
+ 
+ #  int lstat(const char *path, struct stat *buf);
+ #
+ # lstat() is identical to stat(), except that if path is a symbolic
+ # link, then the link itself is stat-ed, not the file that it refers
+ # to.
+-lstat64 = EmulatedSyscall(x86=196, arg2="struct Arch::stat64")
++lstat64 = EmulatedSyscall(x86=196, arg2="struct Arch::stat64_t")
+ 
+ #  int fstat(int fd, struct stat *buf)
+ #
+ # fstat() is identical to stat(), except that the file to be stat-ed
+ # is specified by the file descriptor fd.
+-fstat64 = EmulatedSyscall(x86=197, arg2="struct Arch::stat64")
++fstat64 = EmulatedSyscall(x86=197, arg2="struct Arch::stat64_t")
+ 
+ lchown32 = EmulatedSyscall(x86=198)
+ 
+@@ -1342,8 +1342,8 @@ def __init__(self, **kwargs):
+ #
+ # FIXME: we use arg3() here, although according to man pages this system
+ # call has only 2 paramaters. However, strace tells another story...
+-statfs64 = EmulatedSyscall(x86=268, arg3="struct Arch::statfs64")
+-fstatfs64 = EmulatedSyscall(x86=269, arg3="struct Arch::statfs64")
++statfs64 = EmulatedSyscall(x86=268, arg3="struct Arch::statfs64_t")
++fstatfs64 = EmulatedSyscall(x86=269, arg3="struct Arch::statfs64_t")
+ 
+ #  int tgkill(int tgid, int tid, int sig)
+ #
+@@ -1443,8 +1443,8 @@ def __init__(self, **kwargs):
+ # The fstatat() system call operates in exactly the same way as
+ # stat(2), except for the differences described in this manual
+ # page....
+-fstatat = EmulatedSyscall(x64=262, generic=79, arg3="struct Arch::stat")
+-fstatat64 = EmulatedSyscall(x86=300, arg3="struct Arch::stat64")
++fstatat = EmulatedSyscall(x64=262, generic=79, arg3="struct Arch::stat_t")
++fstatat64 = EmulatedSyscall(x86=300, arg3="struct Arch::stat64_t")
+ 
+ #  int unlinkat(int dirfd, const char *pathname, int flags)
+ #
+

diff --git a/dev-util/rr/rr-5.6.0-r3.ebuild b/dev-util/rr/rr-5.6.0-r3.ebuild
new file mode 100644
index 000000000000..bdd724733aaa
--- /dev/null
+++ b/dev-util/rr/rr-5.6.0-r3.ebuild
@@ -0,0 +1,89 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{9..11} )
+CMAKE_BUILD_TYPE=Release
+
+inherit cmake linux-info python-single-r1
+
+DESCRIPTION="Record and Replay Framework"
+HOMEPAGE="https://rr-project.org/"
+SRC_URI="https://github.com/rr-debugger/${PN}/archive/${PV}.tar.gz -> mozilla-${P}.tar.gz"
+
+LICENSE="MIT BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="multilib test"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+	${PYTHON_DEPS}
+	dev-libs/capnproto:=
+	sys-libs/zlib:=
+"
+RDEPEND="
+	${DEPEND}
+	sys-devel/gdb[xml]
+"
+# Add all the deps needed only at build/test time.
+DEPEND+="
+	test? (
+		$(python_gen_cond_dep '
+			dev-python/pexpect[${PYTHON_USEDEP}]
+		')
+		sys-devel/gdb[xml]
+	)"
+
+QA_FLAGS_IGNORED="
+	usr/lib.*/rr/librrpage.so
+	usr/lib.*/rr/librrpage_32.so
+"
+
+RESTRICT="test" # toolchain and kernel version dependent
+
+PATCHES=(
+	"${FILESDIR}"/${P}-linux-headers-6.0.patch
+	"${FILESDIR}"/${P}-tests-clang16.patch
+	"${FILESDIR}"/${P}-gcc13.patch
+	"${FILESDIR}"/${P}-epoll_pwait2.patch
+	"${FILESDIR}"/${P}-gcc13-workaround.patch
+)
+
+pkg_setup() {
+	if use kernel_linux; then
+		CONFIG_CHECK="SECCOMP"
+		linux-info_pkg_setup
+	fi
+	python-single-r1_pkg_setup
+}
+
+src_prepare() {
+	cmake_src_prepare
+
+	sed -i 's:-Werror::' CMakeLists.txt || die #609192
+}
+
+src_test() {
+	if has usersandbox ${FEATURES} ; then
+		ewarn "Test suite fails under FEATURES=usersandbox (bug #632394). Skipping."
+		return 0
+	fi
+
+	cmake_src_test
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_TESTS=$(usex test)
+		-Ddisable32bit=$(usex !multilib) #636786
+	)
+
+	cmake_src_configure
+}
+
+src_install() {
+	cmake_src_install
+	python_fix_shebang "${ED}"/usr/bin/rr-collect-symbols.py
+}


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/
@ 2024-03-15  2:37 Sam James
  0 siblings, 0 replies; 6+ messages in thread
From: Sam James @ 2024-03-15  2:37 UTC (permalink / raw
  To: gentoo-commits

commit:     afc02357cda0226f1ad0b9b1b3460a43166eeb85
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Mar 15 02:26:35 2024 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Mar 15 02:26:49 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afc02357

dev-util/rr: don't force LTO

We leave it up to users to set.

(That said, this did help find a GCC bug: https://gcc.gnu.org/PR14232).

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-util/rr/files/rr-5.7.0-no-force-lto.patch | 23 +++++++++++++++++++++++
 dev-util/rr/rr-5.7.0.ebuild                   |  4 ++++
 2 files changed, 27 insertions(+)

diff --git a/dev-util/rr/files/rr-5.7.0-no-force-lto.patch b/dev-util/rr/files/rr-5.7.0-no-force-lto.patch
new file mode 100644
index 000000000000..f9665f435f4c
--- /dev/null
+++ b/dev-util/rr/files/rr-5.7.0-no-force-lto.patch
@@ -0,0 +1,23 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -118,7 +118,6 @@ if(LOWERCASE_CMAKE_BUILD_TYPE STREQUAL "debug")
+   set(RR_FLAGS "${RR_FLAGS_DEBUG} -g3 ")
+ elseif(LOWERCASE_CMAKE_BUILD_TYPE STREQUAL "release")
+   # CMake itself will add optimization flags
+-  set(RR_FLAGS "${RR_FLAGS_RELEASE} -g3 -flto")
+ endif()
+ 
+ set(LINKER_FLAGS "")
+@@ -675,12 +674,6 @@ endif()
+ 
+ # Add -flto option to linking step if release
+ if(LOWERCASE_CMAKE_BUILD_TYPE STREQUAL "release")
+-  CHECK_C_COMPILER_FLAG("-flto=auto" SUPPORTS_LTO_AUTO)
+-  if(SUPPORTS_LTO_AUTO)
+-    set(RR_MAIN_LINKER_FLAGS "${RR_MAIN_LINKER_FLAGS} -flto=auto")
+-  else()
+-    set(RR_MAIN_LINKER_FLAGS "${RR_MAIN_LINKER_FLAGS} -flto")
+-  endif()
+ endif()
+ 
+ if(LIBRT)

diff --git a/dev-util/rr/rr-5.7.0.ebuild b/dev-util/rr/rr-5.7.0.ebuild
index d8ae5a3fd5c7..ab0fca41cd19 100644
--- a/dev-util/rr/rr-5.7.0.ebuild
+++ b/dev-util/rr/rr-5.7.0.ebuild
@@ -43,6 +43,10 @@ QA_FLAGS_IGNORED="
 
 RESTRICT="test" # toolchain and kernel version dependent
 
+PATCHES=(
+	"${FILESDIR}"/${PN}-5.7.0-no-force-lto.patch
+)
+
 pkg_setup() {
 	if use kernel_linux; then
 		CONFIG_CHECK="SECCOMP"


^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-03-15  2:37 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-05  3:58 [gentoo-commits] repo/gentoo:master commit in: dev-util/rr/, dev-util/rr/files/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2024-03-15  2:37 Sam James
2023-04-12  6:26 Sam James
2023-01-21 20:42 Sam James
2022-10-17 21:45 Sam James
2019-11-10 21:00 Sergei Trofimovich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox