<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/cf19507fe836d96102209dd807e080d4e334ed2d">https://github.com/macports/macports-ports/commit/cf19507fe836d96102209dd807e080d4e334ed2d</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit cf19507fe836d96102209dd807e080d4e334ed2d
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Sun May 26 23:48:31 2024 +0800
<span style='display:block; white-space:pre;color:#404040;'> lexbor: add tests and perf variants
</span>---
net/lexbor/Portfile | 19 +++++++++
net/lexbor/files/0001-perf.c-fix-for-powerpc.patch | 46 ++++++++++++++++++++++
2 files changed, 65 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/lexbor/Portfile b/net/lexbor/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 8c87cd7ba2d..f955d424dd7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/net/lexbor/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/lexbor/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -36,3 +36,22 @@ post-destroot {
</span> CHANGELOG.md LICENSE NOTICE README.md \
${destroot}${docdir}
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant perf description "Enable support for rdtsc" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://github.com/lexbor/lexbor/pull/227
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0001-perf.c-fix-for-powerpc.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DLEXBOR_WITH_PERF=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant tests description "Enable testing" {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.pre_args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DCMAKE_BUILD_WITH_INSTALL_RPATH:BOOL=OFF
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -DLEXBOR_BUILD_TESTS=ON
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/net/lexbor/files/0001-perf.c-fix-for-powerpc.patch b/net/lexbor/files/0001-perf.c-fix-for-powerpc.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..47cfc277816
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/net/lexbor/files/0001-perf.c-fix-for-powerpc.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,46 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 46f0700bb0cc4216be2ec73216f85075df161e4d Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Sun, 26 May 2024 18:47:27 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH] perf.c: fix for powerpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ source/lexbor/ports/posix/lexbor/core/perf.c | 19 +++++++++++++++++++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 19 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git source/lexbor/ports/posix/lexbor/core/perf.c source/lexbor/ports/posix/lexbor/core/perf.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 79b99bc..d4dbfbc 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- source/lexbor/ports/posix/lexbor/core/perf.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ source/lexbor/ports/posix/lexbor/core/perf.c
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -92,6 +92,24 @@ lexbor_perf_in_sec(void *perf)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static unsigned long long
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ lexbor_perf_clock(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__POWERPC__) || defined(__powerpc__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ unsigned long long int result = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ unsigned long int upper, lower, tmp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ __asm__ volatile (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "0:\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "\tmftbu %0\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "\tmftb %1\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "\tmftbu %2\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "\tcmpw %2,%0\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ "\tbne 0b\n"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ : "=r"(upper), "=r"(lower), "=r"(tmp)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ );
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ result = upper;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ result = result << 32;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ result = result | lower;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ return result;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ unsigned long long x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ /*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -108,6 +126,7 @@ lexbor_perf_clock(void)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : "rdx", "ebx", "ecx");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return x;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static unsigned long long
</span></pre><pre style='margin:0'>
</pre>