diff options
-rw-r--r-- | BUILD/choose_configure.sh | 5 | ||||
-rw-r--r-- | dbug/dbug.c | 2 | ||||
-rw-r--r-- | include/my_global.h | 17 | ||||
-rw-r--r-- | mysys/typelib.c | 6 | ||||
-rwxr-xr-x | scripts/CMakeLists.txt | 2 | ||||
-rwxr-xr-x | scripts/make_win_bin_dist | 7 | ||||
-rw-r--r-- | sql-common/client.c | 2 | ||||
-rw-r--r-- | sql/mdl.h | 8 | ||||
-rw-r--r-- | storage/innobase/trx/trx0i_s.c | 9 | ||||
-rw-r--r-- | support-files/mysql.spec.sh | 29 |
10 files changed, 63 insertions, 24 deletions
diff --git a/BUILD/choose_configure.sh b/BUILD/choose_configure.sh index 80423205274..e76e09d10b0 100644 --- a/BUILD/choose_configure.sh +++ b/BUILD/choose_configure.sh @@ -2,6 +2,11 @@ # Choose whether to use autoconf created configure # of perl script that calls cmake. +# # This is a temporary hack to build 5.5.3-m3: +# # The "cmake" way still shows issues in our release build environment. +# # Block it temporarily, but in a way that can easily be undone. +# HAVE_CMAKE=no + # Ensure cmake and perl are there cmake -P cmake/check_minimal_version.cmake >/dev/null 2>&1 || HAVE_CMAKE=no perl --version >/dev/null 2>&1 || HAVE_CMAKE=no diff --git a/dbug/dbug.c b/dbug/dbug.c index d75a5ae269e..0355d553cff 100644 --- a/dbug/dbug.c +++ b/dbug/dbug.c @@ -1365,7 +1365,7 @@ static void DbugVfprintf(FILE *stream, const char* format, va_list args) { char cvtbuf[1024]; size_t len; - // Do not use my_vsnprintf, it does not support "%g". + /* Do not use my_vsnprintf, it does not support "%g". */ len = vsnprintf(cvtbuf, sizeof(cvtbuf), format, args); (void) fprintf(stream, "%s\n", cvtbuf); } diff --git a/include/my_global.h b/include/my_global.h index 67973ebd560..094853cb642 100644 --- a/include/my_global.h +++ b/include/my_global.h @@ -18,6 +18,11 @@ #ifndef _global_h #define _global_h +/* Client library users on Windows need this macro defined here. */ +#if !defined(__WIN__) && defined(_WIN32) +#define __WIN__ +#endif + /* InnoDB depends on some MySQL internals which other plugins should not need. This is because of InnoDB's foreign key support, "safe" binlog @@ -1089,10 +1094,14 @@ typedef long long my_ptrdiff_t; #define HUGE_PTR #endif #endif -#if defined(__IBMC__) || defined(__IBMCPP__) -/* This was _System _Export but caused a lot of warnings on _AIX43 */ -#define STDCALL -#elif !defined( STDCALL) + +#ifdef STDCALL +#undef STDCALL +#endif + +#ifdef _WIN32 +#define STDCALL __stdcall +#else #define STDCALL #endif diff --git a/mysys/typelib.c b/mysys/typelib.c index c332c82d17a..7681ff581ac 100644 --- a/mysys/typelib.c +++ b/mysys/typelib.c @@ -354,11 +354,11 @@ my_ulonglong find_set_from_flags(const TYPELIB *lib, uint default_name, !(value= parse_name(&on_off_default_typelib, &pos, end))) goto err; - if (value == 1) // this is '=off' + if (value == 1) /* this is '=off' */ flags_to_clear|= bit; - else if (value == 2) // this is '=on' + else if (value == 2) /* this is '=on' */ flags_to_set|= bit; - else // this is '=default' + else /* this is '=default' */ { if (default_set & bit) flags_to_set|= bit; diff --git a/scripts/CMakeLists.txt b/scripts/CMakeLists.txt index ad0f5652b1c..f39224b9457 100755 --- a/scripts/CMakeLists.txt +++ b/scripts/CMakeLists.txt @@ -261,7 +261,7 @@ IF(WIN32) SET(PLIN_FILES mysql_config mysql_secure_installation) # Input files with .sh extension - SET(SH_FILES mysql_convert_table_format mysqld_multi mysqldumpslow + SET(SH_FILES mysql_convert_table_format mysqld_multi mysqldumpslow mysqlhotcopy) FOREACH(file ${PLIN_FILES}) diff --git a/scripts/make_win_bin_dist b/scripts/make_win_bin_dist index e54a14cc66e..9af722f7afc 100755 --- a/scripts/make_win_bin_dist +++ b/scripts/make_win_bin_dist @@ -249,6 +249,7 @@ cp include/mysql.h \ include/decimal.h \ include/errmsg.h \ include/my_global.h \ + include/my_config.h \ include/my_net.h \ include/my_getopt.h \ include/sslopt-longopts.h \ @@ -395,15 +396,15 @@ cp scripts/*.sql $DESTDIR/share/ # Clean up from possibly copied SCCS directories # ---------------------------------------------------------------------- -rm -rf `find $DISTDIR -type d -name SCCS -print` +rm -rf `find $DESTDIR -type d -name SCCS -print` # ---------------------------------------------------------------------- # Copy other files specified on command line DEST=SOURCE # ---------------------------------------------------------------------- for arg do - dst=`echo $arg | sed 's/=.*$//'` - src=`echo $arg | sed 's/^.*=//'` + dst=`echo $arg | sed -n 's/=.*$//p'` + src=`echo $arg | sed -n 's/^.*=//p'` if [ x"$dst" = x"" -o x"$src" = x"" ] ; then echo "Invalid specification of what to copy" diff --git a/sql-common/client.c b/sql-common/client.c index ba8923097a6..173d8397bd9 100644 --- a/sql-common/client.c +++ b/sql-common/client.c @@ -2350,8 +2350,8 @@ CLI_MYSQL_REAL_CONNECT(MYSQL *mysql,const char *host, const char *user, (unix_socket || mysql_unix_port) && (!host || !strcmp(host,LOCAL_HOST))) { - DBUG_PRINT("info", ("Using socket")); my_socket sock= socket(AF_UNIX, SOCK_STREAM, 0); + DBUG_PRINT("info", ("Using socket")); if (sock == SOCKET_ERROR) { set_mysql_extended_error(mysql, CR_SOCKET_CREATE_ERROR, diff --git a/sql/mdl.h b/sql/mdl.h index 124151798ae..2fb21a5aa18 100644 --- a/sql/mdl.h +++ b/sql/mdl.h @@ -15,6 +15,14 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ +#if defined(__IBMC__) || defined(__IBMCPP__) +/* Further down, "next_in_lock" and "next_in_context" have the same type, + and in "sql_plist.h" this leads to an identical signature, which causes + problems in function overloading. +*/ +#pragma namemangling(v5) +#endif + #include "sql_plist.h" #include <my_sys.h> diff --git a/storage/innobase/trx/trx0i_s.c b/storage/innobase/trx/trx0i_s.c index 1b20eaabf42..a3f73e0c9e8 100644 --- a/storage/innobase/trx/trx0i_s.c +++ b/storage/innobase/trx/trx0i_s.c @@ -28,11 +28,18 @@ table cache" for later retrieval. Created July 17, 2007 Vasil Dimov *******************************************************/ +/* Found during the build of 5.5.3 on Linux 2.4 and early 2.6 kernels: + The includes "univ.i" -> "my_global.h" cause a different path + to be taken further down with pthread functions and types, + so they must come first. + From the symptoms, this is related to bug#46587 in the MySQL bug DB. +*/ +#include "univ.i" + #include <mysql/plugin.h> #include "mysql_addons.h" -#include "univ.i" #include "buf0buf.h" #include "dict0dict.h" #include "ha0storage.h" diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh index d7c750b81a6..ed0015c436f 100644 --- a/support-files/mysql.spec.sh +++ b/support-files/mysql.spec.sh @@ -430,6 +430,7 @@ sh -c "PATH=\"${MYSQL_BUILD_PATH:-$PATH}\" \ --with-plugin-archive \ --with-plugin-blackhole \ --with-plugin-federated \ + --with-perfschema \ --without-plugin-daemon_example \ --without-plugin-ftexample \ %if %{EMBEDDED_BUILD} @@ -565,10 +566,10 @@ install -d $RBR%{_sbindir} mkdir $RBR/tmp-debug-plugin $MBD/plugin/debug ( cd $RPM_BUILD_DIR/mysql-%{mysql_version}/mysql-debug-%{mysql_version}/plugin make install DESTDIR=$RBR/tmp-debug-plugin - mv $RBR/tmp-debug-plugin/usr/local/mysql/lib/mysql/plugin/* $MBD/plugin/debug/ + mv $RBR/tmp-debug-plugin/usr/lib*/mysql/plugin/* $MBD/plugin/debug/ # From here, the install hook in "plugin/Makefile.am" will do the rest. ) -rmdir -p $RBR/tmp-debug-plugin/usr/local/mysql/lib/mysql/plugin +rmdir -p $RBR/tmp-debug-plugin/usr/lib*/mysql/plugin || true # Install all binaries (cd $MBD && make install DESTDIR=$RBR testroot=%{_datadir}) @@ -605,8 +606,8 @@ ln -s %{_sysconfdir}/init.d/mysql $RBR%{_sbindir}/rcmysql touch $RBR%{_sysconfdir}/my.cnf %if %{WITH_TCMALLOC} -# Even though this is a shared library, put it under /usr/lib/mysql, so it -# doesn't conflict with possible shared lib by the same name in /usr/lib. See +# Even though this is a shared library, put it under /usr/lib*/mysql, so it +# doesn't conflict with possible shared lib by the same name in /usr/lib*. See # `mysql_config --variable=pkglibdir` and mysqld_safe for how this is used. install -m 644 "%{malloc_lib_source}" "$RBR%{_libdir}/mysql/%{malloc_lib_target}" %endif @@ -873,10 +874,8 @@ fi %attr(755, root, root) %{_sbindir}/mysqld %attr(755, root, root) %{_sbindir}/mysqld-debug %attr(755, root, root) %{_sbindir}/rcmysql -%attr(755, root, root) %{_libdir}/mysql/plugin/ha_example.so* %attr(755, root, root) %{_libdir}/mysql/plugin/semisync_master.so* %attr(755, root, root) %{_libdir}/mysql/plugin/semisync_slave.so* -%attr(755, root, root) %{_libdir}/mysql/plugin/debug/ha_example.so* %attr(755, root, root) %{_libdir}/mysql/plugin/debug/semisync_master.so* %attr(755, root, root) %{_libdir}/mysql/plugin/debug/semisync_slave.so* @@ -1007,14 +1006,10 @@ fi %{_libdir}/mysql/libvio.a %{_libdir}/mysql/libz.a %{_libdir}/mysql/libz.la -%{_libdir}/mysql/plugin/ha_example.a -%{_libdir}/mysql/plugin/ha_example.la %{_libdir}/mysql/plugin/semisync_master.a %{_libdir}/mysql/plugin/semisync_master.la %{_libdir}/mysql/plugin/semisync_slave.a %{_libdir}/mysql/plugin/semisync_slave.la -%{_libdir}/mysql/plugin/debug/ha_example.a -%{_libdir}/mysql/plugin/debug/ha_example.la %{_libdir}/mysql/plugin/debug/semisync_master.a %{_libdir}/mysql/plugin/debug/semisync_master.la %{_libdir}/mysql/plugin/debug/semisync_slave.a @@ -1054,6 +1049,20 @@ fi # merging BK trees) ############################################################################## %changelog +* Wed Mar 24 2010 Joerg Bruehe <joerg.bruehe@sun.com> + +- Add "--with-perfschema" to the configure options. + +* Mon Mar 22 2010 Joerg Bruehe <joerg.bruehe@sun.com> + +- User "usr/lib*" to allow for both "usr/lib" and "usr/lib64", + mask "rmdir" return code 1. +- Remove "ha_example.*" files from the list, they aren't built. + +* Wed Mar 17 2010 Joerg Bruehe <joerg.bruehe@sun.com> + +- Fix a wrong path name in handling the debug plugins. + * Wed Mar 10 2010 Joerg Bruehe <joerg.bruehe@sun.com> - Take the result of the debug plugin build and put it into the optimized tree, |