1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-30 10:38:37 +00:00

databases/mariadb106-server: fix build on riscv64

Copy patch from databases/mariadb105-server.
While here, also enable WSREP.
This commit is contained in:
Piotr Kubaj 2022-02-24 06:46:57 +00:00
parent b1c624bb63
commit 2ad588ce2c
2 changed files with 21 additions and 2 deletions

View File

@ -20,8 +20,6 @@ COMMENT?= Multithreaded SQL database (server)
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
BROKEN_riscv64= fails to compile: needs FP_X_INV from empty sys/riscv/include/ieeefp.h
LIB_DEPENDS+= libpcre2-8.so:devel/pcre2
# Ugly workaround for MariaDB/CMake library detection
@ -60,6 +58,7 @@ OPTIONS_DEFINE_amd64= WSREP
OPTIONS_DEFINE_aarch64= WSREP
OPTIONS_DEFINE_powerpc64le= WSREP
OPTIONS_DEFINE_powerpc64= WSREP
OPTIONS_DEFINE_riscv64= WSREP
OPTIONS_GROUP_COMPRESSION= LZ4 LZO SNAPPY ZSTD
OPTIONS_GROUP_ENGINES= COLUMNSTORE INNOBASE MROONGA OQGRAPH ROCKSDB S3 SPHINX SPIDER
OPTIONS_GROUP_GROONGA= ZMQ MSGPACK

View File

@ -0,0 +1,20 @@
--- sql/mysqld.cc.orig 2021-06-15 10:16:51 UTC
+++ sql/mysqld.cc
@@ -205,7 +205,7 @@ typedef fp_except fp_except_t;
inline void setup_fpu()
{
-#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) && !defined(HAVE_FEDISABLEEXCEPT)
+#if defined(__FreeBSD__) && defined(HAVE_IEEEFP_H) && !defined(HAVE_FEDISABLEEXCEPT) && defined(FP_X_INV)
/* We can't handle floating point exceptions with threads, so disable
this on freebsd
Don't fall for overflow, underflow,divide-by-zero or loss of precision.
@@ -218,7 +218,7 @@ inline void setup_fpu()
fpsetmask(~(FP_X_INV | FP_X_OFL | FP_X_UFL | FP_X_DZ |
FP_X_IMP));
#endif /* FP_X_DNML */
-#endif /* __FreeBSD__ && HAVE_IEEEFP_H && !HAVE_FEDISABLEEXCEPT */
+#endif /* __FreeBSD__ && HAVE_IEEEFP_H && !HAVE_FEDISABLEEXCEPT && FP_X_INV */
#ifdef HAVE_FEDISABLEEXCEPT
fedisableexcept(FE_ALL_EXCEPT);