A maneira mais simples pode ser encontrar (por exemplo, com o google)
FindMySQL.cmake
script, que funciona para você. Este script pode ser usado com find_package
comando como de costume:list(CMAKE_MODULE_PATH APPEND <directory-where-FindMySQL.cmake-exists>)
find_package(MySQL REQUIRED)
include_directories(${MYSQL_INCLUDE_DIR})
target_link_libraries(cgm ${MYSQL_LIB})
(Nomes das variáveis
MYSQL_INCLUDE_DIR
e MYSQL_LIB
pode ser diferente para script concreto). Mas não é difícil vincular manualmente com a biblioteca MySQL, sabendo como computar CFLAGS e LIBS.
Durante o estágio de configuração (execução de
cmake
) podem ser executados com execute_process
, para adicionar CFLAGS e LIBS para destino específico, use target_compile_options
e target_link_libraries
correspondentemente:execute_process(COMMAND mysql_config --cflags
OUTPUT_VARIABLE MYSQL_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND mysql_config --libs
OUTPUT_VARIABLE MYSQL_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
target_compile_options(cgm PUBLIC ${MYSQL_CFLAGS})
target_link_libraries(cgm ${MYSQL_LIBS})