summaryrefslogtreecommitdiff
path: root/databases/mysql80-client
diff options
context:
space:
mode:
authorjperkin <jperkin@pkgsrc.org>2022-11-02 17:02:10 +0000
committerjperkin <jperkin@pkgsrc.org>2022-11-02 17:02:10 +0000
commitc5c8bbb78a9898962176eae360f7cf3ee32c97af (patch)
treede76cbf53a77e9c75da596ae7a2586ce168a860e /databases/mysql80-client
parent5c7a669251f6b58fa5c3f6a26ec6f479dee3942d (diff)
downloadpkgsrc-c5c8bbb78a9898962176eae360f7cf3ee32c97af.tar.gz
mysql80: Update to 8.0.31.
Includes a number of pkgsrc cleanups, removing nonsense that has been cargo-culted since the MySQL 3.23.x days(!). Stop shipping mysql-test, it's absolutely huge and unnecessary. Add XXX to undocumented patches that we should probably just drop, and make others easier to maintain. Upstream changes are far too numerous to include here, so here are the links to the corresponding release notes for each since 8.0.24: https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-31.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-30.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-29.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-28.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-27.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-26.html https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-25.html Tested on SmartOS, I'll monitor bulk build reports for any fallout on other platforms (it takes ages to build).
Diffstat (limited to 'databases/mysql80-client')
-rw-r--r--databases/mysql80-client/MESSAGE5
-rw-r--r--databases/mysql80-client/Makefile3
-rw-r--r--databases/mysql80-client/Makefile.common62
-rw-r--r--databases/mysql80-client/PLIST4
-rw-r--r--databases/mysql80-client/distinfo36
-rw-r--r--databases/mysql80-client/options.mk35
-rw-r--r--databases/mysql80-client/patches/patch-CMakeLists.txt8
-rw-r--r--databases/mysql80-client/patches/patch-client_CMakeLists.txt14
-rw-r--r--databases/mysql80-client/patches/patch-client_mysqladmin.cc23
-rw-r--r--databases/mysql80-client/patches/patch-cmake_boost.cmake20
-rw-r--r--databases/mysql80-client/patches/patch-cmake_ldap.cmake15
-rw-r--r--databases/mysql80-client/patches/patch-cmake_os_SunOS.cmake26
-rw-r--r--databases/mysql80-client/patches/patch-include_my__compare.h3
-rw-r--r--databases/mysql80-client/patches/patch-include_my__thread.h4
-rw-r--r--databases/mysql80-client/patches/patch-libmysql_CMakeLists.txt67
-rw-r--r--databases/mysql80-client/patches/patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h8
-rw-r--r--databases/mysql80-client/patches/patch-scripts_mysqld_safe.sh8
-rw-r--r--databases/mysql80-client/patches/patch-sql_CMakeLists.txt12
-rw-r--r--databases/mysql80-client/patches/patch-sql_conn__handler_socket__connection.cc4
-rw-r--r--databases/mysql80-client/patches/patch-sql_item_geofunc_relchecks_bgwrap.h15
-rw-r--r--databases/mysql80-client/patches/patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc62
-rw-r--r--databases/mysql80-client/patches/patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h15
-rw-r--r--databases/mysql80-client/patches/patch-vio_viosocket.cc6
23 files changed, 213 insertions, 242 deletions
diff --git a/databases/mysql80-client/MESSAGE b/databases/mysql80-client/MESSAGE
deleted file mode 100644
index 509d6aada17..00000000000
--- a/databases/mysql80-client/MESSAGE
+++ /dev/null
@@ -1,5 +0,0 @@
-===========================================================================
-$NetBSD: MESSAGE,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
-
-This package is EXPERIMENTAL for now, recommend to only use for testing.
-===========================================================================
diff --git a/databases/mysql80-client/Makefile b/databases/mysql80-client/Makefile
index 5338b1384f5..120fe7e4865 100644
--- a/databases/mysql80-client/Makefile
+++ b/databases/mysql80-client/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.5 2022/06/28 11:31:19 wiz Exp $
+# $NetBSD: Makefile,v 1.6 2022/11/02 17:02:10 jperkin Exp $
PKGNAME= ${DISTNAME:S/-/-client-/}
-PKGREVISION= 4
COMMENT= MySQL 8, a free SQL database (client)
CONFLICTS= mysql3-client-[0-9]* mariadb-client-[0-9]*
diff --git a/databases/mysql80-client/Makefile.common b/databases/mysql80-client/Makefile.common
index 798d7491976..5ed9fcfdc37 100644
--- a/databases/mysql80-client/Makefile.common
+++ b/databases/mysql80-client/Makefile.common
@@ -1,11 +1,11 @@
-# $NetBSD: Makefile.common,v 1.2 2021/06/04 13:44:21 jperkin Exp $
+# $NetBSD: Makefile.common,v 1.3 2022/11/02 17:02:10 jperkin Exp $
#
# used by databases/mysql80-client/Makefile
# used by databases/mysql80-server/Makefile
-DISTNAME= mysql-8.0.24
+DISTNAME= mysql-8.0.31
CATEGORIES= databases
-MASTER_SITES= ${MASTER_SITE_MYSQL:=MySQL-8.0/}
+MASTER_SITES= https://cdn.mysql.com/Downloads/MySQL-8.0/
DISTFILES= mysql-boost-${PKGVERSION_NOREV}${EXTRACT_SUFX}
MAINTAINER?= pkgsrc-users@NetBSD.org
@@ -15,18 +15,14 @@ LICENSE= gnu-gpl-v2
DISTINFO_FILE?= ${.CURDIR}/../../databases/mysql80-client/distinfo
PATCHDIR?= ${.CURDIR}/../../databases/mysql80-client/patches
-BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.11
-
USE_CMAKE= yes
-USE_LANGUAGES= c c++ c++14 # 1.75+ boost requires c++14
+USE_LANGUAGES= c c++14
USE_TOOLS+= bash bison gmake perl:run
USE_GCC_RUNTIME= yes
USE_BUILTIN.libevent= no
.include "../../mk/bsd.prefs.mk"
-.include "options.mk"
-
# MYSQL_USER username of the database administrator
# MYSQL_GROUP group of the database administrator
# MYSQL_DATADIR home directory (location of the databases)
@@ -46,8 +42,6 @@ PKG_GROUPS_VARS+= MYSQL_GROUP
CONFIG_SHELL= ${TOOLS_PATH.bash}
-CFLAGS.IRIX+= -DIRIX5
-
BUILD_DEFS+= VARBASE
# paths
@@ -57,16 +51,18 @@ CMAKE_ARGS+= -DINSTALL_INCLUDEDIR="include/mysql"
CMAKE_ARGS+= -DINSTALL_INFODIR="info"
CMAKE_ARGS+= -DINSTALL_MANDIR="${PKGMANDIR}"
CMAKE_ARGS+= -DINSTALL_MYSQLSHAREDIR="share/mysql"
-CMAKE_ARGS+= -DINSTALL_MYSQLTESTDIR="share/mysql/test"
+CMAKE_ARGS+= -DINSTALL_MYSQLTESTDIR=""
CMAKE_ARGS+= -DINSTALL_PLUGINDIR="lib/mysql/plugin"
CMAKE_ARGS+= -DINSTALL_SBINDIR="sbin"
+CMAKE_ARGS+= -DINSTALL_SCRIPTDIR="bin"
+CMAKE_ARGS+= -DINSTALL_SQLBENCHDIR="share/mysql/sql-bench"
CMAKE_ARGS+= -DINSTALL_SUPPORTFILESDIR="share/mysql"
-CMAKE_ARGS+= -DROUTER_INSTALL_LOGROTATEDIR="share/mysql"
CMAKE_ARGS+= -DMYSQL_DATADIR=${MYSQL_DATADIR}
+CMAKE_ARGS+= -DROUTER_INSTALL_LOGROTATEDIR="share/mysql"
CMAKE_ARGS+= -DCMAKE_BUILD_TYPE=Release
-CMAKE_ARGS+= -DWITH_BOOST="${WRKSRC}/boost"
+CMAKE_ARGS+= -DLOCAL_BOOST_DIR="${WRKSRC}/boost"
CMAKE_ARGS+= -DWITH_ICU="system"
CMAKE_ARGS+= -DWITH_LIBEVENT="system"
CMAKE_ARGS+= -DWITH_LZ4="system"
@@ -74,11 +70,11 @@ CMAKE_ARGS+= -DWITH_RAPIDJSON="bundled"
CMAKE_ARGS+= -DWITH_SSL="system"
CMAKE_ARGS+= -DWITH_ZLIB="system"
CMAKE_ARGS+= -DWITH_ZSTD="system"
+
CMAKE_ARGS+= -DDEFAULT_CHARSET=${MYSQL_CHARSET}
CMAKE_ARGS+= -DDEFAULT_COLLATION=${MYSQL_COLLATION}
CMAKE_ARGS+= -DWITH_EXTRA_CHARSETS=${MYSQL_EXTRA_CHARSET}
CMAKE_ARGS+= -DWITH_UNIT_TESTS=OFF
-CMAKE_ARGS+= -DFORCE_INSOURCE_BUILD=1
# we need atomic builtins
.if ${OPSYS} == "NetBSD" && ${MACHINE_ARCH} == "i386"
@@ -86,32 +82,15 @@ GNU_ARCH.i386= i586
CFLAGS+= -march=i586
.endif
-CPPFLAGS+= -Dunix
-CFLAGS+= -DUSE_OLD_FUNCTIONS # 3.23.x compat
-#CFLAGS+= -D__STDC_FORMAT_MACROS=1 # always defined too late
-
-.if ${OPSYS} != "Interix"
-CFLAGS+= -fPIC -DPIC
-CXXFLAGS+= -fPIC -DPIC
-.endif
-
CMAKE_ARGS.SunOS+= -DFORCE_UNSUPPORTED_COMPILER=YES
# Force HAVE_CURSES_H on Solaris since the configure script is broken
# and does not properly detect this, breaking the build later on. Also
# explicitly disable epoll support as it is Linux-specific.
-CMAKE_ARGS.SunOS+= -DHAVE_SYS_EPOLL_H=NO
-CFLAGS.SunOS+= -DHAVE_CURSES_H
-CXXFLAGS.SunOS+= -DHAVE_CURSES_H
-
-.include "../../mk/pthread.buildlink3.mk"
+CMAKE_ARGS.SunOS+= -DHAVE_EPOLL=NO
-.if defined(PTHREAD_TYPE) && (${PTHREAD_TYPE} == "pth")
-CFLAGS+= -DSIGNALS_DONT_BREAK_READ
-CXXFLAGS+= -DSIGNALS_DONT_BREAK_READ
-.endif
-
-LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/mysql
+LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/mysql
+LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/mysqlrouter
SUBST_CLASSES+= scr
SUBST_STAGE.scr= pre-configure
@@ -122,22 +101,27 @@ SUBST_SED.scr+= -e "s,/bin/sh,${RCD_SCRIPTS_SHELL},g"
SUBST_SED.scr+= -e "s,@SHELL_PATH@,${RCD_SCRIPTS_SHELL},g"
SUBST_MESSAGE.scr= Fixing scripts.
-CMAKE_ARGS+= -DWITH_EDITLINE="system"
-CMAKE_ARGS+= -DEDITLINE_INCLUDE_DIR=${BUILDLINK_PREFIX.editline}/${BUILDLINK_INCDIRS.editline}
+.include "../../mk/readline.buildlink3.mk"
+
+.if ${READLINE_TYPE} == "readline"
+CMAKE_ARGS+= -DWITH_READLINE="system"
+.else
+CMAKE_ARGS+= -DWITH_EDITLINE="system"
+.endif
.if ${OPSYS} == "NetBSD"
CFLAGS.NetBSD+= -DHAVE_ALLOCA_H
CXXFLAGS.NetBSD+= -DHAVE_ALLOCA_H
# MySQL code depends on having <alloca.h>
post-patch:
- echo "#define alloca(sz) __builtin_alloca(sz)" > ${WRKSRC}/include/alloca.h
+ ${ECHO} "#define alloca(sz) __builtin_alloca(sz)" > ${WRKSRC}/include/alloca.h
.endif
-.include "../../mk/curses.buildlink3.mk"
.include "../../archivers/lz4/buildlink3.mk"
.include "../../archivers/zstd/buildlink3.mk"
-.include "../../devel/editline/buildlink3.mk"
.include "../../devel/libevent/buildlink3.mk"
+BUILDLINK_API_DEPENDS.zlib+= zlib>=1.2.11
.include "../../devel/zlib/buildlink3.mk"
+.include "../../mk/curses.buildlink3.mk"
.include "../../security/openssl/buildlink3.mk"
.include "../../textproc/icu/buildlink3.mk"
diff --git a/databases/mysql80-client/PLIST b/databases/mysql80-client/PLIST
index 9c5ca7458a5..b7493fb4096 100644
--- a/databases/mysql80-client/PLIST
+++ b/databases/mysql80-client/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+@comment $NetBSD: PLIST,v 1.2 2022/11/02 17:02:10 jperkin Exp $
bin/mysql
bin/mysql_client_test
bin/mysql_config
@@ -29,7 +29,7 @@ include/mysql/mysqld_error.h
lib/libmysqlclient.a
lib/libmysqlclient.so
lib/libmysqlclient.so.21
-lib/libmysqlclient.so.21.1.24
+lib/libmysqlclient.so.21.2.31
lib/pkgconfig/mysqlclient.pc
man/man1/comp_err.1
man/man1/ibd2sdi.1
diff --git a/databases/mysql80-client/distinfo b/databases/mysql80-client/distinfo
index fbb0407521a..35f9dca9e63 100644
--- a/databases/mysql80-client/distinfo
+++ b/databases/mysql80-client/distinfo
@@ -1,35 +1,35 @@
-$NetBSD: distinfo,v 1.5 2021/10/26 10:09:25 nia Exp $
+$NetBSD: distinfo,v 1.6 2022/11/02 17:02:10 jperkin Exp $
-BLAKE2s (mysql-boost-8.0.24.tar.gz) = 6734ea62a56d64e0241499919e11fae986deaf67239c8548a3adf529f4d97407
-SHA512 (mysql-boost-8.0.24.tar.gz) = ad8510614251c056f0963f8e51b9ed5e75452ccbf2728254d662fcc3a7ee1bdc177d1d34e958ddc31c7e6b5b3af9377ef2d9cbdc0353676b3026619673447deb
-Size (mysql-boost-8.0.24.tar.gz) = 290263082 bytes
-SHA1 (patch-CMakeLists.txt) = 16ca9bcbcaefdc8bd1bc0e8dc89ca7a347d14675
-SHA1 (patch-client_CMakeLists.txt) = f96d0d2e5ad8c1c8f5d6a9eabbd1c706bee852c0
-SHA1 (patch-client_mysqladmin.cc) = e3459bd009ef7ac0b7acece6bbcb82777a384db3
-SHA1 (patch-cmake_boost.cmake) = 7452d5ef84c63bb0bd34313aa0cedafee5f41618
-SHA1 (patch-cmake_os_SunOS.cmake) = 15cf67c136c2b6e608d9379290d235d71d6b769e
+BLAKE2s (mysql-boost-8.0.31.tar.gz) = 2da23b9233a2c5060aa22074cbe990d0dc1d90b2e55a4cd4b32571d2c77fe3bf
+SHA512 (mysql-boost-8.0.31.tar.gz) = 87b1678de8c2fd640fd6f3ae58266ea63fe240578330e3296d0e5fc209bbe9b0c22996214b6ca4cce8c0d9cc2f9897f4e6723d835b33fc4342983c82929c3d96
+Size (mysql-boost-8.0.31.tar.gz) = 334504577 bytes
+SHA1 (patch-CMakeLists.txt) = 6179dd8ff880e40ca5b309b5a63c55ac80875c15
+SHA1 (patch-client_CMakeLists.txt) = 4fbaf94d43b6c58aa14712213c08b897bd6227cf
+SHA1 (patch-cmake_ldap.cmake) = 46f0df1109ca0886e0d0903a39e25278139f1849
+SHA1 (patch-cmake_os_SunOS.cmake) = 66a7d4386f07c68ae85a94d467465e6d1bec6b57
SHA1 (patch-cmake_readline.cmake) = fb79ed969240ae2984098f72c2d3fb501154902c
SHA1 (patch-config.h.cmake) = e6debea316c5bb8338afb693d704007d45b3941f
SHA1 (patch-configure.cmake) = b03de49ecb8d6ce58ef24f5dcd8f0a8c95eab592
SHA1 (patch-include_CMakeLists.txt) = 289c1454d1b7e7fe8566187b3cefc722260993b6
-SHA1 (patch-include_my__compare.h) = e6b3146252d1ebf2e2423ed3682621aa68cce6bd
-SHA1 (patch-include_my__thread.h) = 176134a238c5c2f983aadb6d1cd620165f4057bb
+SHA1 (patch-include_my__compare.h) = b66c8cebef8ab3328201fe4c7433a484ba83e203
+SHA1 (patch-include_my__thread.h) = a88fee119c9a9e2c89e54c8b59555b0d5100cbcc
SHA1 (patch-include_my__thread__os__id.h) = 383923523623d0811915d5d75c523904102dcf43
SHA1 (patch-include_tables__contained__in.h) = c332b10760ef8b7f16b1e94821b79589f525e4e7
-SHA1 (patch-libmysql_CMakeLists.txt) = c46b0091aaebe91da89b2a8fb70398965d417664
+SHA1 (patch-libmysql_CMakeLists.txt) = cbc2185e52194de1bcdfe5e2af7bfc857e747acd
SHA1 (patch-mysys_kqueue__timers.cc) = 837474b779c24dd0af67444c2adbcf07b73e0d36
SHA1 (patch-mysys_stacktrace.cc) = 6792ceaae3c3b0d70bd8b6c848a128d50397e6f4
SHA1 (patch-router_CMakeLists.txt) = 9bfd1278c42070ada0606dfff34a66b8b95d0413
-SHA1 (patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h) = 4daf0b2a9e92eb6ffe8a00eb0bfb37db7a8638ee
+SHA1 (patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h) = ade643148787438d6d6f1f7b2636bbd0af87d70f
SHA1 (patch-router_src_harness_include_mysql_harness_net_ts_internet.h) = 29e019236423aaa77b71b273d009404e4fbafe73
SHA1 (patch-router_src_harness_include_mysql_harness_net_ts_local.h) = d2149f9840dc8b65a4d9d8332bcd5088b4f9b919
SHA1 (patch-router_src_harness_include_mysql_harness_tty.h) = ca883b2ed83b623922b58cf96f896de9847d37cb
SHA1 (patch-router_src_harness_src_stdx_io_file_handle.cc) = 5349b05663179e4ef049cfb1532514e48a3885c9
SHA1 (patch-scripts_CMakeLists.txt) = 15be14619275f0dc39c216901b2cabc6ee517300
-SHA1 (patch-scripts_mysqld_safe.sh) = 0784314227657aa0bc3f4a0b4e21c173a86fa94b
-SHA1 (patch-sql_CMakeLists.txt) = 84af2f2e58a17bde292a665a726489b8f56f4132
-SHA1 (patch-sql_conn__handler_socket__connection.cc) = b414e0d499f51750e1aa6e9dd7b4e7006456a079
-SHA1 (patch-sql_item_geofunc_relchecks_bgwrap.h) = d20896bfe2391d30aa9e95834c77e7de03377d76
+SHA1 (patch-scripts_mysqld_safe.sh) = 3d10c84e6fef391b5e7cd9a3ed0223bd8b18c42e
+SHA1 (patch-sql_CMakeLists.txt) = 94809ea12966392b9ea317da42f2b84219d36cc0
+SHA1 (patch-sql_conn__handler_socket__connection.cc) = 91f2f707576618396579809b83f931e51385d2a2
SHA1 (patch-sql_join__optimizer_bit__utils.h) = 3e75331da6b50935f082b2f738e6c6964afef5f7
SHA1 (patch-sql_resourcegroups_platform_thread__attrs__api__apple.cc) = e08ed53790ac8b03b38d566fee3a2688ca6065b3
-SHA1 (patch-vio_viosocket.cc) = 15dcc0dee88e736a844aacc02e9dbc6beeb915e4
+SHA1 (patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc) = 1ce0aec798a22f966c37d9ee38b3dee3d855a7e3
+SHA1 (patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h) = 2b41381af66e22231e897ebc97346c13b1f1e3a7
+SHA1 (patch-vio_viosocket.cc) = fcbe1eccb58fb840857f22178291ed2fb2c870b0
diff --git a/databases/mysql80-client/options.mk b/databases/mysql80-client/options.mk
deleted file mode 100644
index e3d83c9f8a4..00000000000
--- a/databases/mysql80-client/options.mk
+++ /dev/null
@@ -1,35 +0,0 @@
-# $NetBSD: options.mk,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
-
-PKG_OPTIONS_VAR= PKG_OPTIONS.mysql8
-
-# ndb-cluster does not configure with cmake
-PKG_SUPPORTED_OPTIONS+= ndb-cluster
-PKG_SUPPORTED_OPTIONS+= memcached
-
-.include "../../mk/bsd.options.mk"
-
-# Enable InnoDB Memcached support
-PLIST_VARS+= memcached
-.if !empty(PKG_OPTIONS:Mmemcached)
-PLIST.memcached= yes
-CMAKE_ARGS+= -DWITH_INNODB_MEMCACHED=ON
-CMAKE_ARGS+= -DWITH_BUNDLED_MEMCACHED=ON
-.else
-CMAKE_ARGS+= -DWITH_INNODB_MEMCACHED=OFF
-.endif
-
-# Enable Sphinx SE support
-# http://sphinxsearch.com/docs/current.html#sphinxse-overview
-#PLIST_VARS+= sphinx
-#.if !empty(PKG_OPTIONS:Msphinx) || make(distinfo) || make(makesum) || make(mdi)
-#SPHINX_VER= 2.2.11
-#DISTFILES= ${DEFAULT_DISTFILES} sphinx-${SPHINX_VER}-release${EXTRACT_SUFX}
-#SITES.sphinx-2.2.11-release.tar.gz= http://sphinxsearch.com/files/
-#. if !empty(PKGPATH:Mdatabases/mysql56-server)
-#MESSAGE_SRC= ${PKGDIR}/MESSAGE ${PKGDIR}/MESSAGE.sphinx
-#. endif
-#PLIST.sphinx= yes
-
-#post-extract:
-# ${CP} -R ${WRKDIR}/sphinx-${SPHINX_VER}-release/mysqlse ${WRKSRC}/storage/sphinx
-#.endif
diff --git a/databases/mysql80-client/patches/patch-CMakeLists.txt b/databases/mysql80-client/patches/patch-CMakeLists.txt
index 3645336e215..91601ce318b 100644
--- a/databases/mysql80-client/patches/patch-CMakeLists.txt
+++ b/databases/mysql80-client/patches/patch-CMakeLists.txt
@@ -1,10 +1,10 @@
-$NetBSD: patch-CMakeLists.txt,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-CMakeLists.txt,v 1.2 2022/11/02 17:02:10 jperkin Exp $
Split configuration between mysql-client and mysql-server.
---- CMakeLists.txt.orig 2019-12-09 19:53:17.000000000 +0000
+--- CMakeLists.txt.orig 2022-09-13 16:15:16.000000000 +0000
+++ CMakeLists.txt
-@@ -1329,8 +1329,9 @@ ADD_SUBDIRECTORY(utilities)
+@@ -2192,8 +2192,9 @@ ADD_SUBDIRECTORY(utilities)
ADD_SUBDIRECTORY(share)
ADD_SUBDIRECTORY(libservices)
@@ -15,7 +15,7 @@ Split configuration between mysql-client and mysql-server.
ADD_SUBDIRECTORY(sql)
ENDIF()
-@@ -1382,11 +1383,9 @@ IF(ENABLE_GCOV)
+@@ -2278,11 +2279,9 @@ IF(ENABLE_GCOV)
INCLUDE(fastcov)
ENDIF()
diff --git a/databases/mysql80-client/patches/patch-client_CMakeLists.txt b/databases/mysql80-client/patches/patch-client_CMakeLists.txt
index 2d80fdf322f..8af2d724f5a 100644
--- a/databases/mysql80-client/patches/patch-client_CMakeLists.txt
+++ b/databases/mysql80-client/patches/patch-client_CMakeLists.txt
@@ -1,8 +1,8 @@
-$NetBSD: patch-client_CMakeLists.txt,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-client_CMakeLists.txt,v 1.2 2022/11/02 17:02:10 jperkin Exp $
Split configuration between mysql-client and mysql-server.
---- client/CMakeLists.txt.orig 2021-05-08 21:52:13.000000000 +0000
+--- client/CMakeLists.txt.orig 2022-09-13 16:15:16.000000000 +0000
+++ client/CMakeLists.txt
@@ -28,6 +28,7 @@ DISABLE_MISSING_PROFILE_WARNING()
## Subdirectory with common client code.
@@ -12,15 +12,15 @@ Split configuration between mysql-client and mysql-server.
ADD_SUBDIRECTORY(dump)
## Subdirectory for mysql_migrate_keyring code.
ADD_SUBDIRECTORY(migrate_keyring)
-@@ -41,6 +42,7 @@ MYSQL_ADD_EXECUTABLE(mysql
- client_query_attributes.cc
+@@ -47,6 +48,7 @@ MYSQL_ADD_EXECUTABLE(mysql
+ ${CMAKE_CURRENT_SOURCE_DIR}/common/user_registration.cc
LINK_LIBRARIES mysqlclient client_base ${EDITLINE_LIBRARY}
)
+ENDIF()
IF(NOT WITHOUT_SERVER)
MYSQL_ADD_EXECUTABLE(mysql_upgrade
-@@ -57,6 +59,7 @@ IF(SOLARIS_SPARC AND MY_COMPILER_IS_SUNP
+@@ -55,6 +57,7 @@ IF(NOT WITHOUT_SERVER)
)
ENDIF()
@@ -28,7 +28,7 @@ Split configuration between mysql-client and mysql-server.
MYSQL_ADD_EXECUTABLE(mysqltest
mysqltest.cc
mysqltest/error_names.cc
-@@ -73,6 +76,7 @@ MYSQL_ADD_EXECUTABLE(mysqltest
+@@ -71,6 +74,7 @@ MYSQL_ADD_EXECUTABLE(mysqltest
ENABLE_EXPORTS
LINK_LIBRARIES mysqlclient
)
@@ -36,7 +36,7 @@ Split configuration between mysql-client and mysql-server.
MYSQL_ADD_EXECUTABLE(mysqlcheck
check/mysqlcheck.cc
check/mysqlcheck_core.cc
-@@ -261,16 +265,20 @@ MYSQL_ADD_EXECUTABLE(mysql_config_editor
+@@ -277,16 +281,20 @@ MYSQL_ADD_EXECUTABLE(mysql_config_editor
mysql_config_editor.cc
LINK_LIBRARIES mysqlclient
)
diff --git a/databases/mysql80-client/patches/patch-client_mysqladmin.cc b/databases/mysql80-client/patches/patch-client_mysqladmin.cc
deleted file mode 100644
index 78dd7a204ca..00000000000
--- a/databases/mysql80-client/patches/patch-client_mysqladmin.cc
+++ /dev/null
@@ -1,23 +0,0 @@
-$NetBSD: patch-client_mysqladmin.cc,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
-
-Redefine signals for Irix.
-
---- client/mysqladmin.cc.orig 2019-12-09 19:53:17.000000000 +0000
-+++ client/mysqladmin.cc
-@@ -413,8 +413,14 @@ int main(int argc, char *argv[]) {
- commands = temp_argv;
- if (tty_password) opt_password = get_tty_password(NullS);
-
-- (void)signal(SIGINT, endprog); /* Here if abort */
-- (void)signal(SIGTERM, endprog); /* Here if abort */
-+#ifdef IRIX5
-+#define _MYSQL_END_TYPE (void (*)(...))
-+#else
-+#define _MYSQL_END_TYPE
-+#endif
-+
-+ (void)signal(SIGINT, _MYSQL_END_TYPE endprog); /* Here if abort */
-+ (void)signal(SIGTERM, _MYSQL_END_TYPE endprog); /* Here if abort */
-
- if (opt_bind_addr) mysql_options(&mysql, MYSQL_OPT_BIND, opt_bind_addr);
- if (opt_compress) mysql_options(&mysql, MYSQL_OPT_COMPRESS, NullS);
diff --git a/databases/mysql80-client/patches/patch-cmake_boost.cmake b/databases/mysql80-client/patches/patch-cmake_boost.cmake
deleted file mode 100644
index 333dbfd847a..00000000000
--- a/databases/mysql80-client/patches/patch-cmake_boost.cmake
+++ /dev/null
@@ -1,20 +0,0 @@
-$NetBSD: patch-cmake_boost.cmake,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
-
-Allow newer boost.
-
---- cmake/boost.cmake.orig 2021-03-22 08:44:50.000000000 +0000
-+++ cmake/boost.cmake
-@@ -300,13 +300,6 @@ IF(NOT BOOST_MAJOR_VERSION EQUAL 10)
- COULD_NOT_FIND_BOOST()
- ENDIF()
-
--IF(NOT BOOST_MINOR_VERSION EQUAL 73)
-- MESSAGE(WARNING "Boost minor version found is ${BOOST_MINOR_VERSION} "
-- "we need 73"
-- )
-- COULD_NOT_FIND_BOOST()
--ENDIF()
--
- MESSAGE(STATUS "BOOST_INCLUDE_DIR ${BOOST_INCLUDE_DIR}")
-
- # We have a limited set of patches/bugfixes here:
diff --git a/databases/mysql80-client/patches/patch-cmake_ldap.cmake b/databases/mysql80-client/patches/patch-cmake_ldap.cmake
new file mode 100644
index 00000000000..0b0c3556041
--- /dev/null
+++ b/databases/mysql80-client/patches/patch-cmake_ldap.cmake
@@ -0,0 +1,15 @@
+$NetBSD: patch-cmake_ldap.cmake,v 1.1 2022/11/02 17:02:10 jperkin Exp $
+
+Disable hardcoded system paths.
+
+--- cmake/ldap.cmake.orig 2022-09-13 16:15:16.000000000 +0000
++++ cmake/ldap.cmake
+@@ -70,7 +70,7 @@ MACRO(FIND_SYSTEM_LDAP)
+ CMAKE_PUSH_CHECK_STATE()
+
+ # For Solaris 11.3 we need to explicitly search here:
+- IF(SOLARIS)
++ IF(0)
+ INCLUDE_DIRECTORIES(BEFORE SYSTEM /usr/include/openldap)
+ SET(CMAKE_REQUIRED_INCLUDES "/usr/include/openldap")
+ ENDIF()
diff --git a/databases/mysql80-client/patches/patch-cmake_os_SunOS.cmake b/databases/mysql80-client/patches/patch-cmake_os_SunOS.cmake
index eee8165ba7e..c47c787c711 100644
--- a/databases/mysql80-client/patches/patch-cmake_os_SunOS.cmake
+++ b/databases/mysql80-client/patches/patch-cmake_os_SunOS.cmake
@@ -1,22 +1,22 @@
-$NetBSD: patch-cmake_os_SunOS.cmake,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-cmake_os_SunOS.cmake,v 1.2 2022/11/02 17:02:10 jperkin Exp $
-* Do not attempt to detect ISA, it conflicts with wrappers.
+Disable a whole bunch of broken SunOS detection.
---- cmake/os/SunOS.cmake.orig 2019-12-09 19:53:17.000000000 +0000
+--- cmake/os/SunOS.cmake.orig 2022-09-13 16:15:16.000000000 +0000
+++ cmake/os/SunOS.cmake
-@@ -32,6 +32,7 @@ ELSE()
- SET(SOLARIS_INTEL 1)
- ENDIF()
+@@ -25,6 +25,7 @@ INCLUDE(CheckCSourceRuns)
+ INCLUDE(CheckCSourceCompiles)
+ INCLUDE(CheckCXXSourceCompiles)
+IF(0)
- IF (NOT "${CMAKE_C_FLAGS}${CMAKE_CXX_FLAGS}" MATCHES "-m32|-m64")
- IF(NOT FORCE_UNSUPPORTED_COMPILER)
- MESSAGE("Adding -m64")
-@@ -41,6 +42,7 @@ IF (NOT "${CMAKE_C_FLAGS}${CMAKE_CXX_FLA
- STRING_APPEND(CMAKE_CXX_LINK_FLAGS " -m64")
+ IF(CMAKE_SYSTEM_PROCESSOR MATCHES "sparc")
+ SET(SOLARIS_SPARC 1)
+ ELSE()
+@@ -60,6 +61,7 @@ IF(NOT FORCE_UNSUPPORTED_COMPILER)
+ MESSAGE(FATAL_ERROR "Unsupported compiler!")
ENDIF()
ENDIF()
+ENDIF()
- INCLUDE(CheckTypeSize)
- CHECK_TYPE_SIZE("void *" SIZEOF_VOIDP)
+ # Enable 64 bit file offsets
+ ADD_DEFINITIONS(-D_FILE_OFFSET_BITS=64)
diff --git a/databases/mysql80-client/patches/patch-include_my__compare.h b/databases/mysql80-client/patches/patch-include_my__compare.h
index 3fa6a2e5401..0cf8c0a6931 100644
--- a/databases/mysql80-client/patches/patch-include_my__compare.h
+++ b/databases/mysql80-client/patches/patch-include_my__compare.h
@@ -1,6 +1,7 @@
-$NetBSD: patch-include_my__compare.h,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-include_my__compare.h,v 1.2 2022/11/02 17:02:10 jperkin Exp $
Adjust HA_MAX_KEY_LENGTH x4.
+XXX: why? there's no documentation at all for this or commit history
--- include/my_compare.h.orig 2019-12-09 19:53:17.000000000 +0000
+++ include/my_compare.h
diff --git a/databases/mysql80-client/patches/patch-include_my__thread.h b/databases/mysql80-client/patches/patch-include_my__thread.h
index d9070385f63..1ee16becc54 100644
--- a/databases/mysql80-client/patches/patch-include_my__thread.h
+++ b/databases/mysql80-client/patches/patch-include_my__thread.h
@@ -1,4 +1,6 @@
-$NetBSD: patch-include_my__thread.h,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-include_my__thread.h,v 1.2 2022/11/02 17:02:10 jperkin Exp $
+
+NetBSD needs extra headers.
--- include/my_thread.h.orig 2019-12-09 19:53:17.000000000 +0000
+++ include/my_thread.h
diff --git a/databases/mysql80-client/patches/patch-libmysql_CMakeLists.txt b/databases/mysql80-client/patches/patch-libmysql_CMakeLists.txt
index 56832ea27bf..6a9a8e46bb3 100644
--- a/databases/mysql80-client/patches/patch-libmysql_CMakeLists.txt
+++ b/databases/mysql80-client/patches/patch-libmysql_CMakeLists.txt
@@ -1,59 +1,46 @@
-$NetBSD: patch-libmysql_CMakeLists.txt,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-libmysql_CMakeLists.txt,v 1.2 2022/11/02 17:02:10 jperkin Exp $
Do not install libmysqlclient with the server.
Generate versioned lib symlinks on FreeBSD to supress PLIST divergence.
authentication_ldap and libmysql_api_test require libmysqld.
---- libmysql/CMakeLists.txt.orig 2021-03-22 08:44:50.000000000 +0000
+--- libmysql/CMakeLists.txt.orig 2022-09-13 16:15:16.000000000 +0000
+++ libmysql/CMakeLists.txt
-@@ -270,11 +270,12 @@ IF(WIN32)
- LIST(APPEND LIBS_TO_MERGE auth_win_client)
- ENDIF()
+@@ -286,8 +286,14 @@ ADD_SUBDIRECTORY(authentication_kerberos
+ # authentication IAM client plug-in
+ ADD_SUBDIRECTORY(authentication_oci_client)
--# LDAP authentication SASL client plugin
--ADD_SUBDIRECTORY(authentication_ldap)
--
- # Merge several convenience libraries into one big mysqlclient
+IF(WITHOUT_SERVER)
- MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE} COMPONENT Development)
++ SET(SERVER_SKIP_INSTALL "")
+ELSE()
-+MERGE_CONVENIENCE_LIBRARIES(mysqlclient SKIP_INSTALL ${LIBS_TO_MERGE} COMPONENT Development)
++ SET(SERVER_SKIP_INSTALL SKIP_INSTALL)
+ENDIF()
- TARGET_LINK_LIBRARIES(mysqlclient PRIVATE ${LIBS_TO_LINK})
++
+ # Merge several convenience libraries into one big mysqlclient
+-MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${LIBS_TO_MERGE}
++MERGE_CONVENIENCE_LIBRARIES(mysqlclient ${SERVER_SKIP_INSTALL} ${LIBS_TO_MERGE}
+ COMPONENT Development
+ LINK_LIBRARIES ${LIBS_TO_LINK}
+ )
+@@ -325,7 +331,7 @@ ENDIF()
- # Visual Studio users need debug static library for debug projects
-@@ -310,12 +311,21 @@ ENDIF()
+ IF(UNIX)
+ SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
+- IF(NOT FREEBSD AND NOT APPLE)
++ IF(NOT APPLE)
+ STRING_APPEND(OS_SHARED_LIB_VERSION
+ ".${SHARED_LIB_MINOR_VERSION}.${SHARED_LIB_PATCH_VERSION}")
+ ENDIF()
+@@ -337,7 +343,7 @@ ENDIF()
# Merge several convenience libraries into one big mysqlclient
# and link them together into shared library.
-+IF(WITHOUT_SERVER)
- MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE}
+-MERGE_LIBRARIES_SHARED(libmysql ${LIBS_TO_MERGE}
++MERGE_LIBRARIES_SHARED(libmysql ${SERVER_SKIP_INSTALL} ${LIBS_TO_MERGE}
EXPORTS
${CLIENT_API_FUNCTIONS}
${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
- ${CLIENT_API_NONBLOCKING_FUNCTIONS}
- COMPONENT SharedLibraries)
-+ELSE()
-+MERGE_LIBRARIES_SHARED(libmysql SKIP_INSTALL ${LIBS_TO_MERGE}
-+ EXPORTS
-+ ${CLIENT_API_FUNCTIONS}
-+ ${CLIENT_API_FUNCTIONS_UNDOCUMENTED}
-+ ${CLIENT_API_NONBLOCKING_FUNCTIONS}
-+ COMPONENT SharedLibraries)
-+ENDIF()
- TARGET_LINK_LIBRARIES(libmysql PRIVATE ${LIBS_TO_LINK})
-
- IF(LINUX_STANDALONE AND KERBEROS_CUSTOM_LIBRARY)
-@@ -334,7 +344,7 @@ ENDIF()
-
- IF(UNIX)
- # libtool compatability
-- IF(FREEBSD OR APPLE)
-+ IF(APPLE)
- SET(OS_SHARED_LIB_VERSION "${SHARED_LIB_MAJOR_VERSION}")
- ELSE()
- SET(OS_SHARED_LIB_VERSION
-@@ -397,6 +407,7 @@ CONFIGURE_FILE(api_test.c.in ${CMAKE_CUR
+@@ -403,6 +409,7 @@ CONFIGURE_FILE(api_test.c.in ${CMAKE_CUR
# from @CLIENT_API_FUNCTIONS@ are declared by <mysql.h>. It will fail
# to run if not all of these symbols are exported by the library.
#
@@ -61,7 +48,7 @@ authentication_ldap and libmysql_api_test require libmysqld.
MYSQL_ADD_EXECUTABLE(libmysql_api_test
${CMAKE_CURRENT_BINARY_DIR}/api_test.c
LINK_LIBRARIES libmysql ${LIBRT}
-@@ -425,3 +436,4 @@ ADD_CUSTOM_COMMAND(TARGET libmysql_api_t
+@@ -432,3 +439,4 @@ MY_ADD_CUSTOM_TARGET(run_libmysql_api_te
COMMAND libmysql_api_test
> ${CMAKE_CURRENT_BINARY_DIR}/libmysql_api_test.out
)
diff --git a/databases/mysql80-client/patches/patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h b/databases/mysql80-client/patches/patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h
index b267bfddebc..6a8811c3ca5 100644
--- a/databases/mysql80-client/patches/patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h
+++ b/databases/mysql80-client/patches/patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h
@@ -1,11 +1,11 @@
-$NetBSD: patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-router_src_harness_include_mysql_harness_net_ts_impl_netif.h,v 1.2 2022/11/02 17:02:10 jperkin Exp $
NetBSD also has & needs <ifaddrs.h>
---- router/src/harness/include/mysql/harness/net_ts/impl/netif.h.orig 2021-05-09 02:48:24.814349260 +0000
+--- router/src/harness/include/mysql/harness/net_ts/impl/netif.h.orig 2022-09-13 16:15:16.000000000 +0000
+++ router/src/harness/include/mysql/harness/net_ts/impl/netif.h
-@@ -31,7 +31,7 @@
- #include <string>
+@@ -32,7 +32,7 @@
+ #include <string_view>
#if defined(__linux__) || defined(__FreeBSD__) || defined(__APPLE__) || \
- defined(__sun__)
diff --git a/databases/mysql80-client/patches/patch-scripts_mysqld_safe.sh b/databases/mysql80-client/patches/patch-scripts_mysqld_safe.sh
index adbe65f5cfb..a95dc0a59d8 100644
--- a/databases/mysql80-client/patches/patch-scripts_mysqld_safe.sh
+++ b/databases/mysql80-client/patches/patch-scripts_mysqld_safe.sh
@@ -1,8 +1,10 @@
-$NetBSD: patch-scripts_mysqld_safe.sh,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-scripts_mysqld_safe.sh,v 1.2 2022/11/02 17:02:10 jperkin Exp $
---- scripts/mysqld_safe.sh.orig 2011-03-31 13:36:18.000000000 +0000
+XXX: why are we doing this and why is it undocumented?
+
+--- scripts/mysqld_safe.sh.orig 2022-09-13 16:15:16.000000000 +0000
+++ scripts/mysqld_safe.sh
-@@ -747,7 +747,7 @@ fi
+@@ -852,7 +852,7 @@ fi
# Alternatively, you can start mysqld with the "myisam-recover" option. See
# the manual for details.
#
diff --git a/databases/mysql80-client/patches/patch-sql_CMakeLists.txt b/databases/mysql80-client/patches/patch-sql_CMakeLists.txt
index 6ff600ca649..753f19811fa 100644
--- a/databases/mysql80-client/patches/patch-sql_CMakeLists.txt
+++ b/databases/mysql80-client/patches/patch-sql_CMakeLists.txt
@@ -1,14 +1,14 @@
-$NetBSD: patch-sql_CMakeLists.txt,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-sql_CMakeLists.txt,v 1.2 2022/11/02 17:02:10 jperkin Exp $
* use a provided ffsll implementation if the system does not have one
* use noop implementation (apple) for binding threads to a cpu
TODO: netbsd and irix has apis for this, perhaps implement this.
---- sql/CMakeLists.txt.orig 2021-03-22 08:44:50.000000000 +0000
+--- sql/CMakeLists.txt.orig 2022-09-13 16:15:16.000000000 +0000
+++ sql/CMakeLists.txt
-@@ -589,6 +589,10 @@ SET(SQL_SHARED_SOURCES
- daemon_proxy_keyring/daemon_proxy_keyring.cc
- )
+@@ -648,6 +648,10 @@ IF(BUILD_IS_SINGLE_CONFIG)
+ ENDIF()
+ ENDIF()
+IF(NOT HAVE_FFSLL)
+LIST(APPEND SQL_SHARED_SOURCES ffsll.cc)
@@ -17,7 +17,7 @@ TODO: netbsd and irix has apis for this, perhaps implement this.
# BISON_TARGET(<Name> <YaccInput> <CodeOutput>
# [COMPILE_FLAGS <flags>]
# [DEFINES_FILE <file>]
-@@ -689,6 +693,9 @@ ELSEIF(SOLARIS)
+@@ -748,6 +752,9 @@ ELSEIF(SOLARIS)
ELSEIF(WIN32)
LIST(APPEND SQL_SHARED_SOURCES
resourcegroups/platform/thread_attrs_api_win.cc)
diff --git a/databases/mysql80-client/patches/patch-sql_conn__handler_socket__connection.cc b/databases/mysql80-client/patches/patch-sql_conn__handler_socket__connection.cc
index 7f2793175db..16dabed23a4 100644
--- a/databases/mysql80-client/patches/patch-sql_conn__handler_socket__connection.cc
+++ b/databases/mysql80-client/patches/patch-sql_conn__handler_socket__connection.cc
@@ -1,4 +1,6 @@
-$NetBSD: patch-sql_conn__handler_socket__connection.cc,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
+$NetBSD: patch-sql_conn__handler_socket__connection.cc,v 1.2 2022/11/02 17:02:10 jperkin Exp $
+
+XXX: undocumented
--- sql/conn_handler/socket_connection.cc.orig 2019-12-09 19:53:17.000000000 +0000
+++ sql/conn_handler/socket_connection.cc
diff --git a/databases/mysql80-client/patches/patch-sql_item_geofunc_relchecks_bgwrap.h b/databases/mysql80-client/patches/patch-sql_item_geofunc_relchecks_bgwrap.h
deleted file mode 100644
index c6d48ce86cc..00000000000
--- a/databases/mysql80-client/patches/patch-sql_item_geofunc_relchecks_bgwrap.h
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-sql_item_geofunc_relchecks_bgwrap.h,v 1.1 2021/05/13 15:25:20 jdolecek Exp $
-
-<algorithm> is needed to define std::for_each() required by the boost 1.73
-headers
-
---- sql/item_geofunc_relchecks_bgwrap.h.orig 2021-05-09 10:15:24.903436550 +0000
-+++ sql/item_geofunc_relchecks_bgwrap.h
-@@ -39,6 +39,7 @@
- #include <set>
- #include <string> // Boost expects std::string to be already present.
- #include <vector>
-+#include <algorithm>
-
- #include <boost/geometry/algorithms/crosses.hpp>
- #include <boost/geometry/algorithms/intersects.hpp>
diff --git a/databases/mysql80-client/patches/patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc b/databases/mysql80-client/patches/patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc
new file mode 100644
index 00000000000..1a6b0566308
--- /dev/null
+++ b/databases/mysql80-client/patches/patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc
@@ -0,0 +1,62 @@
+$NetBSD: patch-sql_resourcegroups_platform_thread__attrs__api__solaris.cc,v 1.1 2022/11/02 17:02:10 jperkin Exp $
+
+illumos does not yet have processor_affinity().
+
+--- sql/resourcegroups/platform/thread_attrs_api_solaris.cc.orig 2022-09-13 16:15:16.000000000 +0000
++++ sql/resourcegroups/platform/thread_attrs_api_solaris.cc
+@@ -60,6 +60,7 @@ bool bind_to_cpu(cpu_id_t cpu_id, my_thr
+ }
+
+ bool bind_to_cpus(const std::vector<cpu_id_t> &cpu_ids) {
++#if !defined(__illumos__)
+ if (cpu_ids.empty()) return false;
+
+ procset_t ps;
+@@ -75,11 +76,13 @@ bool bind_to_cpus(const std::vector<cpu_
+ my_strerror(errbuf, MYSQL_ERRMSG_SIZE, my_errno()));
+ return true;
+ }
++#endif
+ return false;
+ }
+
+ bool bind_to_cpus(const std::vector<cpu_id_t> &cpu_ids,
+ my_thread_os_id_t thread_id) {
++#if !defined(__illumos__)
+ procset_t ps;
+ uint_t nids = cpu_ids.size();
+ id_t *ids = reinterpret_cast<id_t *>(const_cast<unsigned *>(cpu_ids.data()));
+@@ -95,10 +98,12 @@ bool bind_to_cpus(const std::vector<cpu_
+ my_strerror(errbuf, MYSQL_ERRMSG_SIZE, my_errno()));
+ return true;
+ }
++#endif
+ return false;
+ }
+
+ bool unbind_thread() {
++#if !defined(__illumos__)
+ procset_t ps;
+ uint32_t flags = PA_CLEAR;
+
+@@ -111,10 +116,12 @@ bool unbind_thread() {
+ my_strerror(errbuf, MYSQL_ERRMSG_SIZE, my_errno()));
+ return true;
+ }
++#endif
+ return false;
+ }
+
+ bool unbind_thread(my_thread_os_id_t thread_id) {
++#if !defined(__illumos__)
+ procset_t ps;
+ uint32_t flags = PA_CLEAR;
+
+@@ -127,6 +134,7 @@ bool unbind_thread(my_thread_os_id_t thr
+ my_strerror(errbuf, MYSQL_ERRMSG_SIZE, my_errno()));
+ return true;
+ }
++#endif
+ return false;
+ }
+
diff --git a/databases/mysql80-client/patches/patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h b/databases/mysql80-client/patches/patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h
new file mode 100644
index 00000000000..fede0298a93
--- /dev/null
+++ b/databases/mysql80-client/patches/patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h
@@ -0,0 +1,15 @@
+$NetBSD: patch-storage_innobase_include_detail_ut_large__page__alloc-solaris.h,v 1.1 2022/11/02 17:02:10 jperkin Exp $
+
+Avoid -fpermissive errors.
+
+--- storage/innobase/include/detail/ut/large_page_alloc-solaris.h.orig 2022-09-13 16:15:16.000000000 +0000
++++ storage/innobase/include/detail/ut/large_page_alloc-solaris.h
+@@ -65,7 +65,7 @@ inline void *large_page_aligned_alloc(si
+ struct memcntl_mha m = {};
+ m.mha_cmd = MHA_MAPSIZE_VA;
+ m.mha_pagesize = large_page_default_size;
+- int ret = memcntl(ptr, n_bytes_rounded, MC_HAT_ADVISE, (caddr_t)&m, 0, 0);
++ int ret = memcntl((caddr_t)ptr, n_bytes_rounded, MC_HAT_ADVISE, (caddr_t)&m, 0, 0);
+ if (unlikely(ret == -1)) {
+ ib::log_warn(ER_IB_MSG_856)
+ << "large_page_aligned_alloc memcntl(ptr, " << n_bytes_rounded
diff --git a/databases/mysql80-client/patches/patch-vio_viosocket.cc b/databases/mysql80-client/patches/patch-vio_viosocket.cc
index 3e465f3e96d..101bfbd3559 100644
--- a/databases/mysql80-client/patches/patch-vio_viosocket.cc
+++ b/databases/mysql80-client/patches/patch-vio_viosocket.cc
@@ -1,8 +1,8 @@
-$NetBSD: patch-vio_viosocket.cc,v 1.2 2021/06/22 10:12:37 nia Exp $
+$NetBSD: patch-vio_viosocket.cc,v 1.3 2022/11/02 17:02:10 jperkin Exp $
* define ppoll on older NetBSD that only has pollts
---- vio/viosocket.cc.orig 2021-03-22 08:44:50.000000000 +0000
+--- vio/viosocket.cc.orig 2022-09-13 16:15:16.000000000 +0000
+++ vio/viosocket.cc
@@ -70,6 +70,13 @@
@@ -15,6 +15,6 @@ $NetBSD: patch-vio_viosocket.cc,v 1.2 2021/06/22 10:12:37 nia Exp $
+#endif
+#endif
+
- int vio_errno(Vio *vio MY_ATTRIBUTE((unused))) {
+ int vio_errno(Vio *vio [[maybe_unused]]) {
/* These transport types are not Winsock based. */
#ifdef _WIN32