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()
 | 
						|
 |