mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
WL#2286 - Compile MySQL w/YASSL support
Compilation errors fixes. config/ac-macros/yassl.m4: Switch to -l/-L instead of passing file name directly. (more portable for ".a" archives) extra/yassl/taocrypt/src/integer.cpp: Instantiate more templates (needed by some 64bit boxes). extra/yassl/taocrypt/src/template_instnt.cpp: Instantiate more templates (needed by some 64bit boxes). Move tcArrayDelete to TaoCrypt namespace (more portable).
This commit is contained in:
parent
fec4347fb3
commit
bdbace6666
3 changed files with 14 additions and 6 deletions
|
@ -19,8 +19,8 @@ AC_DEFUN([MYSQL_CHECK_YASSL], [
|
|||
AC_MSG_RESULT([using bundled yaSSL])
|
||||
yassl_dir="extra/yassl"
|
||||
openssl_libs="\
|
||||
\$(top_builddir)/extra/yassl/src/libyassl.a\
|
||||
\$(top_builddir)/extra/yassl/taocrypt/src/libtaocrypt.a"
|
||||
-L\$(top_builddir)/extra/yassl/src -lyassl\
|
||||
-L\$(top_builddir)/extra/yassl/taocrypt/src -ltaocrypt"
|
||||
openssl_includes="-I\$(top_srcdir)/extra/yassl/include"
|
||||
AC_DEFINE([HAVE_OPENSSL], [1], [Defined by configure. Using yaSSL for OpenSSL emulation.])
|
||||
else
|
||||
|
|
|
@ -3941,6 +3941,8 @@ Integer CRT(const Integer &xp, const Integer &p, const Integer &xq,
|
|||
|
||||
#ifdef __GNUC__
|
||||
template unsigned int DivideThreeWordsByTwo<unsigned int, DWord>(unsigned int*, unsigned int, unsigned int, DWord*);
|
||||
template unsigned int DivideThreeWordsByTwo<unsigned int, Word>(unsigned int*, unsigned int, unsigned int, Word*);
|
||||
template unsigned long long DivideThreeWordsByTwo<unsigned long long, DWord>(unsigned long long*, unsigned long long, unsigned long long, DWord*);
|
||||
#endif
|
||||
|
||||
} // namespace
|
||||
|
|
|
@ -11,6 +11,7 @@ template AlignedAllocator<unsigned int>::pointer StdReallocate<unsigned int, Ali
|
|||
#endif
|
||||
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 AllocatorWithCleanup<unsigned long long>::pointer StdReallocate<unsigned long long, AllocatorWithCleanup<unsigned long long> >(AllocatorWithCleanup<unsigned long long>&, unsigned long long*, AllocatorWithCleanup<unsigned long long>::size_type, AllocatorWithCleanup<unsigned long long>::size_type, bool);
|
||||
template class RSA_Decryptor<RSA_BlockType2>;
|
||||
template class RSA_Encryptor<RSA_BlockType1>;
|
||||
template class RSA_Encryptor<RSA_BlockType2>;
|
||||
|
@ -18,14 +19,19 @@ template class RSA_Encryptor<RSA_BlockType2>;
|
|||
|
||||
namespace mySTL {
|
||||
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 vector<TaoCrypt::Integer>* uninit_fill_n<vector<TaoCrypt::Integer>*, unsigned long, vector<TaoCrypt::Integer> >(vector<TaoCrypt::Integer>*, unsigned long, vector<TaoCrypt::Integer> const&);
|
||||
template void destroy<vector<TaoCrypt::Integer>*>(vector<TaoCrypt::Integer>*, vector<TaoCrypt::Integer>*);
|
||||
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::Integer* uninit_fill_n<TaoCrypt::Integer*, unsigned long, TaoCrypt::Integer>(TaoCrypt::Integer*, unsigned long, TaoCrypt::Integer const&);
|
||||
template void destroy<TaoCrypt::Integer*>(TaoCrypt::Integer*, TaoCrypt::Integer*);
|
||||
}
|
||||
|
||||
template void TaoCrypt::tcDelete<TaoCrypt::HASH>(TaoCrypt::HASH*);
|
||||
template void TaoCrypt::tcArrayDelete<unsigned>(unsigned*);
|
||||
template void TaoCrypt::tcArrayDelete<unsigned char>(unsigned char*);
|
||||
template void TaoCrypt::tcArrayDelete<char>(char*);
|
||||
namespace TaoCrypt {
|
||||
template void tcDelete<HASH>(HASH*);
|
||||
template void tcArrayDelete<unsigned>(unsigned*);
|
||||
template void tcArrayDelete<unsigned long long>(unsigned long long*);
|
||||
template void tcArrayDelete<unsigned char>(unsigned char*);
|
||||
template void tcArrayDelete<char>(char*);
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in a new issue