Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/extra/heaptrack
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2023-05-22 20:18:50 +0200
committerErich Eckner <git@eckner.net>2023-05-22 20:18:50 +0200
commite74cde76c104df82b120a7b13964cb786da8f565 (patch)
tree39967e24037929c04aaf79922aa260b437a60a5e /extra/heaptrack
parent73e1d3b448cc583ab38cae4d61a26f313fad946b (diff)
community -> extra
Diffstat (limited to 'extra/heaptrack')
-rw-r--r--extra/heaptrack/49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch25
-rw-r--r--extra/heaptrack/76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch16
-rw-r--r--extra/heaptrack/PKGBUILD15
-rw-r--r--extra/heaptrack/c456f6a1575fb2834238a1f693e7c7787d768d42.patch13
4 files changed, 69 insertions, 0 deletions
diff --git a/extra/heaptrack/49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch b/extra/heaptrack/49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch
new file mode 100644
index 00000000..9ddad81e
--- /dev/null
+++ b/extra/heaptrack/49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch
@@ -0,0 +1,25 @@
+diff --git a/tests/auto/tst_io.cpp b/tests/auto/tst_io.cpp
+index 48abda6..fd31b31 100644
+--- a/tests/auto/tst_io.cpp
++++ b/tests/auto/tst_io.cpp
+@@ -27,6 +27,11 @@
+
+ using namespace std;
+
++constexpr uint64_t operator""_u64(unsigned long long v)
++{
++ return static_cast<uint64_t>(v);
++}
++
+ TEST_CASE ("write data", "[write]") {
+ TempFile file;
+ REQUIRE(file.open());
+@@ -124,7 +129,7 @@ TEST_CASE ("read line 64bit", "[read]") {
+ REQUIRE(reader >> module);
+ REQUIRE(module == "/tmp/KDevelop-5.2.1-x86_64/usr/lib/libKF5Completion.so.5");
+
+- for (uint64_t expected : {0x7f48beedc00ul, 0x0ul, 0x36854ul, 0x236858ul, 0x2700ul}) {
++ for (auto expected : {0x7f48beedc00_u64, 0x0_u64, 0x36854_u64, 0x236858_u64, 0x2700_u64}) {
+ uint64_t addr = 0;
+ REQUIRE(reader >> addr);
+ REQUIRE(addr == expected);
diff --git a/extra/heaptrack/76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch b/extra/heaptrack/76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch
new file mode 100644
index 00000000..8448d679
--- /dev/null
+++ b/extra/heaptrack/76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch
@@ -0,0 +1,16 @@
+diff --git a/src/util/linewriter.h b/src/util/linewriter.h
+index 73a7930..e895e87 100644
+--- a/src/util/linewriter.h
++++ b/src/util/linewriter.h
+@@ -158,6 +158,11 @@ public:
+ return __builtin_clzl(V);
+ }
+
++ inline static unsigned clz(long long unsigned V)
++ {
++ return __builtin_clzll(V);
++ }
++
+ template <typename V>
+ static char* writeHexNumber(char* buffer, V value)
+ {
diff --git a/extra/heaptrack/PKGBUILD b/extra/heaptrack/PKGBUILD
new file mode 100644
index 00000000..86e5c06b
--- /dev/null
+++ b/extra/heaptrack/PKGBUILD
@@ -0,0 +1,15 @@
+# backport 32-bit specific fixed from trunk to 1.1.0
+
+source+=('76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch' '49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch' 'c456f6a1575fb2834238a1f693e7c7787d768d42.patch')
+sha256sums+=('7e5256b5f129d5b88c72b8621fc676322c4bcbb4388973d3b5c9b7ff2c874334' '2ef8e8b95792cbebfb33a1959e2fdb8fcbb24edd0243cccd0f25958d1592aaab' 'a8ad15176973a074e97492d7008555ecd895a8fbe7f0805a9f4562054311091d')
+
+eval "$(
+ declare -f prepare | \
+ sed '
+ /}/ i \
+ cd ${pkgname}-${pkgver}\n \
+ patch -Np1 < ${srcdir}/76fd2e84ba133e96d2cfdf90cb715e66e923eb8f.patch\n \
+ patch -Np1 < ${srcdir}/49577e019ea791ee63962cdfe7e9c0c5b5c6ea4b.patch\n \
+ patch -Np1 < ${srcdir}/c456f6a1575fb2834238a1f693e7c7787d768d42.patch
+ '
+)"
diff --git a/extra/heaptrack/c456f6a1575fb2834238a1f693e7c7787d768d42.patch b/extra/heaptrack/c456f6a1575fb2834238a1f693e7c7787d768d42.patch
new file mode 100644
index 00000000..e6b8f739
--- /dev/null
+++ b/extra/heaptrack/c456f6a1575fb2834238a1f693e7c7787d768d42.patch
@@ -0,0 +1,13 @@
+diff --git a/src/track/libheaptrack.cpp b/src/track/libheaptrack.cpp
+index 8646893..af1ba5e 100644
+--- a/src/track/libheaptrack.cpp
++++ b/src/track/libheaptrack.cpp
+@@ -121,7 +121,7 @@ inline void debugLog(const char fmt[], Args... args)
+ if (debugLevel <= s_debugVerbosity) {
+ RecursionGuard guard;
+ flockfile(stderr);
+- fprintf(stderr, "heaptrack debug(%d) [%d:%d]@%lu ", static_cast<int>(debugLevel), getpid(), gettid(),
++ fprintf(stderr, "heaptrack debug(%d) [%d:%d]@%" PRIu64 " ", static_cast<int>(debugLevel), getpid(), gettid(),
+ elapsedTime().count());
+ fprintf(stderr, fmt, args...);
+ fputc('\n', stderr);