71 lines
2.2 KiB
CMake
71 lines
2.2 KiB
CMake
macro(set_maxscale_version)
|
|
|
|
#MaxScale-test version number
|
|
set(MAXSCALE_VERSION_MAJOR "1")
|
|
set(MAXSCALE_VERSION_MINOR "3")
|
|
set(MAXSCALE_VERSION_PATCH "0")
|
|
set(MAXSCALE_VERSION_NUMERIC "${MAXSCALE_VERSION_MAJOR}.${MAXSCALE_VERSION_MINOR}.${MAXSCALE_VERSION_PATCH}")
|
|
set(MAXSCALE_VERSION "${MAXSCALE_VERSION_MAJOR}.${MAXSCALE_VERSION_MINOR}.${MAXSCALE_VERSION_PATCH}-beta")
|
|
|
|
endmacro()
|
|
|
|
macro(check_deps)
|
|
|
|
find_library(MYSQL_CLIENT mariadbclient mysqlclient PATH_SUFFIXES mysql mariadb)
|
|
|
|
# Check for libraries MaxScale depends on
|
|
set(MAXSCALE_DEPS z crypt nsl m pthread ssl crypto dl rt jansson)
|
|
foreach(lib ${MAXSCALE_DEPS})
|
|
find_library(lib${lib} ${lib})
|
|
if((DEFINED lib${lib}) AND (${lib${lib}} MATCHES "NOTFOUND"))
|
|
set(DEPS_ERROR TRUE)
|
|
set(FAILED_DEPS "${FAILED_DEPS} lib${lib}")
|
|
elseif(DEBUG_OUTPUT)
|
|
message(STATUS "Library was found at: ${lib${lib}}")
|
|
endif()
|
|
endforeach()
|
|
|
|
if(DEPS_ERROR)
|
|
set(DEPS_OK FALSE CACHE BOOL "If all the dependencies were found.")
|
|
message(FATAL_ERROR "Cannot find dependencies: ${FAILED_DEPS}")
|
|
endif()
|
|
if(DEFINED MYSQL_CLIENT MATCHES "NOTFOUND")
|
|
set(DEPS_OK FALSE CACHE BOOL "If all the dependencies were found.")
|
|
message(FATAL_ERROR "Cannot find dependencies: mariadbclient or mysqlclient")
|
|
endif()
|
|
|
|
endmacro()
|
|
|
|
macro(check_dirs)
|
|
|
|
# This variable is used to prevent redundant checking of dependencies
|
|
set(DEPS_OK TRUE CACHE BOOL "If all the dependencies were found.")
|
|
|
|
# Find the MySQL headers if they were not defined
|
|
|
|
if(DEFINED MYSQL_DIR)
|
|
if(DEBUG_OUTPUT)
|
|
message(STATUS "Searching for MySQL headers at: ${MYSQL_DIR}")
|
|
endif()
|
|
find_path(MYSQL_DIR_LOC mysql.h PATHS ${MYSQL_DIR} PATH_SUFFIXES mysql mariadb NO_DEFAULT_PATH)
|
|
else()
|
|
find_path(MYSQL_DIR_LOC mysql.h PATH_SUFFIXES mysql mariadb)
|
|
endif()
|
|
|
|
if(DEBUG_OUTPUT)
|
|
message(STATUS "Search returned: ${MYSQL_DIR_LOC}")
|
|
endif()
|
|
|
|
if(${MYSQL_DIR_LOC} MATCHES "NOTFOUND")
|
|
set(DEPS_OK FALSE CACHE BOOL "If all the dependencies were found.")
|
|
message(FATAL_ERROR "Fatal Error: MySQL headers were not found.")
|
|
else()
|
|
set(MYSQL_DIR ${MYSQL_DIR_LOC} CACHE PATH "Path to MySQL headers" FORCE)
|
|
message(STATUS "Using MySQL headers found at: ${MYSQL_DIR}")
|
|
endif()
|
|
|
|
unset(MYSQL_DIR_LOC)
|
|
|
|
endmacro()
|
|
|