Below is the list of changes that have just been committed into a local
5.0 repository of serg. When serg does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet
1.1914 05/05/05 16:21:17 serg@stripped +9 -0
gcc 2.92 compatibility
extra/yassl/taocrypt/src/rsa.cpp
1.3 05/05/05 16:19:22 serg@stripped +18 -14
gcc 2.92 compatibility
extra/yassl/taocrypt/src/integer.cpp
1.3 05/05/05 16:19:22 serg@stripped +6 -9
gcc 2.92 compatibility
extra/yassl/taocrypt/src/Makefile.am
1.3 05/05/05 16:19:22 serg@stripped +0 -1
gcc 2.92 compatibility
extra/yassl/taocrypt/include/runtime.hpp
1.3 05/05/05 16:19:22 serg@stripped +5 -2
better USE_MYSYS_NEW detection
extra/yassl/src/yassl_int.cpp
1.3 05/05/05 16:19:22 serg@stripped +3 -1
gcc 2.92 compatibility
extra/yassl/src/yassl_imp.cpp
1.3 05/05/05 16:19:22 serg@stripped +2 -0
gcc 2.92 compatibility
extra/yassl/src/Makefile.am
1.3 05/05/05 16:19:22 serg@stripped +0 -1
better USE_MYSYS_NEW detection
configure.in
1.304 05/05/05 16:19:22 serg@stripped +1 -26
better USE_MYSYS_NEW detection
config/ac-macros/misc.m4
1.7 05/05/05 16:19:22 serg@stripped +17 -0
better USE_MYSYS_NEW detection
# This is a BitKeeper patch. What follows are the unified diffs for the
# set of deltas contained in the patch. The rest of the patch, the part
# that BitKeeper cares about, is below these diffs.
# User: serg
# Host: sergbook.mylan
# Root: /usr/home/serg/Abk/mysql-5.0
--- 1.303/configure.in Mon May 2 19:01:30 2005
+++ 1.304/configure.in Thu May 5 16:19:22 2005
@@ -336,32 +336,6 @@
AC_SUBST(INSTALL_SCRIPT)
export CC CXX CFLAGS LD LDFLAGS AR
-if test "$GXX" = "yes"
-then
- # mysqld requires -fno-implicit-templates.
- # Disable exceptions as they seams to create problems with gcc and threads.
- # mysqld doesn't use run-time-type-checking, so we disable it.
- CXXFLAGS="$CXXFLAGS -fno-implicit-templates -fno-exceptions -fno-rtti"
-
- CXX_VERNO=`echo $CXX_VERSION | sed -e 's/[[^0-9. ]]//g; s/^ *//g; s/ .*//g'`
- case "$CXX_VERNO" in
- 3.*)
- USE_MYSYS_NEW="-DUSE_MYSYS_NEW" # yassl needs it
- if echo $CXX | grep gcc > /dev/null 2>&1
- then
- # If you are using 'gcc' 3.0 (not g++) to compile C++ programs on Linux,
- # we will gets some problems when linking static programs.
- # The following code is used to fix this problem.
- CXXFLAGS="$CXXFLAGS $USE_MYSYS_NEW"
- AC_MSG_WARN([Using MYSYS_NEW for static linking with gcc])
- fi
- ;;
- *)
- USE_MYSYS_NEW=""
- ;;
- esac
- AC_SUBST(USE_MYSYS_NEW)
-fi
# Avoid bug in fcntl on some versions of linux
AC_MSG_CHECKING("if we should use 'skip-locking' as default for $target_os")
@@ -1730,6 +1704,7 @@
AC_STRUCT_ST_RDEV
AC_HEADER_TIME
AC_STRUCT_TM
+MYSQL_NEEDS_MYSYS_NEW
# AC_CHECK_SIZEOF return 0 when it does not find the size of a
# type. We want a error instead.
AC_CHECK_SIZEOF(char, 1)
--- 1.6/config/ac-macros/misc.m4 Wed Apr 27 19:01:39 2005
+++ 1.7/config/ac-macros/misc.m4 Thu May 5 16:19:22 2005
@@ -693,3 +693,20 @@
dnl END OF MYSQL_CHECK_BIG_TABLES SECTION
dnl ---------------------------------------------------------------------------
+dnl MYSQL_NEEDS_MYSYS_NEW
+AC_DEFUN([MYSQL_NEEDS_MYSYS_NEW],
+[AC_CACHE_CHECK([needs mysys_new helpers], mysql_use_mysys_new,
+[
+AC_LANG_PUSH(C++)
+AC_TRY_LINK([], [
+class A { public: int b; }; A *a=new A; a->b=10; delete a;
+], mysql_use_mysys_new=no, mysql_use_mysys_new=yes)
+AC_LANG_POP(C++)
+])
+if test "$mysql_use_mysys_new" = "yes"
+then
+ AC_DEFINE([USE_MYSYS_NEW], [1], [Needs to use mysys_new helpers])
+fi
+])
+
+
--- 1.2/extra/yassl/src/Makefile.am Sat Apr 30 19:48:23 2005
+++ 1.3/extra/yassl/src/Makefile.am Thu May 5 16:19:22 2005
@@ -5,4 +5,3 @@
handshake.cpp lock.cpp log.cpp socket_wrapper.cpp ssl.cpp \
timer.cpp yassl_imp.cpp yassl_error.cpp yassl_int.cpp
EXTRA_DIST = ../include/*.hpp ../include/openssl/*.h
-AM_CXXFLAGS=@USE_MYSYS_NEW@
--- 1.2/extra/yassl/src/yassl_imp.cpp Sat Apr 30 19:48:23 2005
+++ 1.3/extra/yassl/src/yassl_imp.cpp Thu May 5 16:19:22 2005
@@ -2092,6 +2092,7 @@
} // namespace
#ifdef __GNUC__
+namespace mySTL {
template class mySTL::list<unsigned char*>;
template yaSSL::del_ptr_zero mySTL::for_each(mySTL::list<unsigned char*>::iterator, mySTL::list<unsigned char*>::iterator, yaSSL::del_ptr_zero);
template mySTL::pair<int, yaSSL::Message* (*)()>* mySTL::uninit_copy<mySTL::pair<int, yaSSL::Message* (*)()>*, mySTL::pair<int, yaSSL::Message* (*)()>*>(mySTL::pair<int, yaSSL::Message* (*)()>*, mySTL::pair<int, yaSSL::Message* (*)()>*, mySTL::pair<int, yaSSL::Message* (*)()>*);
@@ -2112,5 +2113,6 @@
template yaSSL::del_ptr_zero mySTL::for_each<mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::del_ptr_zero>(mySTL::list<yaSSL::input_buffer*>::iterator, mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::del_ptr_zero);
template yaSSL::del_ptr_zero mySTL::for_each<mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::del_ptr_zero>(mySTL::list<yaSSL::output_buffer*>::iterator, mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::del_ptr_zero);
template yaSSL::del_ptr_zero mySTL::for_each<mySTL::list<yaSSL::x509*>::iterator, yaSSL::del_ptr_zero>(mySTL::list<yaSSL::x509*>::iterator, mySTL::list<yaSSL::x509*>::iterator, yaSSL::del_ptr_zero);
+}
#endif
--- 1.2/extra/yassl/src/yassl_int.cpp Sat Apr 30 19:48:23 2005
+++ 1.3/extra/yassl/src/yassl_int.cpp Thu May 5 16:19:22 2005
@@ -1951,7 +1951,7 @@
X509::X509(const char* i, size_t iSz, const char* s, size_t sSz)
: issuer_(i, iSz), subject_(s, sSz)
{}
-
+
X509_NAME* X509::GetIssuer()
{
@@ -1967,7 +1967,9 @@
} // namespace
#ifdef __GNUC__
+namespace mySTL {
template yaSSL::yassl_int_cpp_local1::SumData mySTL::for_each<mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumData>(mySTL::list<yaSSL::input_buffer*>::iterator, mySTL::list<yaSSL::input_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumData);
template yaSSL::yassl_int_cpp_local1::SumBuffer mySTL::for_each<mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumBuffer>(mySTL::list<yaSSL::output_buffer*>::iterator, mySTL::list<yaSSL::output_buffer*>::iterator, yaSSL::yassl_int_cpp_local1::SumBuffer);
template mySTL::list<yaSSL::SSL_SESSION*>::iterator mySTL::find_if<mySTL::list<yaSSL::SSL_SESSION*>::iterator, yaSSL::yassl_int_cpp_local2::sess_match>(mySTL::list<yaSSL::SSL_SESSION*>::iterator, mySTL::list<yaSSL::SSL_SESSION*>::iterator, yaSSL::yassl_int_cpp_local2::sess_match);
+}
#endif
--- 1.2/extra/yassl/taocrypt/include/runtime.hpp Sat Apr 30 19:48:23 2005
+++ 1.3/extra/yassl/taocrypt/include/runtime.hpp Thu May 5 16:19:22 2005
@@ -25,10 +25,11 @@
-#if !defined(yaSSL_NEW_HPP) && defined(USE_MYSYS_NEW)
+#if !defined(yaSSL_NEW_HPP) && defined(__GNUC__)
#define yaSSL_NEW_HPP
+#if __GNUC__ > 2
#include <cstdlib>
@@ -66,4 +67,6 @@
} // extern "C"
-#endif // yaSSL_NEW_HPP
+#endif // __GNUC__ > 2
+#endif // yaSSL_NEW_HPP && __GNUC__
+
--- 1.2/extra/yassl/taocrypt/src/Makefile.am Sat Apr 30 19:48:23 2005
+++ 1.3/extra/yassl/taocrypt/src/Makefile.am Thu May 5 16:19:22 2005
@@ -5,4 +5,3 @@
coding.cpp dh.cpp des.cpp dsa.cpp file.cpp hash.cpp integer.cpp \
md2.cpp md5.cpp misc.cpp random.cpp ripemd.cpp rsa.cpp sha.cpp
EXTRA_DIST = ../include/*.hpp
-AM_CXXFLAGS=@USE_MYSYS_NEW@
--- 1.2/extra/yassl/taocrypt/src/integer.cpp Sat Apr 30 19:48:24 2005
+++ 1.3/extra/yassl/taocrypt/src/integer.cpp Thu May 5 16:19:22 2005
@@ -4168,16 +4168,13 @@
return p * (u * (xq-xp) % q) + xp;
}
-
-
-} // namespace
-
#ifdef __GNUC__
-template TaoCrypt::Integer TaoCrypt::StringToInteger<char>(char const*);
-template TaoCrypt::Integer TaoCrypt::StringToInteger<wchar_t>(wchar_t const*);
-template class TaoCrypt::EuclideanDomainOf<TaoCrypt::Integer>;
-template class TaoCrypt::AbstractEuclideanDomain<TaoCrypt::Integer>;
-template unsigned int TaoCrypt::DivideThreeWordsByTwo<unsigned int, TaoCrypt::DWord>(unsigned int*, unsigned int, unsigned int, TaoCrypt::DWord*);
+template Integer StringToInteger<char>(char const*);
+template Integer StringToInteger<wchar_t>(wchar_t const*);
+template class EuclideanDomainOf<Integer>;
+template class AbstractEuclideanDomain<Integer>;
+template unsigned int DivideThreeWordsByTwo<unsigned int, DWord>(unsigned int*, unsigned int, unsigned int, DWord*);
#endif
+} // namespace
--- 1.2/extra/yassl/taocrypt/src/rsa.cpp Sat Apr 30 19:48:24 2005
+++ 1.3/extra/yassl/taocrypt/src/rsa.cpp Thu May 5 16:19:22 2005
@@ -211,24 +211,28 @@
lengths.PaddedBlockBitLength(), plain);
}
+#ifdef __GNUC__
+template AllocatorWithCleanup<unsigned char>::pointer StdReallocate<unsigned char, AllocatorWithCleanup<unsigned char> >(AllocatorWithCleanup<unsigned char>&, unsigned char*, AllocatorWithCleanup<unsigned char>::size_type, AllocatorWithCleanup<unsigned char>::size_type, bool);
+template AllocatorWithCleanup<unsigned int>::pointer StdReallocate<unsigned int, AllocatorWithCleanup<unsigned int> >(AllocatorWithCleanup<unsigned int>&, unsigned int*, AllocatorWithCleanup<unsigned int>::size_type, AllocatorWithCleanup<unsigned int>::size_type, bool);
+template class AbstractGroup<Integer>;
+template class AbstractRing<Integer>;
+template class RSA_Decryptor<RSA_BlockType2>;
+template class RSA_Encryptor<RSA_BlockType1>;
+template class RSA_Encryptor<RSA_BlockType2>;
+#endif
} // namespace
#ifdef __GNUC__
-template TaoCrypt::AllocatorWithCleanup<unsigned char>::pointer TaoCrypt::StdReallocate<unsigned char, TaoCrypt::AllocatorWithCleanup<unsigned char> >(TaoCrypt::AllocatorWithCleanup<unsigned char>&, unsigned char*, TaoCrypt::AllocatorWithCleanup<unsigned char>::size_type, TaoCrypt::AllocatorWithCleanup<unsigned char>::size_type, bool);
-template TaoCrypt::AllocatorWithCleanup<unsigned int>::pointer TaoCrypt::StdReallocate<unsigned int, TaoCrypt::AllocatorWithCleanup<unsigned int> >(TaoCrypt::AllocatorWithCleanup<unsigned int>&, unsigned int*, TaoCrypt::AllocatorWithCleanup<unsigned int>::size_type, TaoCrypt::AllocatorWithCleanup<unsigned int>::size_type, bool);
-template TaoCrypt::Integer* mySTL::uninit_copy<TaoCrypt::Integer*, TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*, TaoCrypt::Integer*);
-template TaoCrypt::Integer* mySTL::uninit_fill_n<TaoCrypt::Integer*, unsigned int, TaoCrypt::Integer>(TaoCrypt::Integer*, unsigned int, TaoCrypt::Integer const&);
-template TaoCrypt::WindowSlider* mySTL::uninit_copy<TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*>(TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*);
-template class TaoCrypt::AbstractGroup<TaoCrypt::Integer>;
-template class TaoCrypt::AbstractRing<TaoCrypt::Integer>;
-template class TaoCrypt::RSA_Decryptor<TaoCrypt::RSA_BlockType2>;
-template class TaoCrypt::RSA_Encryptor<TaoCrypt::RSA_BlockType1>;
-template class TaoCrypt::RSA_Encryptor<TaoCrypt::RSA_BlockType2>;
-template mySTL::vector<TaoCrypt::Integer>* mySTL::uninit_fill_n<mySTL::vector<TaoCrypt::Integer>*, unsigned int, mySTL::vector<TaoCrypt::Integer> >(mySTL::vector<TaoCrypt::Integer>*, unsigned int, mySTL::vector<TaoCrypt::Integer> const&);
-template void mySTL::destroy<TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*);
-template void mySTL::destroy<TaoCrypt::WindowSlider*>(TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*);
-template void mySTL::destroy<mySTL::vector<TaoCrypt::Integer>*>(mySTL::vector<TaoCrypt::Integer>*, mySTL::vector<TaoCrypt::Integer>*);
+namespace mySTL {
+template TaoCrypt::Integer* uninit_copy<TaoCrypt::Integer*, TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*, TaoCrypt::Integer*);
+template TaoCrypt::Integer* uninit_fill_n<TaoCrypt::Integer*, unsigned int, TaoCrypt::Integer>(TaoCrypt::Integer*, unsigned int, TaoCrypt::Integer const&);
+template TaoCrypt::WindowSlider* uninit_copy<TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*>(TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*);
+template vector<TaoCrypt::Integer>* uninit_fill_n<vector<TaoCrypt::Integer>*, unsigned int, vector<TaoCrypt::Integer> >(vector<TaoCrypt::Integer>*, unsigned int, vector<TaoCrypt::Integer> const&);
+template void destroy<TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*);
+template void destroy<TaoCrypt::WindowSlider*>(TaoCrypt::WindowSlider*, TaoCrypt::WindowSlider*);
+template void destroy<vector<TaoCrypt::Integer>*>(vector<TaoCrypt::Integer>*, vector<TaoCrypt::Integer>*);
+}
#endif
| Thread |
|---|
| • bk commit into 5.0 tree (serg:1.1914) | serg | 5 May |