Loading config/ac-macros/misc.m4 +56 −0 Original line number Diff line number Diff line Loading @@ -710,3 +710,59 @@ fi ]) AC_DEFUN([MYSQL_CHECK_CXX_VERSION], [ case $SYSTEM_TYPE in *netware*) CXX_VERSION=`$CXX -version | grep -i version` ;; *) CXX_VERSION=`$CXX --version | sed 1q` if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION=`$CXX -V 2>&1|sed 1q` # trying harder for Sun and SGI fi if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION=`$CXX -v 2>&1|sed 1q` # even harder for Alpha fi if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION="" fi esac if test "$CXX_VERSION" then AC_MSG_CHECKING("C++ compiler version"); AC_MSG_RESULT("$CXX $CXX_VERSION") fi AC_SUBST(CXX_VERSION) ]) AC_DEFUN([MYSQL_PROG_AR], [ AC_REQUIRE([MYSQL_CHECK_CXX_VERSION]) case $CXX_VERSION in MIPSpro*) AR=$CXX ARFLAGS="-ar -o" ;; *Forte*) AR=$CXX ARFLAGS="-xar -o" ;; *) if test -z "$AR" then AC_CHECK_PROG([AR], [ar], [ar]) fi if test -z "$AR" then AC_MSG_ERROR([You need ar to build the library]) fi if test -z "$ARFLAGS" then ARFLAGS="cru" fi esac AC_SUBST(AR) AC_SUBST(ARFLAGS) ]) configure.in +4 −29 Original line number Diff line number Diff line Loading @@ -195,25 +195,8 @@ then else CC_VERSION="" fi case $SYSTEM_TYPE in *netware*) CXX_VERSION=`$CXX -version | grep -i version` ;; *) CXX_VERSION=`$CXX --version | sed 1q` CXX_VERSION=${CXX_VERSION:-`$CXX -V|sed 1q`} # trying harder for Sun and SGI CXX_VERSION=${CXX_VERSION:-`$CXX -V 2>&1|sed 1q`} # even harder for Alpha ;; esac if test $? -eq "0" then AC_MSG_CHECKING("C++ compiler version"); AC_MSG_RESULT("$CXX $CXX_VERSION") else CXX_VERSION="" fi AC_SUBST(CXX_VERSION) AC_SUBST(CC_VERSION) MYSQL_CHECK_CXX_VERSION # Fix for sgi gcc / sgiCC which tries to emulate gcc if test "$CC" = "sgicc" Loading Loading @@ -367,19 +350,11 @@ then # 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" CXXFLAGS="$CXXFLAGS -DEXPLICIT_TEMPLATE_INSTANTIATION" AC_DEFINE([HAVE_EXPLICIT_TEMPLATE_INSTANTIATION], [1], [Defined by configure. Use explicit template instantiation.]) fi case $CXX_VERSION in MIPSpro*) CXXFLAGS="$CXXFLAGS -no_prelink -DEXPLICIT_TEMPLATE_INSTANTIATION" ;; Compaq*) CXXFLAGS="$CXXFLAGS -nopt -DEXPLICIT_TEMPLATE_INSTANTIATION" ;; Forte*) CXXFLAGS="$CXXFLAGS -instance=explicit -DEXPLICIT_TEMPLATE_INSTANTIATION" esac MYSQL_PROG_AR # Avoid bug in fcntl on some versions of linux AC_MSG_CHECKING("if we should use 'skip-locking' as default for $target_os") Loading extra/yassl/src/crypto_wrapper.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -971,7 +971,7 @@ x509* PemToDer(const char* fname, CertType type) } // namespace #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION namespace yaSSL { template void ysDelete<DiffieHellman::DHImpl>(DiffieHellman::DHImpl*); template void ysDelete<Integer::IntegerImpl>(Integer::IntegerImpl*); Loading @@ -989,6 +989,6 @@ template void ysDelete<RMD::RMDImpl>(RMD::RMDImpl*); template void ysDelete<SHA::SHAImpl>(SHA::SHAImpl*); template void ysDelete<MD5::MD5Impl>(MD5::MD5Impl*); } #endif // EXPLICIT_TEMPLATE_INSTANTIATION #endif // HAVE_EXPLICIT_TEMPLATE_INSTANTIATION #endif // !USE_CRYPTOPP_LIB extra/yassl/src/template_instnt.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ #include "ripemd.hpp" #include "openssl/ssl.h" #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION #if !defined(USE_CRYPTOPP_LIB) namespace TaoCrypt { template class HMAC<MD5>; Loading extra/yassl/src/yassl_int.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ * draft along with type conversion functions. */ #include "runtime.hpp" #include "yassl_int.hpp" #include "handshake.hpp" #include "timer.hpp" Loading Loading @@ -1975,7 +1976,7 @@ X509_NAME* X509::GetSubject() } // namespace #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION namespace mySTL { template yaSSL::yassl_int_cpp_local1::SumData 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 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); Loading Loading
config/ac-macros/misc.m4 +56 −0 Original line number Diff line number Diff line Loading @@ -710,3 +710,59 @@ fi ]) AC_DEFUN([MYSQL_CHECK_CXX_VERSION], [ case $SYSTEM_TYPE in *netware*) CXX_VERSION=`$CXX -version | grep -i version` ;; *) CXX_VERSION=`$CXX --version | sed 1q` if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION=`$CXX -V 2>&1|sed 1q` # trying harder for Sun and SGI fi if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION=`$CXX -v 2>&1|sed 1q` # even harder for Alpha fi if test $? -ne "0" -o -z "$CXX_VERSION" then CXX_VERSION="" fi esac if test "$CXX_VERSION" then AC_MSG_CHECKING("C++ compiler version"); AC_MSG_RESULT("$CXX $CXX_VERSION") fi AC_SUBST(CXX_VERSION) ]) AC_DEFUN([MYSQL_PROG_AR], [ AC_REQUIRE([MYSQL_CHECK_CXX_VERSION]) case $CXX_VERSION in MIPSpro*) AR=$CXX ARFLAGS="-ar -o" ;; *Forte*) AR=$CXX ARFLAGS="-xar -o" ;; *) if test -z "$AR" then AC_CHECK_PROG([AR], [ar], [ar]) fi if test -z "$AR" then AC_MSG_ERROR([You need ar to build the library]) fi if test -z "$ARFLAGS" then ARFLAGS="cru" fi esac AC_SUBST(AR) AC_SUBST(ARFLAGS) ])
configure.in +4 −29 Original line number Diff line number Diff line Loading @@ -195,25 +195,8 @@ then else CC_VERSION="" fi case $SYSTEM_TYPE in *netware*) CXX_VERSION=`$CXX -version | grep -i version` ;; *) CXX_VERSION=`$CXX --version | sed 1q` CXX_VERSION=${CXX_VERSION:-`$CXX -V|sed 1q`} # trying harder for Sun and SGI CXX_VERSION=${CXX_VERSION:-`$CXX -V 2>&1|sed 1q`} # even harder for Alpha ;; esac if test $? -eq "0" then AC_MSG_CHECKING("C++ compiler version"); AC_MSG_RESULT("$CXX $CXX_VERSION") else CXX_VERSION="" fi AC_SUBST(CXX_VERSION) AC_SUBST(CC_VERSION) MYSQL_CHECK_CXX_VERSION # Fix for sgi gcc / sgiCC which tries to emulate gcc if test "$CC" = "sgicc" Loading Loading @@ -367,19 +350,11 @@ then # 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" CXXFLAGS="$CXXFLAGS -DEXPLICIT_TEMPLATE_INSTANTIATION" AC_DEFINE([HAVE_EXPLICIT_TEMPLATE_INSTANTIATION], [1], [Defined by configure. Use explicit template instantiation.]) fi case $CXX_VERSION in MIPSpro*) CXXFLAGS="$CXXFLAGS -no_prelink -DEXPLICIT_TEMPLATE_INSTANTIATION" ;; Compaq*) CXXFLAGS="$CXXFLAGS -nopt -DEXPLICIT_TEMPLATE_INSTANTIATION" ;; Forte*) CXXFLAGS="$CXXFLAGS -instance=explicit -DEXPLICIT_TEMPLATE_INSTANTIATION" esac MYSQL_PROG_AR # Avoid bug in fcntl on some versions of linux AC_MSG_CHECKING("if we should use 'skip-locking' as default for $target_os") Loading
extra/yassl/src/crypto_wrapper.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -971,7 +971,7 @@ x509* PemToDer(const char* fname, CertType type) } // namespace #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION namespace yaSSL { template void ysDelete<DiffieHellman::DHImpl>(DiffieHellman::DHImpl*); template void ysDelete<Integer::IntegerImpl>(Integer::IntegerImpl*); Loading @@ -989,6 +989,6 @@ template void ysDelete<RMD::RMDImpl>(RMD::RMDImpl*); template void ysDelete<SHA::SHAImpl>(SHA::SHAImpl*); template void ysDelete<MD5::MD5Impl>(MD5::MD5Impl*); } #endif // EXPLICIT_TEMPLATE_INSTANTIATION #endif // HAVE_EXPLICIT_TEMPLATE_INSTANTIATION #endif // !USE_CRYPTOPP_LIB
extra/yassl/src/template_instnt.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ #include "ripemd.hpp" #include "openssl/ssl.h" #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION #if !defined(USE_CRYPTOPP_LIB) namespace TaoCrypt { template class HMAC<MD5>; Loading
extra/yassl/src/yassl_int.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -24,6 +24,7 @@ * draft along with type conversion functions. */ #include "runtime.hpp" #include "yassl_int.hpp" #include "handshake.hpp" #include "timer.hpp" Loading Loading @@ -1975,7 +1976,7 @@ X509_NAME* X509::GetSubject() } // namespace #ifdef EXPLICIT_TEMPLATE_INSTANTIATION #ifdef HAVE_EXPLICIT_TEMPLATE_INSTANTIATION namespace mySTL { template yaSSL::yassl_int_cpp_local1::SumData 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 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); Loading