mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
66fd45afce
in cmake tests let's treat clang like gcc (same options, same builtins) in many cases. * don't check the compiler when * testing for -fvisibility=hidden support * testing for HAVE_ABI_CXA_DEMANGLE * testing for HAVE_GCC_ATOMIC_BUILTINS * when removing options with string(replace) * when running ${CC} --version (ignore the error instead) * run ABI checks for clang * use "canonical" gcc flags for clang * fix groonga too Also: * add cmake detection for gcc __atomic_* builtins. they might be supported (__ATOMIC_SEQ_CST is defined), but not for all operand sizes. In particular, 64-bit atomic load is problematic on i386 * cache check results for Windows * remove the test for HAVE_CXXABI_H (HAVE_ABI_CXA_DEMANGLE is suffifient)
39 lines
1.1 KiB
CMake
39 lines
1.1 KiB
CMake
|
|
IF(WIN32)
|
|
# Handlersocket does not compile on Windows, compiles but does
|
|
# not start on FreeBSD.
|
|
RETURN()
|
|
ENDIF()
|
|
|
|
#Remove -fno-implicit-templates from compiler flags(handlersocket would not work with it)
|
|
STRING(REPLACE "-fno-implicit-templates" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
|
|
|
INCLUDE_DIRECTORIES(libhsclient)
|
|
|
|
# Handlersocket client library. We do not distribute it,
|
|
# it is just compiled in.
|
|
SET(LIBHSCLIENT_SOURCES
|
|
libhsclient/config.cpp
|
|
libhsclient/escape.cpp
|
|
libhsclient/fatal.cpp
|
|
libhsclient/hstcpcli.cpp
|
|
libhsclient/socket.cpp
|
|
libhsclient/string_util.cpp
|
|
)
|
|
ADD_CONVENIENCE_LIBRARY(hsclient ${LIBHSCLIENT_SOURCES})
|
|
# Solaris needs to link some network libraries
|
|
TARGET_LINK_LIBRARIES(hsclient ${LIBSOCKET} ${LIBNLS} ${LIBBIND})
|
|
|
|
# handlersocket daemon plugin itself.
|
|
SET(HANDLERSOCKET_SOURCES
|
|
handlersocket/database.cpp
|
|
handlersocket/handlersocket.cpp
|
|
handlersocket/hstcpsvr_worker.cpp
|
|
handlersocket/hstcpsvr.cpp
|
|
)
|
|
MYSQL_ADD_PLUGIN(handlersocket
|
|
${HANDLERSOCKET_SOURCES}
|
|
MODULE_ONLY COMPONENT Server
|
|
LINK_LIBRARIES hsclient
|
|
)
|
|
|