git: 710a2e223065 - main - databases/mariadb103-client: fix build on powerpc64le

From: Piotr Kubaj <pkubaj_at_FreeBSD.org>
Date: Thu, 07 Oct 2021 17:56:19 UTC
The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=710a2e223065367033170db5a4012d7748807aba

commit 710a2e223065367033170db5a4012d7748807aba
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2021-10-07 17:53:58 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2021-10-07 17:53:58 +0000

    databases/mariadb103-client: fix build on powerpc64le
    
    Same patch as for mariadb104 and mariadb105.
---
 .../files/patch-include_my__cpu.h                  | 48 ++++++++++++++++++++++
 1 file changed, 48 insertions(+)

diff --git a/databases/mariadb103-client/files/patch-include_my__cpu.h b/databases/mariadb103-client/files/patch-include_my__cpu.h
new file mode 100644
index 000000000000..36a374bb7cc6
--- /dev/null
+++ b/databases/mariadb103-client/files/patch-include_my__cpu.h
@@ -0,0 +1,48 @@
+--- include/my_cpu.h.orig	2021-08-02 10:58:56 UTC
++++ include/my_cpu.h
+@@ -23,7 +23,8 @@
+   The defines are the same ones used by the linux kernel
+ */
+ 
+-#ifdef _ARCH_PWR8
++#if defined(_ARCH_PWR8)
++#if defined(linux)
+ #include <sys/platform/ppc.h>
+ /* Very low priority */
+ #define HMT_very_low() __ppc_set_ppr_very_low()
+@@ -37,6 +38,22 @@
+ #define HMT_medium_high() __ppc_set_ppr_med_high()
+ /* High priority */
+ #define HMT_high() asm volatile("or 3,3,3")
++#elif defined(__FreeBSD__)
++#include <sys/types.h>
++#include <sys/sysctl.h>
++/* Very low priority */
++#define HMT_very_low() __asm__ volatile ("or 31,31,31")
++/* Low priority */
++#define HMT_low() __asm__ volatile ("or 1,1,1")
++/* Medium low priority */
++#define HMT_medium_low() __asm__ volatile ("or 6,6,6")
++/* Medium priority */
++#define HMT_medium() __asm__ volatile ("or 2,2,2")
++/* Medium high priority */
++#define HMT_medium_high() __asm__ volatile ("or 5,5,5")
++/* High priority */
++#define HMT_high() asm volatile("or 3,3,3")
++#endif
+ #else
+ #define HMT_very_low()
+ #define HMT_low()
+@@ -72,7 +89,12 @@ static inline void MY_RELAX_CPU(void)
+   __asm__ __volatile__ ("pause");
+ #endif
+ #elif defined(_ARCH_PWR8)
++#if defined(linux)
+   __ppc_get_timebase();
++#elif defined(__FreeBSD__)
++  uint64_t __tb;
++  __asm__ volatile ("mfspr %0, 268" : "=r" (__tb));
++#endif
+ #else
+   int32 var, oldval = 0;
+   my_atomic_cas32_strong_explicit(&var, &oldval, 1, MY_MEMORY_ORDER_RELAXED,