You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
ColumnStore used to include server's mysql.h but link all tools with libmariadb.so There's no guarantee that this would work, even with workarounds it had in dbcon/mysql/sm.cpp Fix: * tools (linked with libmariadb.so) *must* include libmariadb's mysql.h * as a hack prevent service_thd_timezone.h from being loaded into tools, as it conflicts with libmariadb's mysql.h * server plugin *must* include server's mysql.h * also don't link every tool with libmariadb.so, link the helper library (liblibmysqlclient.so) that actually needs it, tools use this helper library, not libmariadb.so directly
20 lines
574 B
CMake
20 lines
574 B
CMake
|
|
include_directories(BEFORE
|
|
${CMAKE_BINARY_DIR}/libmariadb/include
|
|
${CMAKE_SOURCE_DIR}/libmariadb/include)
|
|
add_definitions(-DMYSQL_SERVICE_THD_TIMEZONE_INCLUDED)
|
|
|
|
include_directories( ${ENGINE_COMMON_INCLUDES} )
|
|
|
|
########### next target ###############
|
|
|
|
set(libmysql_client_LIB_SRCS libmysql_client.cpp)
|
|
|
|
add_library(libmysql_client SHARED ${libmysql_client_LIB_SRCS})
|
|
target_link_libraries(libmysql_client ${MARIADB_CLIENT_LIBS})
|
|
|
|
add_dependencies(libmysql_client loggingcpp)
|
|
|
|
install(TARGETS libmysql_client DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-engine)
|
|
|