diff options
Diffstat (limited to 'extra')
-rwxr-xr-x | extra/CMakeLists.txt | 76 | ||||
-rwxr-xr-x | extra/yassl/CMakeLists.txt | 24 | ||||
-rwxr-xr-x | extra/yassl/taocrypt/CMakeLists.txt | 11 |
3 files changed, 79 insertions, 32 deletions
diff --git a/extra/CMakeLists.txt b/extra/CMakeLists.txt index b67fdfa601f..c1487149acd 100755 --- a/extra/CMakeLists.txt +++ b/extra/CMakeLists.txt @@ -12,42 +12,78 @@ # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -INCLUDE("${PROJECT_SOURCE_DIR}/win/mysql_manifest.cmake") -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) +INCLUDE_DIRECTORIES( +${CMAKE_SOURCE_DIR}/include +${ZLIB_INCLUDE_DIR} +# Following is for perror, in case NDB is compiled in. +${CMAKE_SOURCE_DIR}/storage/ndb/include +${CMAKE_SOURCE_DIR}/storage/ndb/include/util +${CMAKE_SOURCE_DIR}/storage/ndb/include/ndbapi +${CMAKE_SOURCE_DIR}/storage/ndb/include/portlib +${CMAKE_SOURCE_DIR}/storage/ndb/include/mgmapi) -ADD_EXECUTABLE(comp_err comp_err.c) -TARGET_LINK_LIBRARIES(comp_err dbug mysys strings zlib) -GET_TARGET_PROPERTY(COMP_ERR_EXE comp_err LOCATION) +IF(NOT CMAKE_CROSSCOMPILING) + ADD_EXECUTABLE(comp_err comp_err.c) + TARGET_LINK_LIBRARIES(comp_err ${ZLIB_LIBRARY} mysys) +ENDIF() -ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_SOURCE_DIR}/include/mysqld_error.h - COMMAND ${COMP_ERR_EXE} +ADD_CUSTOM_COMMAND(OUTPUT ${PROJECT_BINARY_DIR}/include/mysqld_error.h + ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys + COMMAND comp_err --charset=${PROJECT_SOURCE_DIR}/sql/share/charsets - --out-dir=${PROJECT_SOURCE_DIR}/sql/share/ - --header_file=${PROJECT_SOURCE_DIR}/include/mysqld_error.h - --name_file=${PROJECT_SOURCE_DIR}/include/mysqld_ername.h - --state_file=${PROJECT_SOURCE_DIR}/include/sql_state.h + --out-dir=${PROJECT_BINARY_DIR}/sql/share/ + --header_file=${PROJECT_BINARY_DIR}/include/mysqld_error.h + --name_file=${PROJECT_BINARY_DIR}/include/mysqld_ername.h + --state_file=${PROJECT_BINARY_DIR}/include/sql_state.h --in_file=${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt - DEPENDS comp_err ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt) + DEPENDS ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt + ${CMAKE_CURRENT_SOURCE_DIR}/comp_err.c) ADD_CUSTOM_TARGET(GenError ALL - DEPENDS ${PROJECT_SOURCE_DIR}/include/mysqld_error.h) + DEPENDS + ${PROJECT_BINARY_DIR}/include/mysqld_error.h + ${PROJECT_BINARY_DIR}/sql/share/english/errmsg.sys + ${PROJECT_SOURCE_DIR}/sql/share/errmsg-utf8.txt) ADD_EXECUTABLE(my_print_defaults my_print_defaults.c) -TARGET_LINK_LIBRARIES(my_print_defaults strings mysys dbug taocrypt) +TARGET_LINK_LIBRARIES(my_print_defaults mysys) ADD_EXECUTABLE(perror perror.c) -TARGET_LINK_LIBRARIES(perror strings mysys dbug) +ADD_DEPENDENCIES(perror GenError) +TARGET_LINK_LIBRARIES(perror mysys) ADD_EXECUTABLE(resolveip resolveip.c) -TARGET_LINK_LIBRARIES(resolveip strings mysys dbug) +TARGET_LINK_LIBRARIES(resolveip mysys) +# On Solaris, inet_aton() function used by resolveip could be in resolv library +IF(CMAKE_SYSTEM_NAME STREQUAL "SunOS") + INCLUDE(CheckFunctionExists) + INCLUDE(CheckLibraryExists) + CHECK_FUNCTION_EXISTS(inet_aton HAVE_INET_ATON) + IF(NOT HAVE_INET_ATON) + CHECK_LIBRARY_EXISTS(resolv inet_aton "" HAVE_INET_ATON_IN_RESOLV) + IF(HAVE_INET_ATON_IN_RESOLV) + TARGET_LINK_LIBRARIES(resolveip resolv) + ENDIF() + ENDIF() +ENDIF() + ADD_EXECUTABLE(replace replace.c) -TARGET_LINK_LIBRARIES(replace strings mysys dbug) +TARGET_LINK_LIBRARIES(replace mysys) +IF(UNIX) + ADD_EXECUTABLE(innochecksum innochecksum.c) + + ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.c) + TARGET_LINK_LIBRARIES(resolve_stack_dump mysys) + + ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c) + TARGET_LINK_LIBRARIES(mysql_waitpid mysys) + + INSTALL(TARGETS innochecksum mysql_waitpid resolve_stack_dump DESTINATION bin) +ENDIF() -IF(EMBED_MANIFESTS) - MYSQL_EMBED_MANIFEST("myTest" "asInvoker") -ENDIF(EMBED_MANIFESTS) +INSTALL(TARGETS perror resolveip my_print_defaults replace DESTINATION bin) diff --git a/extra/yassl/CMakeLists.txt b/extra/yassl/CMakeLists.txt index ffb72b831af..a815a46a323 100755 --- a/extra/yassl/CMakeLists.txt +++ b/extra/yassl/CMakeLists.txt @@ -13,16 +13,22 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extra/yassl/include - ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include - ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL) - -ADD_DEFINITIONS("-D_LIB -DYASSL_PREFIX") +INCLUDE_DIRECTORIES( + ${CMAKE_SOURCE_DIR}/include + ${CMAKE_SOURCE_DIR}/extra/yassl/include + ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include + ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL) +ADD_DEFINITIONS(${SSL_DEFINES}) +IF(CMAKE_COMPILER_IS_GNUXX) + #Remove -fno-implicit-templates + #(yassl sources cannot be compiled with it) + STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS +${CMAKE_CXX_FLAGS}) +ENDIF() SET(YASSL_SOURCES src/buffer.cpp src/cert_wrapper.cpp src/crypto_wrapper.cpp src/handshake.cpp src/lock.cpp src/log.cpp src/socket_wrapper.cpp src/ssl.cpp src/timer.cpp src/yassl_error.cpp src/yassl_imp.cpp src/yassl_int.cpp) -IF(NOT SOURCE_SUBLIBS) - ADD_LIBRARY(yassl ${YASSL_SOURCES}) - ADD_DEPENDENCIES(yassl GenError) -ENDIF(NOT SOURCE_SUBLIBS) +USE_ABSOLUTE_FILENAMES(YASSL_SOURCES) +ADD_LIBRARY(yassl ${YASSL_SOURCES}) + diff --git a/extra/yassl/taocrypt/CMakeLists.txt b/extra/yassl/taocrypt/CMakeLists.txt index e91fa021de5..58de3989b73 100755 --- a/extra/yassl/taocrypt/CMakeLists.txt +++ b/extra/yassl/taocrypt/CMakeLists.txt @@ -16,6 +16,11 @@ INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/mySTL ${CMAKE_SOURCE_DIR}/extra/yassl/taocrypt/include) +INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include) +ADD_DEFINITIONS(${SSL_DEFINES}) +IF(PREVENT_CPP_RUNTIME) + SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${PREVENT_CPP_RUNTIME}") +ENDIF() SET(TAOCRYPT_SOURCES src/aes.cpp src/aestables.cpp src/algebra.cpp src/arc4.cpp src/asn.cpp src/coding.cpp src/des.cpp src/dh.cpp src/dsa.cpp src/file.cpp src/hash.cpp src/integer.cpp src/md2.cpp src/md4.cpp src/md5.cpp src/misc.cpp src/random.cpp src/ripemd.cpp src/rsa.cpp src/sha.cpp @@ -24,6 +29,6 @@ SET(TAOCRYPT_SOURCES src/aes.cpp src/aestables.cpp src/algebra.cpp src/arc4.cpp include/error.hpp include/file.hpp include/hash.hpp include/hmac.hpp include/integer.hpp include/md2.hpp include/md5.hpp include/misc.hpp include/modarith.hpp include/modes.hpp include/random.hpp include/ripemd.hpp include/rsa.hpp include/sha.hpp) -IF(NOT SOURCE_SUBLIBS) - ADD_LIBRARY(taocrypt ${TAOCRYPT_SOURCES}) -ENDIF(NOT SOURCE_SUBLIBS) +USE_ABSOLUTE_FILENAMES(TAOCRYPT_SOURCES) +ADD_LIBRARY(taocrypt ${TAOCRYPT_SOURCES}) + |