ClickHouse/contrib/cyrus-sasl-cmake/CMakeLists.txt
2021-04-24 22:47:52 +03:00

70 lines
2.1 KiB
CMake

set(CYRUS_SASL_SOURCE_DIR "${ClickHouse_SOURCE_DIR}/contrib/cyrus-sasl")
add_library(${CYRUS_SASL_LIBRARY})
target_sources(${CYRUS_SASL_LIBRARY} PRIVATE
"${CYRUS_SASL_SOURCE_DIR}/plugins/gssapi.c"
# "${CYRUS_SASL_SOURCE_DIR}/plugins/gssapiv2_init.c"
"${CYRUS_SASL_SOURCE_DIR}/common/plugin_common.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/common.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/canonusr.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/server.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/config.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/auxprop.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/saslutil.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/external.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/seterror.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/md5.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/dlopen.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/client.c"
"${CYRUS_SASL_SOURCE_DIR}/lib/checkpw.c"
)
target_include_directories(${CYRUS_SASL_LIBRARY} PUBLIC
${CMAKE_CURRENT_BINARY_DIR}
)
target_include_directories(${CYRUS_SASL_LIBRARY} PRIVATE
${CMAKE_CURRENT_SOURCE_DIR} # for config.h
"${CYRUS_SASL_SOURCE_DIR}/plugins"
${CYRUS_SASL_SOURCE_DIR}
"${CYRUS_SASL_SOURCE_DIR}/include"
"${CYRUS_SASL_SOURCE_DIR}/lib"
"${CYRUS_SASL_SOURCE_DIR}/sasldb"
"${CYRUS_SASL_SOURCE_DIR}/common"
"${CYRUS_SASL_SOURCE_DIR}/saslauthd"
"${CYRUS_SASL_SOURCE_DIR}/sample"
"${CYRUS_SASL_SOURCE_DIR}/utils"
"${CYRUS_SASL_SOURCE_DIR}/tests"
)
target_compile_definitions(${CYRUS_SASL_LIBRARY} PUBLIC
HAVE_CONFIG_H
# PLUGINDIR="/usr/local/lib/sasl2"
PLUGINDIR=""
# PIC
OBSOLETE_CRAM_ATTR=1
# SASLAUTHD_CONF_FILE_DEFAULT="/usr/local/etc/saslauthd.conf"
SASLAUTHD_CONF_FILE_DEFAULT=""
# CONFIGDIR="/usr/local/lib/sasl2:/usr/local/etc/sasl2"
CONFIGDIR=""
OBSOLETE_DIGEST_ATTR=1
LIBSASL_EXPORTS=1
)
file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/sasl")
file(COPY
"${CYRUS_SASL_SOURCE_DIR}/include/sasl.h"
DESTINATION "${CMAKE_CURRENT_BINARY_DIR}/sasl"
)
file(COPY
"${CYRUS_SASL_SOURCE_DIR}/include/prop.h"
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
)
target_link_libraries(${CYRUS_SASL_LIBRARY}
PUBLIC ${KRB5_LIBRARY}
)