Files
MaxScale/server/core/CMakeLists.txt
Markus Mäkelä bbfd9ce136 Move Backend and SessionCommand classes to the core
Using the same implementation of the Backend and SessionCommand classes in
both schemarouter and readwritesplit will prevent duplication of code.

This commit only splits the generic parts of the class to a Backend class
which the schemarouter then extends. The session commands for both routers
are similar so they require no special handling.
2017-06-22 10:40:16 +03:00

111 lines
2.0 KiB
CMake

add_library(maxscale-common SHARED
admin.cc
adminusers.cc
alloc.cc
atomic.cc
authenticator.cc
backend.cc
buffer.cc
config.cc
config_runtime.cc
dcb.cc
externcmd.cc
filter.cc
hashtable.cc
hint.cc
housekeeper.cc
httprequest.cc
httpresponse.cc
json_api.cc
listener.cc
load_utils.cc
log_manager.cc
maxscale_pcre2.cc
misc.cc
mlist.cc
messagequeue.cc
modulecmd.cc
modutil.cc
monitor.cc
mysql_binlog.cc
mysql_utils.cc
paths.cc
poll.cc
query_classifier.cc
queuemanager.cc
random_jkiss.cc
resultset.cc
resource.cc
router.cc
secrets.cc
semaphore.cc
server.cc
service.cc
session.cc
session_command.cc
skygw_utils.cc
spinlock.cc
ssl.cc
statistics.cc
thread.cc
users.cc
utils.cc
worker.cc
workertask.cc
)
if(WITH_JEMALLOC)
target_link_libraries(maxscale-common ${JEMALLOC_LIBRARIES})
elseif(WITH_TCMALLOC)
target_link_libraries(maxscale-common ${TCMALLOC_LIBRARIES})
endif()
target_link_libraries(maxscale-common
${MARIADB_CONNECTOR_LIBRARIES}
${LZMA_LINK_FLAGS}
${PCRE2_LIBRARIES}
${CURL_LIBRARIES}
${JANSSON_LIBRARIES}
ssl
pthread
crypt
dl
crypto
inih
z
rt
m
stdc++
gnutls
gcrypt
${MICROHTTPD_LIBRARIES}
)
add_dependencies(maxscale-common pcre2 connector-c)
set_target_properties(maxscale-common PROPERTIES VERSION "1.0.0")
install_module(maxscale-common core)
add_executable(maxscale gateway.cc)
add_dependencies(maxscale pcre2)
if(WITH_JEMALLOC)
target_link_libraries(maxscale ${JEMALLOC_LIBRARIES})
elseif(WITH_TCMALLOC)
target_link_libraries(maxscale ${TCMALLOC_LIBRARIES})
endif()
target_link_libraries(maxscale maxscale-common)
install_executable(maxscale core)
add_executable(maxkeys maxkeys.c)
target_link_libraries(maxkeys maxscale-common)
install_executable(maxkeys core)
add_executable(maxpasswd maxpasswd.c)
target_link_libraries(maxpasswd maxscale-common)
install_executable(maxpasswd core)
if(BUILD_TESTS)
add_subdirectory(test)
endif()