aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorflo <flo@FreeBSD.org>2012-12-29 03:17:48 +0800
committerflo <flo@FreeBSD.org>2012-12-29 03:17:48 +0800
commit95039d2f622db4293fee06530d5e19a5ad2d29ed (patch)
tree6d210192d550018b47aea4c6c83dc42dd881acda
parent819542ed796e67a6be5588f80718cb7ccb9db9b2 (diff)
downloadfreebsd-ports-gnome-95039d2f622db4293fee06530d5e19a5ad2d29ed.tar.gz
freebsd-ports-gnome-95039d2f622db4293fee06530d5e19a5ad2d29ed.tar.zst
freebsd-ports-gnome-95039d2f622db4293fee06530d5e19a5ad2d29ed.zip
Add Percona Server
Percona Server is an enhanced drop-in replacement for MySQL Approved by: portmgr (bapt) Initial patches by: pgollucci
-rw-r--r--Mk/bsd.database.mk17
-rw-r--r--databases/Makefile2
-rw-r--r--databases/percona55-client/Makefile28
-rw-r--r--databases/percona55-client/files/patch-CMakeLists.txt56
-rw-r--r--databases/percona55-client/files/patch-client_CMakeLists.txt43
-rw-r--r--databases/percona55-client/files/patch-client__mysql.cc16
-rw-r--r--databases/percona55-client/files/patch-extra_CMakeLists.txt25
-rw-r--r--databases/percona55-client/files/patch-extra_yassl_taocrypt_src_integer.cpp11
-rw-r--r--databases/percona55-client/files/patch-include_CMakeLists.txt12
-rw-r--r--databases/percona55-client/files/patch-include_my_compare.h11
-rw-r--r--databases/percona55-client/files/patch-include_myisam.h11
-rw-r--r--databases/percona55-client/files/patch-man_CMakeLists.txt13
-rw-r--r--databases/percona55-client/files/patch-mysys_default.c31
-rw-r--r--databases/percona55-client/files/patch-scripts_CMakeLists.txt78
-rw-r--r--databases/percona55-client/files/patch-support-files_CMakeLists.txt37
-rw-r--r--databases/percona55-client/pkg-plist75
-rw-r--r--databases/percona55-server/Makefile101
-rw-r--r--databases/percona55-server/distinfo2
-rw-r--r--databases/percona55-server/files/mysql-server.in75
-rw-r--r--databases/percona55-server/files/patch-CMakeLists.txt38
-rw-r--r--databases/percona55-server/files/patch-client_CMakeLists.txt61
-rw-r--r--databases/percona55-server/files/patch-cmake_plugin.cmake10
-rw-r--r--databases/percona55-server/files/patch-extra_CMakeLists.txt12
-rw-r--r--databases/percona55-server/files/patch-extra_yassl_taocrypt_src_integer.cpp11
-rw-r--r--databases/percona55-server/files/patch-include_CMakeLists.txt10
-rw-r--r--databases/percona55-server/files/patch-include_my_compare.h11
-rw-r--r--databases/percona55-server/files/patch-include_myisam.h11
-rw-r--r--databases/percona55-server/files/patch-libmysql_CMakeLists.txt36
-rw-r--r--databases/percona55-server/files/patch-libservices_CMakeLists.txt9
-rw-r--r--databases/percona55-server/files/patch-man_CMakeLists.txt11
-rw-r--r--databases/percona55-server/files/patch-mysys_default.c31
-rw-r--r--databases/percona55-server/files/patch-scripts_CMakeLists.txt37
-rw-r--r--databases/percona55-server/files/patch-scripts_mysqld_safe.sh24
-rw-r--r--databases/percona55-server/files/patch-sql_CMakeLists.txt18
-rw-r--r--databases/percona55-server/files/patch-sql_sys_vars.cc38
-rw-r--r--databases/percona55-server/files/patch-support-files_CMakeLists.txt12
-rw-r--r--databases/percona55-server/pkg-descr3
-rw-r--r--databases/percona55-server/pkg-message7
-rw-r--r--databases/percona55-server/pkg-plist140
39 files changed, 1173 insertions, 1 deletions
diff --git a/Mk/bsd.database.mk b/Mk/bsd.database.mk
index b858067b6f14..90f3664adcfc 100644
--- a/Mk/bsd.database.mk
+++ b/Mk/bsd.database.mk
@@ -110,10 +110,19 @@ MYSQL50_LIBVER= 15
MYSQL51_LIBVER= 16
MYSQL53_LIBVER= 16
MYSQL55_LIBVER= 18
+MYSQL55p_LIBVER= 18
+MYSQL56p_LIBVER= 18
# Setting/finding MySQL version we want.
.if exists(${LOCALBASE}/bin/mysql)
-_MYSQL_VER!= ${LOCALBASE}/bin/mysql --version | ${SED} -e 's/.*Distrib \([0-9]\)\.\([0-9]*\).*/\1\2/'
+_MYSQL!= ${LOCALBASE}/bin/mysql --version | ${SED} -e 's/.*Distrib \([0-9]\)\.\([0-9]*\).*/\1\2/'
+_PERCONA!= ${LOCALBASE}/bin/mysql --version | ${GREP} Percona | wc -l
+
+.if ${_PERCONA} == 1
+_MYSQL_VER= ${_MYSQL}p
+.else
+_MYSQL_VER= ${_MYSQL}
+.endif
.endif
.if defined(WANT_MYSQL_VER)
@@ -140,6 +149,12 @@ IGNORE= cannot install: MySQL versions mismatch: mysql${_MYSQL_VER}-client is i
.if (${MYSQL_VER} == "53")
_MYSQL_CLIENT= databases/mariadb-client
_MYSQL_SERVER= databases/mariadb-server
+.elif (${MYSQL_VER} == "55p")
+_MYSQL_CLIENT= databases/percona55-client
+_MYSQL_SERVER= databases/percona55-server
+.elif (${MYSQL_VER} == "56p")
+_MYSQL_CLIENT= databases/percona56-client
+_MYSQL_SERVER= databases/percona56-server
.else
_MYSQL_CLIENT= databases/mysql${MYSQL_VER}-client
_MYSQL_SERVER= databases/mysql${MYSQL_VER}-server
diff --git a/databases/Makefile b/databases/Makefile
index abce52aeedab..a7a5c231e60e 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -533,6 +533,8 @@
SUBDIR += pecl-rrd
SUBDIR += pecl-tokyo_tyrant
SUBDIR += percona-toolkit
+ SUBDIR += percona55-client
+ SUBDIR += percona55-server
SUBDIR += pg_filedump
SUBDIR += pg_reorg
SUBDIR += pg_rman
diff --git a/databases/percona55-client/Makefile b/databases/percona55-client/Makefile
new file mode 100644
index 000000000000..882e2a3a419b
--- /dev/null
+++ b/databases/percona55-client/Makefile
@@ -0,0 +1,28 @@
+# $FreeBSD$
+
+PORTNAME= percona
+PKGNAMESUFFIX= -client
+
+COMMENT= Multithreaded SQL database (client)
+
+MASTERDIR= ${.CURDIR}/../percona55-server
+
+PKGMESSAGE= mustnotexist
+PATCHDIR= ${.CURDIR}/files
+PLIST= ${.CURDIR}/pkg-plist
+
+LATEST_LINK= percona55-client
+
+CONFLICTS_INSTALL= mysql-client-[345].* percona-client-5.[0-46-9].*
+
+CMAKE_ARGS+= -DWITHOUT_SERVER=1
+
+USE_LDCONFIG= ${PREFIX}/lib/mysql
+
+MAN1= comp_err.1 msql2mysql.1 mysql.1 mysql_config.1 mysql_find_rows.1 \
+ mysql_waitpid.1 mysqlaccess.1 mysqladmin.1 mysqlbinlog.1 \
+ mysqlcheck.1 mysqldump.1 mysqlimport.1 mysqlshow.1 mysqlslap.1
+
+CLIENT_ONLY= yes
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/percona55-client/files/patch-CMakeLists.txt b/databases/percona55-client/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..6331d4581ae6
--- /dev/null
+++ b/databases/percona55-client/files/patch-CMakeLists.txt
@@ -0,0 +1,56 @@
+--- CMakeLists.txt.orig 2012-10-26 00:44:36.000000000 +0200
++++ CMakeLists.txt 2012-10-27 00:58:23.706381883 +0200
+@@ -314,30 +314,11 @@
+ ENDIF()
+
+ ADD_SUBDIRECTORY(extra)
+-IF(NOT WITHOUT_SERVER)
+- ADD_SUBDIRECTORY(tests)
+- ADD_SUBDIRECTORY(client)
+- ADD_SUBDIRECTORY(sql)
+- ADD_SUBDIRECTORY(sql/share)
+- ADD_SUBDIRECTORY(libservices)
+- OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
+- IF(WITH_EMBEDDED_SERVER)
+- ADD_SUBDIRECTORY(libmysqld)
+- ADD_SUBDIRECTORY(libmysqld/examples)
+- ENDIF(WITH_EMBEDDED_SERVER)
+-
+- ADD_SUBDIRECTORY(mysql-test)
+- ADD_SUBDIRECTORY(mysql-test/lib/My/SafeProcess)
+- ADD_SUBDIRECTORY(support-files)
+- ADD_SUBDIRECTORY(scripts)
+- ADD_SUBDIRECTORY(sql-bench)
+- IF(UNIX)
+- ADD_SUBDIRECTORY(man)
+- ENDIF()
+- IF(EXISTS ${CMAKE_SOURCE_DIR}/internal/CMakeLists.txt)
+- ADD_SUBDIRECTORY(internal)
+- ENDIF()
+-ENDIF()
++ADD_SUBDIRECTORY(client)
++ADD_SUBDIRECTORY(libservices)
++ADD_SUBDIRECTORY(support-files)
++ADD_SUBDIRECTORY(scripts)
++ADD_SUBDIRECTORY(man)
+
+ INCLUDE(cmake/abi_check.cmake)
+ INCLUDE(cmake/tags.cmake)
+@@ -381,11 +362,11 @@
+
+ INCLUDE(CPack)
+ IF(UNIX)
+- INSTALL(FILES Docs/mysql.info DESTINATION ${INSTALL_INFODIR} OPTIONAL COMPONENT Info)
+ ENDIF()
+ #
+ # RPM installs documentation directly from the source tree
+ #
++IF(FALSE)
+ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
+ INSTALL(FILES COPYING LICENSE.mysql
+ DESTINATION ${INSTALL_DOCREADMEDIR}
+@@ -411,3 +392,4 @@
+ PATTERN "sp-imp-spec.txt" EXCLUDE
+ )
+ ENDIF()
++ENDIF()
diff --git a/databases/percona55-client/files/patch-client_CMakeLists.txt b/databases/percona55-client/files/patch-client_CMakeLists.txt
new file mode 100644
index 000000000000..23a951a0e7ad
--- /dev/null
+++ b/databases/percona55-client/files/patch-client_CMakeLists.txt
@@ -0,0 +1,43 @@
+--- client/CMakeLists.txt.orig 2011-09-09 17:56:40.000000000 +0200
++++ client/CMakeLists.txt 2011-10-07 11:08:18.000000000 +0200
+@@ -33,9 +33,11 @@
+ TARGET_LINK_LIBRARIES(mysql ${READLINE_LIBRARY})
+ ENDIF(UNIX)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysqltest mysqltest.cc COMPONENT Test)
+ SET_SOURCE_FILES_PROPERTIES(mysqltest.cc PROPERTIES COMPILE_FLAGS "-DTHREADS")
+ TARGET_LINK_LIBRARIES(mysqltest mysqlclient regex)
++ENDIF()
+
+
+ MYSQL_ADD_EXECUTABLE(mysqlcheck mysqlcheck.c)
+@@ -47,15 +49,19 @@
+ MYSQL_ADD_EXECUTABLE(mysqlimport mysqlimport.c)
+ TARGET_LINK_LIBRARIES(mysqlimport mysqlclient)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c)
+ TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient)
+ ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysqlshow mysqlshow.c)
+ TARGET_LINK_LIBRARIES(mysqlshow mysqlclient)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysql_plugin mysql_plugin.c)
+ TARGET_LINK_LIBRARIES(mysql_plugin mysqlclient)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc)
+ TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient)
+@@ -72,7 +78,7 @@
+ MYSQL_ADD_EXECUTABLE(echo echo.c)
+ ENDIF(WIN32)
+
+-SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysqlslap mysql_plugin
++SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysqlshow mysqlslap
+ PROPERTIES HAS_CXX TRUE)
+
+ ADD_DEFINITIONS(-DHAVE_DLOPEN)
diff --git a/databases/percona55-client/files/patch-client__mysql.cc b/databases/percona55-client/files/patch-client__mysql.cc
new file mode 100644
index 000000000000..b73e1052d30d
--- /dev/null
+++ b/databases/percona55-client/files/patch-client__mysql.cc
@@ -0,0 +1,16 @@
+--- client/mysql.cc.orig 2012-02-27 19:15:22.271243107 +0000
++++ client/mysql.cc 2012-02-27 19:16:16.645241508 +0000
+@@ -1601,11 +1601,11 @@
+ #endif
+
+ #ifdef HAVE_READLINE
+- printf("%s Ver %s Distrib %s, for %s (%s) using %s %s\n",
++ printf("%s Ver %s Distrib %s Percona, for %s (%s) using %s %s\n",
+ my_progname, VER, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE,
+ readline, rl_library_version);
+ #else
+- printf("%s Ver %s Distrib %s, for %s (%s)\n", my_progname, VER,
++ printf("%s Ver %s Distrib %s Percona, for %s (%s)\n", my_progname, VER,
+ MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE);
+ #endif
+
diff --git a/databases/percona55-client/files/patch-extra_CMakeLists.txt b/databases/percona55-client/files/patch-extra_CMakeLists.txt
new file mode 100644
index 000000000000..78a301146b95
--- /dev/null
+++ b/databases/percona55-client/files/patch-extra_CMakeLists.txt
@@ -0,0 +1,25 @@
+--- extra/CMakeLists.txt.orig 2010-12-03 18:58:24.000000000 +0100
++++ extra/CMakeLists.txt 2010-12-23 14:45:36.000000000 +0100
+@@ -50,6 +50,7 @@
+ ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys
+ ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(my_print_defaults my_print_defaults.c)
+ TARGET_LINK_LIBRARIES(my_print_defaults mysys)
+
+@@ -69,11 +70,14 @@
+
+ MYSQL_ADD_EXECUTABLE(replace replace.c)
+ TARGET_LINK_LIBRARIES(replace mysys)
++ENDIF()
+ IF(UNIX)
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(innochecksum innochecksum.c)
+
+ MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c)
+ TARGET_LINK_LIBRARIES(resolve_stack_dump mysys)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c)
+ TARGET_LINK_LIBRARIES(mysql_waitpid mysys)
diff --git a/databases/percona55-client/files/patch-extra_yassl_taocrypt_src_integer.cpp b/databases/percona55-client/files/patch-extra_yassl_taocrypt_src_integer.cpp
new file mode 100644
index 000000000000..e94bf77c990d
--- /dev/null
+++ b/databases/percona55-client/files/patch-extra_yassl_taocrypt_src_integer.cpp
@@ -0,0 +1,11 @@
+--- extra/yassl/taocrypt/src/integer.cpp.orig 2012-04-02 09:37:09.000000000 +0200
++++ extra/yassl/taocrypt/src/integer.cpp 2012-04-02 09:37:41.000000000 +0200
+@@ -73,7 +73,7 @@
+ CPP_TYPENAME AlignedAllocator<T>::pointer AlignedAllocator<T>::allocate(
+ size_type n, const void *)
+ {
+- if (n > max_size())
++ if (n > AlignedAllocator<T>::max_size())
+ return 0;
+ if (n == 0)
+ return 0;
diff --git a/databases/percona55-client/files/patch-include_CMakeLists.txt b/databases/percona55-client/files/patch-include_CMakeLists.txt
new file mode 100644
index 000000000000..02ae2db9f708
--- /dev/null
+++ b/databases/percona55-client/files/patch-include_CMakeLists.txt
@@ -0,0 +1,12 @@
+--- include/CMakeLists.txt.orig 2011-01-19 23:37:08.000000000 +0100
++++ include/CMakeLists.txt 2011-02-07 22:42:05.129894470 +0100
+@@ -27,9 +27,6 @@
+ my_list.h
+ my_alloc.h
+ typelib.h
+- mysql/plugin.h
+- mysql/plugin_audit.h
+- mysql/plugin_ftparser.h
+ )
+
+ SET(HEADERS
diff --git a/databases/percona55-client/files/patch-include_my_compare.h b/databases/percona55-client/files/patch-include_my_compare.h
new file mode 100644
index 000000000000..093c8ae37789
--- /dev/null
+++ b/databases/percona55-client/files/patch-include_my_compare.h
@@ -0,0 +1,11 @@
+--- include/my_compare.h.orig 2011-05-10 09:46:46.000000000 +0200
++++ include/my_compare.h 2011-05-10 09:47:01.000000000 +0200
+@@ -39,7 +39,7 @@
+ But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
+ */
+
+-#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
++#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */
+ #define HA_MAX_KEY_SEG 16 /* Max segments for key */
+
+ #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
diff --git a/databases/percona55-client/files/patch-include_myisam.h b/databases/percona55-client/files/patch-include_myisam.h
new file mode 100644
index 000000000000..450645400dd5
--- /dev/null
+++ b/databases/percona55-client/files/patch-include_myisam.h
@@ -0,0 +1,11 @@
+--- include/myisam.h.orig 2009-02-16 23:04:54.000000000 +0100
++++ include/myisam.h 2009-02-16 23:10:08.000000000 +0100
+@@ -48,7 +48,7 @@
+ The following defines can be increased if necessary.
+ But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
+ */
+-#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
++#define MI_MAX_KEY_LENGTH 4000 /* Max length in bytes */
+ #define MI_MAX_KEY_SEG 16 /* Max segments for key */
+
+ #define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
diff --git a/databases/percona55-client/files/patch-man_CMakeLists.txt b/databases/percona55-client/files/patch-man_CMakeLists.txt
new file mode 100644
index 000000000000..0f79f3e2403d
--- /dev/null
+++ b/databases/percona55-client/files/patch-man_CMakeLists.txt
@@ -0,0 +1,13 @@
+--- man/CMakeLists.txt.orig 2011-10-22 14:08:32.000000000 +0200
++++ man/CMakeLists.txt 2011-10-22 14:22:42.000000000 +0200
+@@ -15,10 +15,6 @@
+
+ # Copy man pages
+ FILE(GLOB MAN1_FILES *.1)
+-FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1)
+-FILE(GLOB MAN1_NDB ndb*.1)
+-FILE(GLOB MAN8_FILES *.8)
+-FILE(GLOB MAN8_NDB ndb*.8)
+ IF(MAN1_FILES)
+ IF(MAN1_EXCLUDE)
+ LIST(REMOVE_ITEM MAN1_FILES ${MAN1_EXCLUDE})
diff --git a/databases/percona55-client/files/patch-mysys_default.c b/databases/percona55-client/files/patch-mysys_default.c
new file mode 100644
index 000000000000..816105371bdf
--- /dev/null
+++ b/databases/percona55-client/files/patch-mysys_default.c
@@ -0,0 +1,31 @@
+--- mysys/default.c.orig 2010-11-02 23:01:13.000000000 +0100
++++ mysys/default.c 2010-11-10 16:39:51.000000000 +0100
+@@ -70,7 +70,7 @@
+
+ /* Which directories are searched for options (and in which order) */
+
+-#define MAX_DEFAULT_DIRS 6
++#define MAX_DEFAULT_DIRS 7
+ #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
+ static const char **default_directories = NULL;
+
+@@ -711,7 +711,7 @@
+ {
+ MY_STAT stat_info;
+ if (!my_stat(name,&stat_info,MYF(0)))
+- return 1;
++ return 0;
+ /*
+ Ignore world-writable regular files.
+ This is mainly done to protect us to not read a file created by
+@@ -1153,7 +1153,10 @@
+
+ #if defined(DEFAULT_SYSCONFDIR)
+ if (DEFAULT_SYSCONFDIR[0])
++ {
+ errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
++ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
++ }
+ #endif /* DEFAULT_SYSCONFDIR */
+
+ #endif
diff --git a/databases/percona55-client/files/patch-scripts_CMakeLists.txt b/databases/percona55-client/files/patch-scripts_CMakeLists.txt
new file mode 100644
index 000000000000..4dd4080c4f5f
--- /dev/null
+++ b/databases/percona55-client/files/patch-scripts_CMakeLists.txt
@@ -0,0 +1,78 @@
+--- scripts/CMakeLists.txt.orig 2010-12-03 18:58:26.000000000 +0100
++++ scripts/CMakeLists.txt 2011-01-11 20:18:07.000000000 +0100
+@@ -71,6 +71,7 @@
+ )
+ ENDIF()
+
++IF(FALSE)
+ INSTALL(FILES
+ ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables.sql
+ ${CMAKE_CURRENT_SOURCE_DIR}/mysql_system_tables_data.sql
+@@ -79,6 +80,7 @@
+ ${FIX_PRIVILEGES_SQL}
+ DESTINATION ${INSTALL_MYSQLSHAREDIR} COMPONENT Server
+ )
++ENDIF()
+
+ # TCMalloc hacks
+ IF(MALLOC_LIB)
+@@ -138,6 +140,7 @@
+ SET(HOSTNAME "hostname")
+ SET(MYSQLD_USER "mysql")
+
++IF(FALSE)
+ # Required for mysqlbug until autotools are deprecated, once done remove these
+ # and expand default cmake variables
+ SET(CC ${CMAKE_C_COMPILER})
+@@ -174,6 +177,7 @@
+ DESTINATION ${INSTALL_BINDIR}
+ COMPONENT Server
+ )
++ENDIF()
+
+ ENDIF(UNIX)
+
+@@ -198,6 +202,7 @@
+ SET(localstatedir ${MYSQL_DATADIR})
+ ENDIF()
+
++IF()
+ IF(UNIX)
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mysql_install_db.sh
+ ${CMAKE_CURRENT_BINARY_DIR}/mysql_install_db ESCAPE_QUOTES @ONLY)
+@@ -215,6 +220,7 @@
+ DESTINATION ${DEST}
+ COMPONENT Server
+ )
++ENDIF()
+
+
+ SET(prefix "${CMAKE_INSTALL_PREFIX}")
+@@ -266,6 +272,8 @@
+ GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
+ STRING(REGEX REPLACE "^lib" "" lib "${lib}")
+ SET(${var} "${${var}}-l${lib} " )
++ ELSEIF(lib STREQUAL "-pthread")
++ SET(${var} "${${var}}-pthread " )
+ ELSE()
+ SET(${var} "${${var}}-l${lib} " )
+ ENDIF()
+@@ -318,18 +326,9 @@
+ SET(BIN_SCRIPTS
+ msql2mysql
+ mysql_config
+- mysql_fix_extensions
+- mysql_setpermission
+- mysql_secure_installation
+- mysql_zap
+ mysqlaccess
+ mysqlaccess.conf
+- mysql_convert_table_format
+ mysql_find_rows
+- mysqlhotcopy
+- mysqldumpslow
+- mysqld_multi
+- mysqld_safe
+ )
+ FOREACH(file ${BIN_SCRIPTS})
+ IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
diff --git a/databases/percona55-client/files/patch-support-files_CMakeLists.txt b/databases/percona55-client/files/patch-support-files_CMakeLists.txt
new file mode 100644
index 000000000000..e3490b326b03
--- /dev/null
+++ b/databases/percona55-client/files/patch-support-files_CMakeLists.txt
@@ -0,0 +1,37 @@
+--- support-files/CMakeLists.txt.orig 2011-01-19 23:37:09.000000000 +0100
++++ support-files/CMakeLists.txt 2011-02-07 22:52:05.238344276 +0100
+@@ -40,15 +40,18 @@
+ SET(inst_location ${INSTALL_SUPPORTFILESDIR})
+ ENDIF()
+
++IF(FALSE)
+ FOREACH(inifile my-huge my-innodb-heavy-4G my-large my-medium my-small)
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${inifile}.cnf.sh
+ ${CMAKE_CURRENT_BINARY_DIR}/${inifile}.${ini_file_extension} @ONLY)
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/${inifile}.${ini_file_extension}
+ DESTINATION ${inst_location} COMPONENT IniFiles)
+ ENDFOREACH()
++ENDIF()
+
+ IF(UNIX)
+ SET(prefix ${CMAKE_INSTALL_PREFIX})
++IF(FALSE)
+ FOREACH(script mysqld_multi.server mysql-log-rotate binary-configure
+ config.medium.ini config.small.ini config.huge.ini ndb-config-2-node.ini)
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${script}.sh
+@@ -66,8 +69,10 @@
+ IF(INSTALL_SUPPORTFILESDIR)
+ INSTALL(FILES magic DESTINATION ${inst_location} COMPONENT SupportFiles)
+ ENDIF()
++ENDIF()
+
+ INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development)
++IF(FALSE)
+ CONFIGURE_FILE(MySQL-shared-compat.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/MySQL-shared-compat.spec @ONLY)
+ CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.spec @ONLY)
+ CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.${VERSION}.spec @ONLY)
+@@ -85,3 +90,4 @@
+ PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ
+ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
+ ENDIF()
++ENDIF()
diff --git a/databases/percona55-client/pkg-plist b/databases/percona55-client/pkg-plist
new file mode 100644
index 000000000000..0543f2cfbca3
--- /dev/null
+++ b/databases/percona55-client/pkg-plist
@@ -0,0 +1,75 @@
+bin/msql2mysql
+bin/mysql
+bin/mysql_config
+bin/mysql_find_rows
+bin/mysql_waitpid
+bin/mysqlaccess
+bin/mysqlaccess.conf
+bin/mysqladmin
+bin/mysqlbinlog
+bin/mysqlcheck
+bin/mysqldump
+bin/mysqlimport
+bin/mysqlshow
+bin/mysqlslap
+include/mysql/decimal.h
+include/mysql/errmsg.h
+include/mysql/keycache.h
+include/mysql/m_ctype.h
+include/mysql/m_string.h
+include/mysql/my_alloc.h
+include/mysql/my_attribute.h
+include/mysql/my_compiler.h
+include/mysql/my_config.h
+include/mysql/my_dbug.h
+include/mysql/my_dir.h
+include/mysql/my_getopt.h
+include/mysql/my_global.h
+include/mysql/my_list.h
+include/mysql/my_net.h
+include/mysql/my_pthread.h
+include/mysql/my_sys.h
+include/mysql/my_xml.h
+include/mysql/mysql/client_plugin.h
+include/mysql/mysql/innodb_priv.h
+include/mysql/mysql/plugin.h
+include/mysql/mysql/plugin_audit.h
+include/mysql/mysql/plugin_auth.h
+include/mysql/mysql/plugin_auth_common.h
+include/mysql/mysql/plugin_ftparser.h
+include/mysql/mysql/psi/mysql_file.h
+include/mysql/mysql/psi/mysql_thread.h
+include/mysql/mysql/psi/psi.h
+include/mysql/mysql/psi/psi_abi_v1.h
+include/mysql/mysql/psi/psi_abi_v2.h
+include/mysql/mysql/service_my_snprintf.h
+include/mysql/mysql/service_thd_alloc.h
+include/mysql/mysql/service_thd_wait.h
+include/mysql/mysql/service_thread_scheduler.h
+include/mysql/mysql/services.h
+include/mysql/mysql/thread_pool_priv.h
+include/mysql/mysql.h
+include/mysql/mysql_com.h
+include/mysql/mysql_embed.h
+include/mysql/mysql_time.h
+include/mysql/mysql_version.h
+include/mysql/mysqld_ername.h
+include/mysql/mysqld_error.h
+include/mysql/sql_common.h
+include/mysql/sql_state.h
+include/mysql/sslopt-case.h
+include/mysql/sslopt-longopts.h
+include/mysql/sslopt-vars.h
+include/mysql/typelib.h
+lib/mysql/libmysqlclient.a
+lib/mysql/libmysqlclient.so
+lib/mysql/libmysqlclient.so.18
+lib/mysql/libmysqlclient_r.a
+lib/mysql/libmysqlclient_r.so
+lib/mysql/libmysqlclient_r.so.18
+lib/mysql/libmysqlservices.a
+share/aclocal/mysql.m4
+@dirrm include/mysql/mysql/psi
+@dirrm include/mysql/mysql
+@dirrm include/mysql
+@dirrmtry lib/mysql
diff --git a/databases/percona55-server/Makefile b/databases/percona55-server/Makefile
new file mode 100644
index 000000000000..2f4d90a29dfa
--- /dev/null
+++ b/databases/percona55-server/Makefile
@@ -0,0 +1,101 @@
+# $FreeBSD$
+
+PORTNAME?= percona
+PORTVERSION= 5.5.28.29.2
+PORTREVISION?= 0
+CATEGORIES= databases ipv6
+MASTER_SITES= http://www.percona.com/downloads/Percona-Server-5.5/LATEST/source/
+MASTER_SITE_SUBDIR= MySQL-5.5
+PKGNAMESUFFIX?= -server
+DISTNAME= Percona-Server-5.5.28-rel29.2
+
+MAINTAINER= ale@FreeBSD.org
+COMMENT?= Multithreaded SQL database (server)
+
+SLAVEDIRS= databases/percona55-client
+USE_CMAKE= yes
+USE_BISON= build
+MAKE_JOBS_SAFE= yes
+
+OPTIONS_DEFINE= OPENSSL FASTMTX
+OPTIONS_DEFAULT= OPENSSL
+FASTMTX_DESC= Replace mutexes with spinlocks
+
+DATADIR= ${PREFIX}/share/mysql
+USE_LDCONFIG= ${PREFIX}/lib/mysql
+
+CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \
+ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \
+ -DINSTALL_INCLUDEDIR="include/mysql" \
+ -DINSTALL_INFODIR="info" \
+ -DINSTALL_LIBDIR="lib/mysql" \
+ -DINSTALL_MANDIR="man" \
+ -DINSTALL_MYSQLDATADIR="/var/db/mysql" \
+ -DINSTALL_MYSQLSHAREDIR="share/mysql" \
+ -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \
+ -DINSTALL_PLUGINDIR="lib/mysql/plugin" \
+ -DINSTALL_SBINDIR="libexec" \
+ -DINSTALL_SCRIPTDIR="bin" \
+ -DINSTALL_SHAREDIR="share" \
+ -DINSTALL_SQLBENCHDIR="share/mysql" \
+ -DINSTALL_SUPPORTFILESDIR="share/mysql" \
+ -DWITH_LIBEDIT=0 \
+ -DWITH_LIBWRAP=1 \
+ -DHAVE_PAM=0
+
+.ifdef USE_MYSQL
+.error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again.
+.endif
+
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MOPENSSL}
+CMAKE_ARGS+= -DWITH_SSL=bundled
+.endif
+.if ${PORT_OPTIONS:MFASTMTX}
+CMAKE_ARGS+= -DWITH_FAST_MUTEXES=1
+.endif
+
+# MySQL-Server part
+.if !defined(CLIENT_ONLY)
+USE_MYSQL= yes
+WANT_MYSQL_VER= 55p
+
+LATEST_LINK= percona55-server
+
+CONFLICTS_INSTALL= mysql-server-[345].* percona-server-5.[0-46-9].*
+
+USE_RC_SUBR= mysql-server
+
+USERS= mysql
+GROUPS= mysql
+
+INFO= mysql
+
+MAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \
+ mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \
+ mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \
+ mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 \
+ mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 \
+ mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1
+
+MAN8= mysqld.8
+
+CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON"
+
+post-install:
+.if !defined(PACKAGE_BUILDING)
+ @${CAT} ${PKGMESSAGE}
+.endif
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} 's/*.1/${MAN1}/' ${WRKSRC}/man/CMakeLists.txt
+
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == "arm"
+BROKEN= Does not compile on arm
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/databases/percona55-server/distinfo b/databases/percona55-server/distinfo
new file mode 100644
index 000000000000..523f99dcfb6f
--- /dev/null
+++ b/databases/percona55-server/distinfo
@@ -0,0 +1,2 @@
+SHA256 (Percona-Server-5.5.28-rel29.2.tar.gz) = 4f2ca2b4bf8ebdde0d5c643cc382fd7242492c084715b5c7d83619a9ff7a40a4
+SIZE (Percona-Server-5.5.28-rel29.2.tar.gz) = 22250160
diff --git a/databases/percona55-server/files/mysql-server.in b/databases/percona55-server/files/mysql-server.in
new file mode 100644
index 000000000000..fa701dcca45b
--- /dev/null
+++ b/databases/percona55-server/files/mysql-server.in
@@ -0,0 +1,75 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+
+# PROVIDE: mysql
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Add the following line to /etc/rc.conf to enable mysql:
+# mysql_enable (bool): Set to "NO" by default.
+# Set it to "YES" to enable MySQL.
+# mysql_limits (bool): Set to "NO" by default.
+# Set it to yes to run `limits -e -U mysql`
+# just before mysql starts.
+# mysql_dbdir (str): Default to "/var/db/mysql"
+# Base database directory.
+# mysql_pidfile (str): Custum PID file path and name.
+# Default to "${mysql_dbdir}/${hostname}.pid".
+# mysql_args (str): Custom additional arguments to be passed
+# to mysqld_safe (default empty).
+#
+
+. /etc/rc.subr
+
+name="mysql"
+rcvar=mysql_enable
+
+load_rc_config $name
+
+: ${mysql_enable="NO"}
+: ${mysql_limits="NO"}
+: ${mysql_dbdir="/var/db/mysql"}
+
+mysql_user="mysql"
+mysql_limits_args="-e -U ${mysql_user}"
+pidfile=${mysql_pidfile:-"${mysql_dbdir}/`/bin/hostname`.pid"}
+command="/usr/sbin/daemon"
+command_args="-c -f %%PREFIX%%/bin/mysqld_safe --defaults-extra-file=${mysql_dbdir}/my.cnf --user=${mysql_user} --datadir=${mysql_dbdir} --pid-file=${pidfile} ${mysql_args}"
+procname="%%PREFIX%%/libexec/mysqld"
+start_precmd="${name}_prestart"
+start_postcmd="${name}_poststart"
+mysql_install_db="%%PREFIX%%/bin/mysql_install_db"
+mysql_install_db_args="--basedir=%%PREFIX%% --datadir=${mysql_dbdir} --force"
+
+mysql_create_auth_tables()
+{
+ eval $mysql_install_db $mysql_install_db_args >/dev/null 2>/dev/null
+ [ $? -eq 0 ] && chown -R ${mysql_user}:${mysql_user} ${mysql_dbdir}
+}
+
+mysql_prestart()
+{
+ if [ ! -d "${mysql_dbdir}/mysql/." ]; then
+ mysql_create_auth_tables || return 1
+ fi
+ if checkyesno mysql_limits; then
+ eval `/usr/bin/limits ${mysql_limits_args}` 2>/dev/null
+ else
+ return 0
+ fi
+}
+
+mysql_poststart()
+{
+ local timeout=15
+ while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do
+ timeout=$(( timeout - 1 ))
+ sleep 1
+ done
+ return 0
+}
+
+run_rc_command "$1"
diff --git a/databases/percona55-server/files/patch-CMakeLists.txt b/databases/percona55-server/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..c0a8713402cb
--- /dev/null
+++ b/databases/percona55-server/files/patch-CMakeLists.txt
@@ -0,0 +1,38 @@
+--- CMakeLists.txt.orig 2010-12-03 18:58:24.000000000 +0100
++++ CMakeLists.txt 2010-12-23 18:02:02.000000000 +0100
+@@ -293,7 +293,6 @@
+
+ ADD_SUBDIRECTORY(extra)
+ IF(NOT WITHOUT_SERVER)
+- ADD_SUBDIRECTORY(tests)
+ ADD_SUBDIRECTORY(client)
+ ADD_SUBDIRECTORY(sql)
+ ADD_SUBDIRECTORY(sql/share)
+@@ -301,14 +300,10 @@
+ OPTION (WITH_EMBEDDED_SERVER "Compile MySQL with embedded server" OFF)
+ IF(WITH_EMBEDDED_SERVER)
+ ADD_SUBDIRECTORY(libmysqld)
+- ADD_SUBDIRECTORY(libmysqld/examples)
+ ENDIF(WITH_EMBEDDED_SERVER)
+
+- ADD_SUBDIRECTORY(mysql-test)
+- ADD_SUBDIRECTORY(mysql-test/lib/My/SafeProcess)
+ ADD_SUBDIRECTORY(support-files)
+ ADD_SUBDIRECTORY(scripts)
+- ADD_SUBDIRECTORY(sql-bench)
+ IF(UNIX)
+ ADD_SUBDIRECTORY(man)
+ ENDIF()
+@@ -343,6 +338,7 @@
+ #
+ # RPM installs documentation directly from the source tree
+ #
++IF(FALSE)
+ IF(NOT INSTALL_LAYOUT MATCHES "RPM")
+ INSTALL(FILES COPYING LICENSE.mysql
+ DESTINATION ${INSTALL_DOCREADMEDIR}
+@@ -367,3 +363,4 @@
+ PATTERN "sp-imp-spec.txt" EXCLUDE
+ )
+ ENDIF()
++ENDIF()
diff --git a/databases/percona55-server/files/patch-client_CMakeLists.txt b/databases/percona55-server/files/patch-client_CMakeLists.txt
new file mode 100644
index 000000000000..2c5864188b98
--- /dev/null
+++ b/databases/percona55-server/files/patch-client_CMakeLists.txt
@@ -0,0 +1,61 @@
+--- client/CMakeLists.txt.orig 2011-09-09 17:56:40.000000000 +0200
++++ client/CMakeLists.txt 2011-10-07 11:06:21.000000000 +0200
+@@ -27,17 +27,20 @@
+
+ ADD_DEFINITIONS(${READLINE_DEFINES})
+ ADD_DEFINITIONS(${SSL_DEFINES})
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc sql_string.cc)
+ TARGET_LINK_LIBRARIES(mysql mysqlclient)
+ IF(UNIX)
+ TARGET_LINK_LIBRARIES(mysql ${READLINE_LIBRARY})
+ ENDIF(UNIX)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysqltest mysqltest.cc COMPONENT Test)
+ SET_SOURCE_FILES_PROPERTIES(mysqltest.cc PROPERTIES COMPILE_FLAGS "-DTHREADS")
+ TARGET_LINK_LIBRARIES(mysqltest mysqlclient regex)
+
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysqlcheck mysqlcheck.c)
+ TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient)
+
+@@ -46,17 +49,21 @@
+
+ MYSQL_ADD_EXECUTABLE(mysqlimport mysqlimport.c)
+ TARGET_LINK_LIBRARIES(mysqlimport mysqlclient)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysql_upgrade mysql_upgrade.c)
+ TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient)
+ ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysqlshow mysqlshow.c)
+ TARGET_LINK_LIBRARIES(mysqlshow mysqlclient)
++ENDIF()
+
+ MYSQL_ADD_EXECUTABLE(mysql_plugin mysql_plugin.c)
+ TARGET_LINK_LIBRARIES(mysql_plugin mysqlclient)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc)
+ TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient)
+
+@@ -66,13 +73,14 @@
+ MYSQL_ADD_EXECUTABLE(mysqlslap mysqlslap.c)
+ SET_SOURCE_FILES_PROPERTIES(mysqlslap.c PROPERTIES COMPILE_FLAGS "-DTHREADS")
+ TARGET_LINK_LIBRARIES(mysqlslap mysqlclient)
++ENDIF()
+
+ # "WIN32" also covers 64 bit. "echo" is used in some files below "mysql-test/".
+ IF(WIN32)
+ MYSQL_ADD_EXECUTABLE(echo echo.c)
+ ENDIF(WIN32)
+
+-SET_TARGET_PROPERTIES (mysqlcheck mysqldump mysqlimport mysql_upgrade mysqlshow mysqlslap mysql_plugin
++SET_TARGET_PROPERTIES (mysql_upgrade mysql_plugin
+ PROPERTIES HAS_CXX TRUE)
+
+ ADD_DEFINITIONS(-DHAVE_DLOPEN)
diff --git a/databases/percona55-server/files/patch-cmake_plugin.cmake b/databases/percona55-server/files/patch-cmake_plugin.cmake
new file mode 100644
index 000000000000..c151ea35f4ee
--- /dev/null
+++ b/databases/percona55-server/files/patch-cmake_plugin.cmake
@@ -0,0 +1,10 @@
+--- cmake/plugin.cmake.orig 2011-09-09 17:56:39.000000000 +0200
++++ cmake/plugin.cmake 2011-10-07 10:56:37.000000000 +0200
+@@ -195,7 +195,6 @@
+ OUTPUT_NAME "${ARG_MODULE_OUTPUT_NAME}")
+ # Install dynamic library
+ MYSQL_INSTALL_TARGETS(${target} DESTINATION ${INSTALL_PLUGINDIR} COMPONENT Server)
+- INSTALL_DEBUG_TARGET(${target} DESTINATION ${INSTALL_PLUGINDIR}/debug)
+ # Add installed files to list for RPMs
+ FILE(APPEND ${CMAKE_BINARY_DIR}/support-files/plugins.files
+ "%attr(755, root, root) %{_prefix}/${INSTALL_PLUGINDIR}/${ARG_MODULE_OUTPUT_NAME}.so\n"
diff --git a/databases/percona55-server/files/patch-extra_CMakeLists.txt b/databases/percona55-server/files/patch-extra_CMakeLists.txt
new file mode 100644
index 000000000000..f8f555f5e0e8
--- /dev/null
+++ b/databases/percona55-server/files/patch-extra_CMakeLists.txt
@@ -0,0 +1,12 @@
+--- extra/CMakeLists.txt.orig 2010-12-23 17:38:06.000000000 +0100
++++ extra/CMakeLists.txt 2010-12-23 17:38:51.000000000 +0100
+@@ -75,7 +75,9 @@
+ MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c)
+ TARGET_LINK_LIBRARIES(resolve_stack_dump mysys)
+
++IF(FALSE)
+ MYSQL_ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c)
+ TARGET_LINK_LIBRARIES(mysql_waitpid mysys)
+ ENDIF()
++ENDIF()
+
diff --git a/databases/percona55-server/files/patch-extra_yassl_taocrypt_src_integer.cpp b/databases/percona55-server/files/patch-extra_yassl_taocrypt_src_integer.cpp
new file mode 100644
index 000000000000..e94bf77c990d
--- /dev/null
+++ b/databases/percona55-server/files/patch-extra_yassl_taocrypt_src_integer.cpp
@@ -0,0 +1,11 @@
+--- extra/yassl/taocrypt/src/integer.cpp.orig 2012-04-02 09:37:09.000000000 +0200
++++ extra/yassl/taocrypt/src/integer.cpp 2012-04-02 09:37:41.000000000 +0200
+@@ -73,7 +73,7 @@
+ CPP_TYPENAME AlignedAllocator<T>::pointer AlignedAllocator<T>::allocate(
+ size_type n, const void *)
+ {
+- if (n > max_size())
++ if (n > AlignedAllocator<T>::max_size())
+ return 0;
+ if (n == 0)
+ return 0;
diff --git a/databases/percona55-server/files/patch-include_CMakeLists.txt b/databases/percona55-server/files/patch-include_CMakeLists.txt
new file mode 100644
index 000000000000..2478ae5fa6e3
--- /dev/null
+++ b/databases/percona55-server/files/patch-include_CMakeLists.txt
@@ -0,0 +1,10 @@
+--- include/CMakeLists.txt.orig 2011-01-19 23:37:08.000000000 +0100
++++ include/CMakeLists.txt 2011-02-07 22:40:32.698758463 +0100
+@@ -57,5 +57,7 @@
+ ${HEADERS_GEN_CONFIGURE}
+ )
+
++IF(FALSE)
+ INSTALL(FILES ${HEADERS} DESTINATION ${INSTALL_INCLUDEDIR} COMPONENT Development)
+ INSTALL(DIRECTORY mysql/ DESTINATION ${INSTALL_INCLUDEDIR}/mysql COMPONENT Development FILES_MATCHING PATTERN "*.h")
++ENDIF()
diff --git a/databases/percona55-server/files/patch-include_my_compare.h b/databases/percona55-server/files/patch-include_my_compare.h
new file mode 100644
index 000000000000..093c8ae37789
--- /dev/null
+++ b/databases/percona55-server/files/patch-include_my_compare.h
@@ -0,0 +1,11 @@
+--- include/my_compare.h.orig 2011-05-10 09:46:46.000000000 +0200
++++ include/my_compare.h 2011-05-10 09:47:01.000000000 +0200
+@@ -39,7 +39,7 @@
+ But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
+ */
+
+-#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
++#define HA_MAX_KEY_LENGTH 4000 /* Max length in bytes */
+ #define HA_MAX_KEY_SEG 16 /* Max segments for key */
+
+ #define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
diff --git a/databases/percona55-server/files/patch-include_myisam.h b/databases/percona55-server/files/patch-include_myisam.h
new file mode 100644
index 000000000000..450645400dd5
--- /dev/null
+++ b/databases/percona55-server/files/patch-include_myisam.h
@@ -0,0 +1,11 @@
+--- include/myisam.h.orig 2009-02-16 23:04:54.000000000 +0100
++++ include/myisam.h 2009-02-16 23:10:08.000000000 +0100
+@@ -48,7 +48,7 @@
+ The following defines can be increased if necessary.
+ But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
+ */
+-#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
++#define MI_MAX_KEY_LENGTH 4000 /* Max length in bytes */
+ #define MI_MAX_KEY_SEG 16 /* Max segments for key */
+
+ #define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
diff --git a/databases/percona55-server/files/patch-libmysql_CMakeLists.txt b/databases/percona55-server/files/patch-libmysql_CMakeLists.txt
new file mode 100644
index 000000000000..7f11bedc9e43
--- /dev/null
+++ b/databases/percona55-server/files/patch-libmysql_CMakeLists.txt
@@ -0,0 +1,36 @@
+--- libmysql/CMakeLists.txt.orig 2010-12-03 18:58:26.000000000 +0100
++++ libmysql/CMakeLists.txt 2010-12-23 22:01:37.000000000 +0100
+@@ -153,13 +153,14 @@
+
+ # Merge several convenience libraries into one big mysqlclient
+ # and link them together into shared library.
+-MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development)
++MERGE_LIBRARIES(mysqlclient STATIC ${LIBS} COMPONENT Development NOINSTALL)
+
+ # Visual Studio users need debug static library for debug projects
+ IF(MSVC)
+ INSTALL_DEBUG_TARGET(mysqlclient DESTINATION ${INSTALL_LIBDIR}/debug)
+ ENDIF()
+
++IF(FALSE)
+ IF(UNIX)
+ MACRO(GET_VERSIONED_LIBNAME LIBNAME EXTENSION VERSION OUTNAME)
+ SET(DOT_VERSION ".${VERSION}")
+@@ -174,9 +175,11 @@
+ ENDMACRO()
+ INSTALL_SYMLINK(${CMAKE_STATIC_LIBRARY_PREFIX}mysqlclient_r.a mysqlclient ${INSTALL_LIBDIR} Development)
+ ENDIF()
++ENDIF()
+
+ IF(NOT DISABLE_SHARED)
+- MERGE_LIBRARIES(libmysql SHARED ${LIBS} EXPORTS ${CLIENT_API_FUNCTIONS} COMPONENT SharedLibraries)
++ MERGE_LIBRARIES(libmysql SHARED ${LIBS} EXPORTS ${CLIENT_API_FUNCTIONS} COMPONENT SharedLibraries NOINSTALL)
++IF(FALSE)
+ IF(UNIX)
+ # libtool compatability
+ IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE)
+@@ -223,3 +226,4 @@
+ ENDFOREACH()
+ ENDIF()
+ ENDIF()
++ENDIF()
diff --git a/databases/percona55-server/files/patch-libservices_CMakeLists.txt b/databases/percona55-server/files/patch-libservices_CMakeLists.txt
new file mode 100644
index 000000000000..fcbcea7aed21
--- /dev/null
+++ b/databases/percona55-server/files/patch-libservices_CMakeLists.txt
@@ -0,0 +1,9 @@
+--- libservices/CMakeLists.txt.orig 2010-12-23 17:13:03.000000000 +0100
++++ libservices/CMakeLists.txt 2010-12-23 17:13:17.000000000 +0100
+@@ -22,4 +22,6 @@
+ my_thread_scheduler_service.c)
+
+ ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES})
++IF(FALSE)
+ INSTALL(TARGETS mysqlservices DESTINATION ${INSTALL_LIBDIR} COMPONENT Development)
++ENDIF()
diff --git a/databases/percona55-server/files/patch-man_CMakeLists.txt b/databases/percona55-server/files/patch-man_CMakeLists.txt
new file mode 100644
index 000000000000..7849c77af111
--- /dev/null
+++ b/databases/percona55-server/files/patch-man_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- man/CMakeLists.txt.orig 2011-10-22 14:36:06.000000000 +0200
++++ man/CMakeLists.txt 2011-10-22 14:36:23.000000000 +0200
+@@ -15,8 +15,6 @@
+
+ # Copy man pages
+ FILE(GLOB MAN1_FILES *.1)
+-FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1)
+-FILE(GLOB MAN1_NDB ndb*.1)
+ FILE(GLOB MAN8_FILES *.8)
+ FILE(GLOB MAN8_NDB ndb*.8)
+ IF(MAN1_FILES)
diff --git a/databases/percona55-server/files/patch-mysys_default.c b/databases/percona55-server/files/patch-mysys_default.c
new file mode 100644
index 000000000000..816105371bdf
--- /dev/null
+++ b/databases/percona55-server/files/patch-mysys_default.c
@@ -0,0 +1,31 @@
+--- mysys/default.c.orig 2010-11-02 23:01:13.000000000 +0100
++++ mysys/default.c 2010-11-10 16:39:51.000000000 +0100
+@@ -70,7 +70,7 @@
+
+ /* Which directories are searched for options (and in which order) */
+
+-#define MAX_DEFAULT_DIRS 6
++#define MAX_DEFAULT_DIRS 7
+ #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */
+ static const char **default_directories = NULL;
+
+@@ -711,7 +711,7 @@
+ {
+ MY_STAT stat_info;
+ if (!my_stat(name,&stat_info,MYF(0)))
+- return 1;
++ return 0;
+ /*
+ Ignore world-writable regular files.
+ This is mainly done to protect us to not read a file created by
+@@ -1153,7 +1153,10 @@
+
+ #if defined(DEFAULT_SYSCONFDIR)
+ if (DEFAULT_SYSCONFDIR[0])
++ {
+ errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs);
++ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs);
++ }
+ #endif /* DEFAULT_SYSCONFDIR */
+
+ #endif
diff --git a/databases/percona55-server/files/patch-scripts_CMakeLists.txt b/databases/percona55-server/files/patch-scripts_CMakeLists.txt
new file mode 100644
index 000000000000..de410a1d3549
--- /dev/null
+++ b/databases/percona55-server/files/patch-scripts_CMakeLists.txt
@@ -0,0 +1,37 @@
+--- scripts/CMakeLists.txt.orig 2011-07-13 21:09:03.000000000 +0200
++++ scripts/CMakeLists.txt 2011-09-01 09:48:22.000000000 +0200
+@@ -266,6 +266,8 @@
+ GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE)
+ STRING(REGEX REPLACE "^lib" "" lib "${lib}")
+ SET(${var} "${${var}}-l${lib} " )
++ ELSEIF(lib STREQUAL "-pthread")
++ SET(${var} "${${var}}-pthread " )
+ ELSE()
+ SET(${var} "${${var}}-l${lib} " )
+ ENDIF()
+@@ -316,16 +318,11 @@
+ # On Unix, most of the files end up in the bin directory
+ SET(mysql_config_COMPONENT COMPONENT Development)
+ SET(BIN_SCRIPTS
+- msql2mysql
+- mysql_config
+ mysql_fix_extensions
+ mysql_setpermission
+ mysql_secure_installation
+ mysql_zap
+- mysqlaccess
+- mysqlaccess.conf
+ mysql_convert_table_format
+- mysql_find_rows
+ mysqlhotcopy
+ mysqldumpslow
+ mysqld_multi
+@@ -334,7 +331,7 @@
+ FOREACH(file ${BIN_SCRIPTS})
+ IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh)
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh
+- ${CMAKE_CURRENT_BINARY_DIR}/${file} ESCAPE_QUOTES @ONLY)
++ ${CMAKE_CURRENT_BINARY_DIR}/${file} @ONLY)
+ ELSEIF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file})
+ CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}
+ ${CMAKE_CURRENT_BINARY_DIR}/${file} COPYONLY)
diff --git a/databases/percona55-server/files/patch-scripts_mysqld_safe.sh b/databases/percona55-server/files/patch-scripts_mysqld_safe.sh
new file mode 100644
index 000000000000..2a30469922f0
--- /dev/null
+++ b/databases/percona55-server/files/patch-scripts_mysqld_safe.sh
@@ -0,0 +1,24 @@
+--- scripts/mysqld_safe.sh.orig 2007-10-08 10:39:23.000000000 +0200
++++ scripts/mysqld_safe.sh 2007-10-08 10:40:52.000000000 +0200
+@@ -242,10 +242,10 @@
+
+ if test -z "$MYSQL_HOME"
+ then
+- if test -r "$MY_BASEDIR_VERSION/my.cnf" && test -r "$DATADIR/my.cnf"
++ if test -r "$MY_BASEDIR_VERSION/etc/my.cnf" && test -r "$DATADIR/my.cnf"
+ then
+ log_error "WARNING: Found two instances of my.cnf -
+-$MY_BASEDIR_VERSION/my.cnf and
++$MY_BASEDIR_VERSION/etc/my.cnf and
+ $DATADIR/my.cnf
+ IGNORING $DATADIR/my.cnf"
+
+@@ -254,7 +254,7 @@
+ then
+ log_error "WARNING: Found $DATADIR/my.cnf
+ The data directory is a deprecated location for my.cnf, please move it to
+-$MY_BASEDIR_VERSION/my.cnf"
++$MY_BASEDIR_VERSION/etc/my.cnf"
+ MYSQL_HOME=$DATADIR
+ else
+ MYSQL_HOME=$MY_BASEDIR_VERSION
diff --git a/databases/percona55-server/files/patch-sql_CMakeLists.txt b/databases/percona55-server/files/patch-sql_CMakeLists.txt
new file mode 100644
index 000000000000..e4d1b520c529
--- /dev/null
+++ b/databases/percona55-server/files/patch-sql_CMakeLists.txt
@@ -0,0 +1,18 @@
+--- sql/CMakeLists.txt.orig 2010-12-23 17:31:28.000000000 +0100
++++ sql/CMakeLists.txt 2010-12-23 17:33:36.000000000 +0100
+@@ -245,6 +245,7 @@
+
+ IF(INSTALL_LAYOUT STREQUAL "STANDALONE")
+
++IF(FALSE)
+ # We need to create empty directories (data/test) the installation.
+ # This does not work with current CPack due to http://www.cmake.org/Bug/view.php?id=8767
+ # Avoid completely empty directories and install dummy file instead.
+@@ -286,6 +287,7 @@
+ INSTALL(FILES ${DUMMY_FILE} DESTINATION data/mysql COMPONENT DataFiles)
+ ENDIF()
+ ENDIF()
++ENDIF()
+
+ ADD_CUSTOM_TARGET(show-dist-name
+ COMMAND ${CMAKE_COMMAND} -E echo "${CPACK_PACKAGE_FILE_NAME}"
diff --git a/databases/percona55-server/files/patch-sql_sys_vars.cc b/databases/percona55-server/files/patch-sql_sys_vars.cc
new file mode 100644
index 000000000000..e8f0caff4aff
--- /dev/null
+++ b/databases/percona55-server/files/patch-sql_sys_vars.cc
@@ -0,0 +1,38 @@
+--- sql/sys_vars.cc.orig 2012-06-15 17:03:32.000000000 +0200
++++ sql/sys_vars.cc 2012-06-15 17:16:23.000000000 +0200
+@@ -900,7 +900,7 @@
+ "connection before closing it",
+ SESSION_VAR(net_interactive_timeout),
+ CMD_LINE(REQUIRED_ARG),
+- VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
++ VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
+
+ static Sys_var_ulong Sys_join_buffer_size(
+ "join_buffer_size",
+@@ -1401,7 +1401,7 @@
+ "Number of seconds to wait for more data from a connection before "
+ "aborting the read",
+ SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG),
+- VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
++ VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_READ_TIMEOUT), BLOCK_SIZE(1),
+ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
+ ON_UPDATE(fix_net_read_timeout));
+
+@@ -1416,7 +1416,7 @@
+ "Number of seconds to wait for a block to be written to a connection "
+ "before aborting the write",
+ SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG),
+- VALID_RANGE(1, LONG_TIMEOUT), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
++ VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WRITE_TIMEOUT), BLOCK_SIZE(1),
+ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0),
+ ON_UPDATE(fix_net_write_timeout));
+
+@@ -2257,7 +2257,7 @@
+ "The number of seconds the server waits for activity on a "
+ "connection before closing it",
+ SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG),
+- VALID_RANGE(1, IF_WIN(INT_MAX32/1000, LONG_TIMEOUT)),
++ VALID_RANGE(1, INT_MAX32/1000),
+ DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1));
+
+ /** propagates changes to the relevant flag of @@optimizer_switch */
diff --git a/databases/percona55-server/files/patch-support-files_CMakeLists.txt b/databases/percona55-server/files/patch-support-files_CMakeLists.txt
new file mode 100644
index 000000000000..159e1fa71ba2
--- /dev/null
+++ b/databases/percona55-server/files/patch-support-files_CMakeLists.txt
@@ -0,0 +1,12 @@
+--- support-files/CMakeLists.txt.orig 2010-12-23 17:38:19.000000000 +0100
++++ support-files/CMakeLists.txt 2010-12-23 17:41:11.000000000 +0100
+@@ -74,7 +74,9 @@
+ INSTALL(FILES magic DESTINATION ${inst_location} COMPONENT SupportFiles)
+ ENDIF()
+
++IF(FALSE)
+ INSTALL(FILES mysql.m4 DESTINATION ${INSTALL_SHAREDIR}/aclocal COMPONENT Development)
++ENDIF()
+ CONFIGURE_FILE(MySQL-shared-compat.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/MySQL-shared-compat.spec @ONLY)
+ CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.spec @ONLY)
+ CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.${VERSION}.spec @ONLY)
diff --git a/databases/percona55-server/pkg-descr b/databases/percona55-server/pkg-descr
new file mode 100644
index 000000000000..9d0e268ad067
--- /dev/null
+++ b/databases/percona55-server/pkg-descr
@@ -0,0 +1,3 @@
+Percona Server is an enhanced drop-in replacement for MySQL
+
+WWW: http://www.percona.com/
diff --git a/databases/percona55-server/pkg-message b/databases/percona55-server/pkg-message
new file mode 100644
index 000000000000..7e30302334e6
--- /dev/null
+++ b/databases/percona55-server/pkg-message
@@ -0,0 +1,7 @@
+************************************************************************
+
+Remember to run mysql_upgrade (with the optional --datadir=<dbdir> flag)
+the first time you start the MySQL server after an upgrade from an
+earlier version.
+
+************************************************************************
diff --git a/databases/percona55-server/pkg-plist b/databases/percona55-server/pkg-plist
new file mode 100644
index 000000000000..c389fb45c068
--- /dev/null
+++ b/databases/percona55-server/pkg-plist
@@ -0,0 +1,140 @@
+@stopdaemon mysql-server
+bin/innochecksum
+bin/my_print_defaults
+bin/myisam_ftdump
+bin/myisamchk
+bin/myisamlog
+bin/myisampack
+bin/mysql_convert_table_format
+bin/mysql_fix_extensions
+bin/mysql_install_db
+bin/mysql_plugin
+bin/mysql_secure_installation
+bin/mysql_setpermission
+bin/mysql_tzinfo_to_sql
+bin/mysql_upgrade
+bin/mysql_zap
+bin/mysqlbug
+bin/mysqld_multi
+bin/mysqld_safe
+bin/mysqldumpslow
+bin/mysqlhotcopy
+bin/mysqltest
+bin/perror
+bin/replace
+bin/resolve_stack_dump
+bin/resolveip
+lib/mysql/libmysqld.a
+lib/mysql/plugin/adt_null.so
+lib/mysql/plugin/auth.so
+lib/mysql/plugin/auth_test_plugin.so
+lib/mysql/plugin/daemon_example.ini
+lib/mysql/plugin/ha_archive.so
+lib/mysql/plugin/ha_blackhole.so
+lib/mysql/plugin/ha_example.so
+lib/mysql/plugin/ha_federated.so
+lib/mysql/plugin/libdaemon_example.so
+lib/mysql/plugin/mypluglib.so
+lib/mysql/plugin/qa_auth_client.so
+lib/mysql/plugin/qa_auth_interface.so
+lib/mysql/plugin/qa_auth_server.so
+lib/mysql/plugin/semisync_master.so
+lib/mysql/plugin/semisync_slave.so
+libexec/mysqld
+%%DATADIR%%/binary-configure
+%%DATADIR%%/charsets/Index.xml
+%%DATADIR%%/charsets/README
+%%DATADIR%%/charsets/armscii8.xml
+%%DATADIR%%/charsets/ascii.xml
+%%DATADIR%%/charsets/cp1250.xml
+%%DATADIR%%/charsets/cp1251.xml
+%%DATADIR%%/charsets/cp1256.xml
+%%DATADIR%%/charsets/cp1257.xml
+%%DATADIR%%/charsets/cp850.xml
+%%DATADIR%%/charsets/cp852.xml
+%%DATADIR%%/charsets/cp866.xml
+%%DATADIR%%/charsets/dec8.xml
+%%DATADIR%%/charsets/geostd8.xml
+%%DATADIR%%/charsets/greek.xml
+%%DATADIR%%/charsets/hebrew.xml
+%%DATADIR%%/charsets/hp8.xml
+%%DATADIR%%/charsets/keybcs2.xml
+%%DATADIR%%/charsets/koi8r.xml
+%%DATADIR%%/charsets/koi8u.xml
+%%DATADIR%%/charsets/latin1.xml
+%%DATADIR%%/charsets/latin2.xml
+%%DATADIR%%/charsets/latin5.xml
+%%DATADIR%%/charsets/latin7.xml
+%%DATADIR%%/charsets/macce.xml
+%%DATADIR%%/charsets/macroman.xml
+%%DATADIR%%/charsets/swe7.xml
+%%DATADIR%%/config.huge.ini
+%%DATADIR%%/config.medium.ini
+%%DATADIR%%/config.small.ini
+%%DATADIR%%/czech/errmsg.sys
+%%DATADIR%%/danish/errmsg.sys
+%%DATADIR%%/dutch/errmsg.sys
+%%DATADIR%%/english/errmsg.sys
+%%DATADIR%%/errmsg-utf8.txt
+%%DATADIR%%/estonian/errmsg.sys
+%%DATADIR%%/fill_help_tables.sql
+%%DATADIR%%/french/errmsg.sys
+%%DATADIR%%/german/errmsg.sys
+%%DATADIR%%/greek/errmsg.sys
+%%DATADIR%%/hungarian/errmsg.sys
+%%DATADIR%%/italian/errmsg.sys
+%%DATADIR%%/japanese/errmsg.sys
+%%DATADIR%%/korean/errmsg.sys
+%%DATADIR%%/magic
+%%DATADIR%%/my-huge.cnf
+%%DATADIR%%/my-innodb-heavy-4G.cnf
+%%DATADIR%%/my-large.cnf
+%%DATADIR%%/my-medium.cnf
+%%DATADIR%%/my-small.cnf
+%%DATADIR%%/mysql-log-rotate
+%%DATADIR%%/mysql.server
+%%DATADIR%%/mysql_system_tables.sql
+%%DATADIR%%/mysql_system_tables_data.sql
+%%DATADIR%%/mysql_test_data_timezone.sql
+%%DATADIR%%/mysqld_multi.server
+%%DATADIR%%/ndb-config-2-node.ini
+%%DATADIR%%/norwegian-ny/errmsg.sys
+%%DATADIR%%/norwegian/errmsg.sys
+%%DATADIR%%/polish/errmsg.sys
+%%DATADIR%%/portuguese/errmsg.sys
+%%DATADIR%%/romanian/errmsg.sys
+%%DATADIR%%/russian/errmsg.sys
+%%DATADIR%%/serbian/errmsg.sys
+%%DATADIR%%/slovak/errmsg.sys
+%%DATADIR%%/spanish/errmsg.sys
+%%DATADIR%%/swedish/errmsg.sys
+%%DATADIR%%/ukrainian/errmsg.sys
+@dirrm lib/mysql/plugin
+@dirrmtry lib/mysql
+@dirrm %%DATADIR%%/charsets
+@dirrm %%DATADIR%%/czech
+@dirrm %%DATADIR%%/danish
+@dirrm %%DATADIR%%/dutch
+@dirrm %%DATADIR%%/english
+@dirrm %%DATADIR%%/estonian
+@dirrm %%DATADIR%%/french
+@dirrm %%DATADIR%%/german
+@dirrm %%DATADIR%%/greek
+@dirrm %%DATADIR%%/hungarian
+@dirrm %%DATADIR%%/italian
+@dirrm %%DATADIR%%/japanese
+@dirrm %%DATADIR%%/korean
+@dirrm %%DATADIR%%/norwegian
+@dirrm %%DATADIR%%/norwegian-ny
+@dirrm %%DATADIR%%/polish
+@dirrm %%DATADIR%%/portuguese
+@dirrm %%DATADIR%%/romanian
+@dirrm %%DATADIR%%/russian
+@dirrm %%DATADIR%%/serbian
+@dirrm %%DATADIR%%/slovak
+@dirrm %%DATADIR%%/spanish
+@dirrm %%DATADIR%%/swedish
+@dirrm %%DATADIR%%/ukrainian
+@dirrm %%DATADIR%%
+@cwd /var
+@dirrmtry db/mysql