summaryrefslogtreecommitdiff
path: root/dev-util
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util')
-rw-r--r--dev-util/Manifest.gzbin68420 -> 68406 bytes
-rw-r--r--dev-util/clinfo/Manifest2
-rw-r--r--dev-util/clinfo/clinfo-3.0.23.01.25.ebuild2
-rw-r--r--dev-util/meson/Manifest4
-rw-r--r--dev-util/meson/meson-1.1.0.ebuild (renamed from dev-util/meson/meson-1.1.0_rc2.ebuild)0
-rw-r--r--dev-util/opencl-headers/Manifest2
-rw-r--r--dev-util/opencl-headers/opencl-headers-2023.02.06.ebuild2
-rw-r--r--dev-util/rr/Manifest2
-rw-r--r--dev-util/rr/files/rr-5.6.0-gcc13-workaround.patch222
-rw-r--r--dev-util/rr/rr-5.6.0-r4.ebuild88
10 files changed, 318 insertions, 6 deletions
diff --git a/dev-util/Manifest.gz b/dev-util/Manifest.gz
index 9e01e0fee028..7d4d7808057d 100644
--- a/dev-util/Manifest.gz
+++ b/dev-util/Manifest.gz
Binary files differ
diff --git a/dev-util/clinfo/Manifest b/dev-util/clinfo/Manifest
index d374587dea3f..fa33cf60ba95 100644
--- a/dev-util/clinfo/Manifest
+++ b/dev-util/clinfo/Manifest
@@ -1,4 +1,4 @@
DIST clinfo-3.0.23.01.25.tar.gz 58325 BLAKE2B 20c6379c9fd22edd0d8938baa52fcec54f2d70687bd0ef21d153f4c29d54cf024be35f650f44c02b0a6cd340aa6aeeda93a198f51ec59847227b6de83adf7ad1 SHA512 c8e0f33a304a64f1fb4b4ffecb2a62bc10fb5e9777cc8d0cd44bf551e5c94141f04d4cafd28fe6e796bc365e356027297fc9c91359b23b152b1c98d9a128515c
-EBUILD clinfo-3.0.23.01.25.ebuild 623 BLAKE2B fb4a49b9b0763dc02b187532edfc3a783ef7fcbde8954e4ae77d31473ba3ce5f3d1cbe34db25b2d8c349b48ed1d876bb77e12d567a8024cef6508ffe31fb52d7 SHA512 a80aba1e7af139b38aab1024af688ca640ea0a54b2b6a3c9600183d83db2a3f5fb71ca68b0d30061bd60541e92fd48aa14d7289195f671beed7082d38fd831fa
+EBUILD clinfo-3.0.23.01.25.ebuild 630 BLAKE2B 1dd48f36c60128ad287d76f35b75cb80f390b1df1e445179ecf92e7a1087e2e471d457d855f762074e2c1b1f3e89183a405a7b623f2c917afa1415c62acefb9b SHA512 39949578d7da8b89064b41e26fdf1f2f225320d03419ba501caefb18a3a9a3638e68bc406061cc86d30de15598466bf1354aba9ed358223160c85817b6c8d24f
EBUILD clinfo-9999.ebuild 616 BLAKE2B cc1a02fa653b972c99b06958335100b82b53a83924e2c4b12e5633fed8ff88f4c7ac3a5a4a21cd3df5af3a555cf827306be9fcd1fa0a693b2e8f7abcaecabbcd SHA512 9de95b700b7050f4f49bb7411e8b906076e3022e7bcff2801996134b17a60251a91b0e80c0e8712e834e197b4a692791e7fa29a565af1f8912a7ca968e59c92d
MISC metadata.xml 328 BLAKE2B 21eff79ce1cc3c5088a2ad5d13d88fac9554f3f8d111651cd047682c66758d07469a63283d138b39e77c7dbc69cd5de70eed3be2816fbf8c51a7627741a5030d SHA512 c720305e388992ea76eb6b5924e997f84449a76a6c8d99ac73fc19a1fddb0970de2ec6596aafc7aad560122fe1cc26ed6dacf364fe6475984d01f30c8be4c2c0
diff --git a/dev-util/clinfo/clinfo-3.0.23.01.25.ebuild b/dev-util/clinfo/clinfo-3.0.23.01.25.ebuild
index b6c4e3a1eaed..b072f4d7586e 100644
--- a/dev-util/clinfo/clinfo-3.0.23.01.25.ebuild
+++ b/dev-util/clinfo/clinfo-3.0.23.01.25.ebuild
@@ -9,7 +9,7 @@ if [[ ${PV} == "9999" ]] ; then
SRC_URI=""
else
SRC_URI="https://github.com/Oblomov/clinfo/archive/${PV}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="~amd64 ~ppc64"
+ KEYWORDS="~amd64 ~ppc64 ~riscv"
fi
DESCRIPTION="A tool to display info about the system's OpenCL capabilities"
diff --git a/dev-util/meson/Manifest b/dev-util/meson/Manifest
index e1b408ca70a9..0a3844aca843 100644
--- a/dev-util/meson/Manifest
+++ b/dev-util/meson/Manifest
@@ -1,7 +1,7 @@
AUX meson-0.63-xtools-support.patch 1136 BLAKE2B 7600b29f1c4accbf33ca587b848566d4f9d30e26695b125aa895ec8a48ee0f7355c7692845c0d9bbb59eb452fc0cd8b634bd2a90d8918efa0b65ef4759b56d8e SHA512 725b193afe229690b6ef0d7a2a832695b7c09ca3376512097baec597a84df6e8e18791e9f29221e8a4a3537ad2371672e74041aa05ec6a218ed9b6218ea2ab61
DIST meson-1.0.1.tar.gz 2104183 BLAKE2B 23b47a2231da966de8da3032887a81458b795d5c0c1d35cf9e3ea1499f7ddbc28d1cc3ca469052c4b33c51fcf9f92a36dab44da0133d748afdbf4e5b260427f1 SHA512 3d2e2630f9eacf2fd999d5068d82b2a719400a55cfdea5d38253410a3ee74def638ac09622bceb72edf7bc867ae3de6a5f48c1846601e7e4b5afdf3ac9339ebc
-DIST meson-1.1.0rc2.tar.gz 2121953 BLAKE2B a76dd31b65e833315d2be484a041ccdf799f959b78e8b937601cd15c6c2f823789c97c066f4d57f20aa091c03a87639591725f6bbf6dd411b101d990818df5bd SHA512 fde87b2eb2cd3910fe577931919e7e16bac9f2945f20c56f63d2297068f5aca47d750f32ccbf9c30cc993bfc44984d33e35e1a99734051bec7dce86050a7e248
+DIST meson-1.1.0.tar.gz 2124254 BLAKE2B 149dedc0e49b72682fa053f27f9a6c2543362539861b4b79ce65ecf4d913e221ac2d63f3b9aa350bd7622851c73be418b804ae1131dd27607eb01218e0204a5e SHA512 b8968becd1de25d8e92ecbe4c3b50694269a463430b41fcf5206f35ac952507b01f316721fb36f8c7940437e35c3588f6a4504f5b8256fa47fd9b0ceb588ae39
EBUILD meson-1.0.1.ebuild 2975 BLAKE2B 887530bfe946ae9b8b19dcdce8ebfcc3ddb2bf5f4c21948039cce7c4012902f5ab9fa97ba7ab2d487eaa0a6fdc73ec52e295ecd309cb604bd28b718a6ba1ba62 SHA512 bb592e4cd5c6a9b03184871ae99bd4e93854364c67097723de2665ecb9a4b3160b4524db62bb293bcabcf16856ed17bc1925a00357eca273a186a30cbb933cbb
-EBUILD meson-1.1.0_rc2.ebuild 2985 BLAKE2B 0c4535db40346d0201e9590df62ddc73c61b1e5aa749d5d5b0c6a788d897d509aa92fde99e6cf29ec90790b20da5f6c503fad5e22e4563d0b1b5452039252f1d SHA512 7c82767343f7fac058700148195326fb5ecc41a96d06dbe26c4d36b9db2d15fd691ff8ca46cdda9789a94a4196705b82d8949c61ab7fc8b87136cfecbbfa97fc
+EBUILD meson-1.1.0.ebuild 2985 BLAKE2B 0c4535db40346d0201e9590df62ddc73c61b1e5aa749d5d5b0c6a788d897d509aa92fde99e6cf29ec90790b20da5f6c503fad5e22e4563d0b1b5452039252f1d SHA512 7c82767343f7fac058700148195326fb5ecc41a96d06dbe26c4d36b9db2d15fd691ff8ca46cdda9789a94a4196705b82d8949c61ab7fc8b87136cfecbbfa97fc
EBUILD meson-9999.ebuild 2983 BLAKE2B 0ea5d22287834058c10d8fef252fbdebe93706dba037bb3c5dbc68d4efdf9a1a885bc66e2d8cbec03b5fef53ebff283bd435ad3e0918b3e4e2d47935e05c91c0 SHA512 fffcd619626a784cce14309d8a80f7f6542aea07ae7b9401a4383860501687d9b77d8313533caa175bed297bf61751114346cf6dd646fd9a851c45a5d919c600
MISC metadata.xml 480 BLAKE2B 5d3a0af4d84e497dcc2ccd5eb680e898beda896d5c37dc71fcaad2fe63f436f758d356990a5bca06baee9d265389b6e7084daec90d13c004f5523df4d0badbff SHA512 748f91fc17a18302ad0892d458e8e59650ab23dd3db5e83da85cfbca03d7932633c37b16f039faa12d87f6e4ec75a7a7fe4cc22f17328e61d57d99b073b6df3f
diff --git a/dev-util/meson/meson-1.1.0_rc2.ebuild b/dev-util/meson/meson-1.1.0.ebuild
index d8c4a3c533d4..d8c4a3c533d4 100644
--- a/dev-util/meson/meson-1.1.0_rc2.ebuild
+++ b/dev-util/meson/meson-1.1.0.ebuild
diff --git a/dev-util/opencl-headers/Manifest b/dev-util/opencl-headers/Manifest
index 2c486da691f4..d4737c315879 100644
--- a/dev-util/opencl-headers/Manifest
+++ b/dev-util/opencl-headers/Manifest
@@ -1,3 +1,3 @@
DIST opencl-headers-2023.02.06.tar.gz 66125 BLAKE2B 75018fab7e530c955b4a61dc40626751894cf9c471234f0d1d5346d1eb38d00b13df5f87cbd2af59bfa17d014bb20f9ed13727fb660bc79b3728c075b7b1c613 SHA512 41730e80b267de45db9d7a3bcf9e0f29bfc86b25475a86d50180a7258e1240fc8c8f2ad3e222b03b3ef50c10ef63fb5b1647c056fec615e87965aa3196e8ac60
-EBUILD opencl-headers-2023.02.06.ebuild 609 BLAKE2B 70eb498df294bf5532a83144deb0db94a249789a837737bfa042b53b852d52dfe08a5c0f2dce4fda1122916dc439092f4e5ba7399b4f9ae3ca5f27f97acbdf77 SHA512 1327990574f155aabbd2a8eed3afde3b4e6449d3637a0182258ca45b9d1f282c6e8ee330fd8f2ed3f378c5bf1028ccf2acf2ed49367dde0aa1aa70779344cae3
+EBUILD opencl-headers-2023.02.06.ebuild 616 BLAKE2B 357a31bfbeca35b3a4900345fa617ef7f8d38b254eb0f20a9e36e51ac773df6eec09f5950a89d6762b0b444096c43bd025c7aebf8c37cd94b0671c54e8737d6b SHA512 ffa2378293a4ba70da1a9edc30fe1da4f7b9543d3c385c7d8b8a5985592dbdbfbedddc98a406e34a98cc02111266835331bc60ccf37065ac6636ea4375c898df
MISC metadata.xml 1055 BLAKE2B ac96e1bf07e353236170d3678541555b7d901984266dfd1356456db90effe430e6a042afc0b9b5a7f51d0e9cfbcef0fbf66fb46de82fdc8cc1cfa29c6cfd61d0 SHA512 6233610591851e415ab0354ca900dfdfa14fa2442e56094d547420ce710942be86c701820c3a63e2c6f070b74c0801f92bbe9ed6c7f2a5cae406f74b81acd86a
diff --git a/dev-util/opencl-headers/opencl-headers-2023.02.06.ebuild b/dev-util/opencl-headers/opencl-headers-2023.02.06.ebuild
index cf83a7816dd1..6790780253a5 100644
--- a/dev-util/opencl-headers/opencl-headers-2023.02.06.ebuild
+++ b/dev-util/opencl-headers/opencl-headers-2023.02.06.ebuild
@@ -14,7 +14,7 @@ SRC_URI="https://github.com/KhronosGroup/${MY_PN}/archive/refs/tags/v${PV}.tar.g
LICENSE="Apache-2.0"
SLOT="0"
-KEYWORDS="amd64 ppc64 x86"
+KEYWORDS="amd64 ppc64 ~riscv x86"
IUSE="test"
RESTRICT="!test? ( test )"
diff --git a/dev-util/rr/Manifest b/dev-util/rr/Manifest
index 0fe2ca26cfe9..683a850954f8 100644
--- a/dev-util/rr/Manifest
+++ b/dev-util/rr/Manifest
@@ -1,6 +1,8 @@
+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
EBUILD rr-5.6.0-r2.ebuild 1654 BLAKE2B 8475296a2d61b80ea2d1699e25157123473a471ccb2c144866873df21e2358ed6ffa7d8996bd34ff27aa740f629af80ec959960f01bd3c40a09cf7ee33fce11a SHA512 5a4be367068d39f53ed59548bb9680f70f269cb0ada1758fc3cbb3edf6a623286fedc9c4c054f8c4c470e4fed0374509eb0c07af4365329404c5846294bc3fb7
+EBUILD rr-5.6.0-r4.ebuild 1697 BLAKE2B c33ca4e63fba2de92e6e870cb556c12aaa31a646ad7a040e02da272d50ed8d29b707b76050d8af669a62474194635d7566d2a7e3746e5b307351d4f7755046e4 SHA512 5dae2899b53c3a85309e7954e8149def98f4e0e4ba2a24c88ecd4b57c18666b410d2edf148af4c20b29b6aaacd292f81a4a61f2c81fcb7509e9da9ace9c23751
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
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-r4.ebuild b/dev-util/rr/rr-5.6.0-r4.ebuild
new file mode 100644
index 000000000000..559533e754a6
--- /dev/null
+++ b/dev-util/rr/rr-5.6.0-r4.ebuild
@@ -0,0 +1,88 @@
+# 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}-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
+}