You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +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
30 lines
1.4 KiB
CMake
Executable File
30 lines
1.4 KiB
CMake
Executable File
include_directories(${ENGINE_COMMON_INCLUDES} ${ENGINE_SRC_DIR}/storage-manager/include)
|
|
|
|
set(cloudio_LIB_SRCS SMComm.cpp SMDataFile.cpp SMFileFactory.cpp SMFileSystem.cpp SocketPool.cpp cloud_plugin.cpp ../../datatypes/mcs_datatype.cpp)
|
|
|
|
add_library(cloudio SHARED ${cloudio_LIB_SRCS})
|
|
|
|
# IDBDataFile currently depends on cloudio, which is backward.
|
|
# Once cloudio has been turned into a proper plugin for idbdatafile,
|
|
# we should be able to reverse the dependency like so:
|
|
target_link_libraries(cloudio idbdatafile messageqcpp loggingcpp)
|
|
|
|
install(TARGETS cloudio DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-engine)
|
|
|
|
add_executable(cloudio_component_test component_test.cpp)
|
|
|
|
add_executable(end_to_end_test end_to_end_test.cpp)
|
|
|
|
# see the comment above and change this dependency to cloudio. Hm
|
|
# our lib dependencies seem not to be declared. Punting on that,
|
|
# maybe in the future we can have some poor unfortunate intern
|
|
# untangle all of that and declare lib dependencies properly.
|
|
# For now I'm going to do like the other executables, which means
|
|
# nearly everything AFAICT.
|
|
target_link_libraries(cloudio_component_test ${ENGINE_LDFLAGS} ${ENGINE_EXEC_LIBS} cloudio)
|
|
target_link_libraries(end_to_end_test ${ENGINE_LDFLAGS} ${ENGINE_EXEC_LIBS} cloudio)
|
|
#target_link_libraries(cloudio_component_test cloudio)
|
|
# Copy end_to_end_test dataFile to binary directory
|
|
FILE(COPY testData DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/)
|
|
|