summaryrefslogtreecommitdiff
path: root/dev-util/rr
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/rr')
-rw-r--r--dev-util/rr/Manifest10
-rw-r--r--dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch222
-rw-r--r--dev-util/rr/files/rr-5.6.0-gcc13.patch32
-rw-r--r--dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch62
-rw-r--r--dev-util/rr/files/rr-5.6.0-tests-clang16.patch19
-rw-r--r--dev-util/rr/files/rr-5.7.0-no-force-lto.patch23
-rw-r--r--dev-util/rr/rr-5.6.0-r2.ebuild87
-rw-r--r--dev-util/rr/rr-5.6.0-r4.ebuild88
-rw-r--r--dev-util/rr/rr-5.7.0.ebuild4
9 files changed, 29 insertions, 518 deletions
diff --git a/dev-util/rr/Manifest b/dev-util/rr/Manifest
index 378c483b3c77..6900bc7aaba3 100644
--- a/dev-util/rr/Manifest
+++ b/dev-util/rr/Manifest
@@ -1,10 +1,4 @@
-AUX rr-5.6.0-gcc13-workaround.patch 8710 BLAKE2B 1bba8cd2001e9a69a2d910a8ca5c6db162f85903208d0e4ade17aa1814473459df6828f6be5426179b7d86b30adf3adb0685558c70b4cf7710f791bb684865c9 SHA512 1247acd17a4788b31026689b15c6cb0c70a3512630ac6908106bf30596441c33cb418f8dc292e04622129c3557a0ced009be9e19953e091139afba44d9c1406e
-AUX rr-5.6.0-gcc13.patch 849 BLAKE2B a66f77a1bb436909cc644773ae1208fb6c7e674d8aac217c54287bf6392b0f13148e34d9868fb7875bf9b736bf5122c4ef52a2d4a6344d8a3f1afbf03a214400 SHA512 9bc28b5011cdb430f82fe88b969ed7ca123c69ad99f1e5d4ebb38ab2aaf9295e78a20019a1b078a9c391be66f20783cd9d86b3609c7248773b2f6eb20320c82d
-AUX rr-5.6.0-linux-headers-6.0.patch 2303 BLAKE2B 3f804757bc221617939bcfd128546f2bb66d0bd5ec8efb42a6cd05b0aac6e83513d8df89e7838673bc53228801d83ca57a888701539007b73ab9a734d6e2674f SHA512 21216496235e7d7507d319a0b8489a96f44f711dc0727b6bd1828ac80e1ac174a9bf2c9ced7ccadd0cd6d6af64a7a2b1a3f71a25816bef8b6d6e2f884ecd85eb
-AUX rr-5.6.0-tests-clang16.patch 576 BLAKE2B 2e2141a0dd0c5366497654ed499910f79c8e3cf12b3a4ec102817b03b73c25da8e86b43aee75cf2ac04049f0106086bef2ef37e1c7a1787608db3cf3bcf987cf SHA512 52f40c9b73caa02d39b82703d98201733570865e9ca016b2feaecd0fe34cb69d38a294226311ec686ef921f3a195fb09d7c286e9f375668ec50bd156f4ab1b94
-DIST mozilla-rr-5.6.0.tar.gz 1579320 BLAKE2B 14ea99c4486c72db844b5cad3f0c300d7bf5d49449e7080ed0484f89022be6d9b7f81b3808b65f59028a5256a6b3f6508729d5b7e8f3f45d8353ceb7ae2a577a SHA512 4b5ef65b6c6a4b62fc72949b4541aaf608f6133ea0b6c2e529a8eed725e6a0b5186f20ed60b210821e6929410e1f21723840eacfdc85bf12c87703e7ebf5f9a7
+AUX rr-5.7.0-no-force-lto.patch 720 BLAKE2B 78733ac4cf79e9f49ccd4f6c6dc98ef7ebc518392072eed660ee5fbf22c90f0b89ee5d708edae2bce61e06d91522e46b5cebc3ffb8983c8d97ecbc1b261a8f7a SHA512 2f53aad8c1c65689a967ddf94c5f9d60d8edd2ed5486a4c95d74e2fa6e50e752adb3ae699085834af57d4251b48616d414d452a73bd1e0e3d9a5b0ee9e75622b
DIST mozilla-rr-5.7.0.tar.gz 1688069 BLAKE2B 613196a441b8c384765403838d4c89248eeb85af203b596ff01610fe65c62650cbeb7f8bde4c97ac4bb65f2bdcf7caa605ca1b6cb2f8f36b0355d816ed39a4f1 SHA512 e0e45f47a5f1de9e0e3f982e9eb5565699189ed23c52de03bf68b8215e7b8ac267619c04495c19e75a55aa8e0face08b9bb6c7f325650384c10a719c17ecf576
-EBUILD rr-5.6.0-r2.ebuild 1655 BLAKE2B 03d08cfc8cc5f1818ac8f57745193449deb363f7e3ff706af0624b7497efa593263d1cd8862bef6eb33a53f323ca7403f5556962b4410af48d3d26014e66d0e8 SHA512 3d61d9c147dd09c6a5c58fc325953bc637481e28a64a46838be26048c5bb07d556c7e1d87a9c0ff84d18ab097dfe343426750648a0c3662fd680b4d91b723bb7
-EBUILD rr-5.6.0-r4.ebuild 1705 BLAKE2B 339ba95e7f2cfab7335f65382a1e643e267aa27228f09362cb93710ffd8d9b83e2fe1b2050be5f58e2d2a066a3541f3e8912bf474d5bd135936b9ca3c79acdf6 SHA512 181e48c19d3f772ac6046a2d58cac91f1de8f684ec55267e3b61727902289f6191bc5841c92627aebf6c3edb097efd0dda4a2860064aa0bd5d3879e83a6338e2
-EBUILD rr-5.7.0.ebuild 1533 BLAKE2B c3463261c52b73050f42716f1a059be78e185f8e8d247a6ed210a754e63fc1370728933941b404330f0cc0d066ae18e5a05f7e27a5f2a697575f4854f378f57c SHA512 07b000f5fb53fa9e5094a145792222be92742c0d60d21a44720aa29c206d9beda7d31b6eda3690a7ec6f76beb3c2bb0601ca3e2a3406e8725b095fa8949405e2
+EBUILD rr-5.7.0.ebuild 1592 BLAKE2B 02ad1275f9231b58421a90a06bff158ba126a772dc26227c7d2eaf117437e6c9fe5acfbad83fd25bbae29a6fd4bbe48964589707631e38d114054ad7a427bc50 SHA512 bf44dbfeddfc7ad81e944dcc89ae017c08435c138df4cdc33ea7b38751e62ec85bfde126b25172e5c909dd3d4fbfe8be631cbb3eb5821a4e98e885e2e5eb240c
MISC metadata.xml 448 BLAKE2B 2ca27171b81983b513710708955b70a7a73174ca72fb8bac4c8363a5f0fb464431d9d84d3be7818e4132ff7ca9b2f6b3325c526e6424bbeac8ee6dad1728c8cb SHA512 01fa6e40deff5fc58f51b90f75f93cf38f10ad58e994153045954ebc9d00dc41e7d8ea625b2b882a376cb0db1dbcc9e1a025c85f9fb584ef7a46b6db812b649b
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
deleted file mode 100644
index 30dad8d9fa20..000000000000
--- a/dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-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/files/rr-5.6.0-gcc13.patch b/dev-util/rr/files/rr-5.6.0-gcc13.patch
deleted file mode 100644
index 41092a958dd7..000000000000
--- a/dev-util/rr/files/rr-5.6.0-gcc13.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-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/files/rr-5.6.0-linux-headers-6.0.patch b/dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch
deleted file mode 100644
index 36a911bcbece..000000000000
--- a/dev-util/rr/files/rr-5.6.0-linux-headers-6.0.patch
+++ /dev/null
@@ -1,62 +0,0 @@
-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/files/rr-5.6.0-tests-clang16.patch b/dev-util/rr/files/rr-5.6.0-tests-clang16.patch
deleted file mode 100644
index 8262b10817d4..000000000000
--- a/dev-util/rr/files/rr-5.6.0-tests-clang16.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-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/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.6.0-r2.ebuild b/dev-util/rr/rr-5.6.0-r2.ebuild
deleted file mode 100644
index 15dff5293fbd..000000000000
--- a/dev-util/rr/rr-5.6.0-r2.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..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}
- dev-debug/gdb[xml]
-"
-# Add all the deps needed only at build/test time.
-DEPEND+="
- test? (
- $(python_gen_cond_dep '
- dev-python/pexpect[${PYTHON_USEDEP}]
- ')
- dev-debug/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
-)
-
-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
-}
diff --git a/dev-util/rr/rr-5.6.0-r4.ebuild b/dev-util/rr/rr-5.6.0-r4.ebuild
deleted file mode 100644
index 435e16eb2002..000000000000
--- a/dev-util/rr/rr-5.6.0-r4.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2024 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-PYTHON_COMPAT=( python3_{10..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 ~arm64 ~x86"
-IUSE="multilib test"
-REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-
-DEPEND="
- ${PYTHON_DEPS}
- dev-libs/capnproto:=
- sys-libs/zlib:=
-"
-RDEPEND="
- ${DEPEND}
- dev-debug/gdb[xml]
-"
-# Add all the deps needed only at build/test time.
-DEPEND+="
- test? (
- $(python_gen_cond_dep '
- dev-python/pexpect[${PYTHON_USEDEP}]
- ')
- dev-debug/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}-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
-}
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"