mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-21 15:12:02 +00:00
Added contrib/openldap submodule
Added OpenLDAP find/detection cmake scripts Added integration for OpenLDAP Linux and Darwin x86_64 platforms (following OpenSSL integration approach)
This commit is contained in:
parent
766ca03d85
commit
acd8cfc5d2
3
.gitmodules
vendored
3
.gitmodules
vendored
@ -154,3 +154,6 @@
|
||||
[submodule "contrib/msgpack-c"]
|
||||
path = contrib/msgpack-c
|
||||
url = https://github.com/msgpack/msgpack-c
|
||||
[submodule "contrib/openldap"]
|
||||
path = contrib/openldap
|
||||
url = https://github.com/openldap/openldap.git
|
||||
|
@ -344,6 +344,7 @@ include (cmake/lib_name.cmake)
|
||||
|
||||
find_contrib_lib(double-conversion) # Must be before parquet
|
||||
include (cmake/find/ssl.cmake)
|
||||
include (cmake/find/ldap.cmake) # after ssl
|
||||
include (cmake/find/icu.cmake)
|
||||
include (cmake/find/boost.cmake)
|
||||
include (cmake/find/zlib.cmake)
|
||||
|
55
cmake/Modules/FindOpenLDAP.cmake
Normal file
55
cmake/Modules/FindOpenLDAP.cmake
Normal file
@ -0,0 +1,55 @@
|
||||
# Find OpenLDAP libraries.
|
||||
#
|
||||
# Can be configured with:
|
||||
# OPENLDAP_ROOT_DIR - path to the OpenLDAP installation prefix
|
||||
# OPENLDAP_USE_STATIC_LIBS - look for static version of the libraries
|
||||
# OPENLDAP_USE_REENTRANT_LIBS - look for thread-safe version of the libraries
|
||||
#
|
||||
# Sets values of:
|
||||
# OPENLDAP_FOUND - TRUE if found
|
||||
# OPENLDAP_INCLUDE_DIR - path to the include directory
|
||||
# OPENLDAP_LIBRARIES - paths to the libldap and liblber libraries
|
||||
# OPENLDAP_LDAP_LIBRARY - paths to the libldap library
|
||||
# OPENLDAP_LBER_LIBRARY - paths to the liblber library
|
||||
#
|
||||
|
||||
if(OPENLDAP_USE_STATIC_LIBS)
|
||||
set(_orig_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
if(WIN32)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".lib" ".a" ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
else()
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ".a")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(_r_suffix)
|
||||
if(OPENLDAP_USE_REENTRANT_LIBS)
|
||||
set(_r_suffix "_r")
|
||||
endif()
|
||||
|
||||
if(OPENLDAP_ROOT_DIR)
|
||||
find_path(OPENLDAP_INCLUDE_DIR NAMES "ldap.h" "lber.h" PATHS "${OPENLDAP_ROOT_DIR}" PATH_SUFFIXES "include" NO_DEFAULT_PATH)
|
||||
find_library(OPENLDAP_LDAP_LIBRARY NAMES "ldap${_r_suffix}" PATHS "${OPENLDAP_ROOT_DIR}" PATH_SUFFIXES "lib" NO_DEFAULT_PATH)
|
||||
find_library(OPENLDAP_LBER_LIBRARY NAMES "lber" PATHS "${OPENLDAP_ROOT_DIR}" PATH_SUFFIXES "lib" NO_DEFAULT_PATH)
|
||||
else()
|
||||
find_path(OPENLDAP_INCLUDE_DIR NAMES "ldap.h" "lber.h")
|
||||
find_library(OPENLDAP_LDAP_LIBRARY NAMES "ldap${_r_suffix}")
|
||||
find_library(OPENLDAP_LBER_LIBRARY NAMES "lber")
|
||||
endif()
|
||||
|
||||
unset(_r_suffix)
|
||||
|
||||
set(OPENLDAP_LIBRARIES ${OPENLDAP_LDAP_LIBRARY} ${OPENLDAP_LBER_LIBRARY})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package_handle_standard_args(
|
||||
OpenLDAP DEFAULT_MSG
|
||||
OPENLDAP_INCLUDE_DIR OPENLDAP_LDAP_LIBRARY OPENLDAP_LBER_LIBRARY
|
||||
)
|
||||
|
||||
mark_as_advanced(OPENLDAP_INCLUDE_DIR OPENLDAP_LIBRARIES OPENLDAP_LDAP_LIBRARY OPENLDAP_LBER_LIBRARY)
|
||||
|
||||
if(OPENLDAP_USE_STATIC_LIBS)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${_orig_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
unset(_orig_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
endif()
|
60
cmake/find/ldap.cmake
Normal file
60
cmake/find/ldap.cmake
Normal file
@ -0,0 +1,60 @@
|
||||
option (ENABLE_LDAP "Enable LDAP" ${ENABLE_LIBRARIES})
|
||||
|
||||
if (ENABLE_LDAP)
|
||||
option (USE_INTERNAL_LDAP_LIBRARY "Set to FALSE to use system *LDAP library instead of bundled" ${NOT_UNBUNDLED})
|
||||
|
||||
if (NOT EXISTS "${ClickHouse_SOURCE_DIR}/contrib/openldap/README")
|
||||
if (USE_INTERNAL_LDAP_LIBRARY)
|
||||
message (WARNING "Submodule contrib/openldap is missing. To fix try running:\n git submodule update --init --recursive")
|
||||
endif ()
|
||||
|
||||
set (USE_INTERNAL_LDAP_LIBRARY 0)
|
||||
set (MISSING_INTERNAL_LDAP_LIBRARY 1)
|
||||
endif ()
|
||||
|
||||
set (OPENLDAP_USE_STATIC_LIBS ${USE_STATIC_LIBRARIES})
|
||||
set (OPENLDAP_USE_REENTRANT_LIBS 1)
|
||||
|
||||
if (NOT USE_INTERNAL_LDAP_LIBRARY)
|
||||
if (APPLE AND NOT OPENLDAP_ROOT_DIR)
|
||||
set (OPENLDAP_ROOT_DIR "/usr/local/opt/openldap")
|
||||
endif ()
|
||||
|
||||
find_package (OpenLDAP)
|
||||
endif ()
|
||||
|
||||
if (NOT OPENLDAP_FOUND AND NOT MISSING_INTERNAL_LDAP_LIBRARY)
|
||||
if (
|
||||
("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux" AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64") OR
|
||||
("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin" AND "${CMAKE_SYSTEM_PROCESSOR}" STREQUAL "x86_64")
|
||||
)
|
||||
set (_ldap_supported_platform TRUE)
|
||||
endif ()
|
||||
|
||||
if (NOT _ldap_supported_platform)
|
||||
message (WARNING "LDAP support using the bundled library is not implemented for ${CMAKE_SYSTEM_NAME} ${CMAKE_SYSTEM_PROCESSOR} platform.")
|
||||
elseif (NOT USE_SSL)
|
||||
message (WARNING "LDAP support using the bundled library is not possible if SSL is not used.")
|
||||
else ()
|
||||
set (USE_INTERNAL_LDAP_LIBRARY 1)
|
||||
set (OPENLDAP_ROOT_DIR "${ClickHouse_SOURCE_DIR}/contrib/openldap")
|
||||
set (OPENLDAP_INCLUDE_DIR "${ClickHouse_SOURCE_DIR}/contrib/openldap/include")
|
||||
# Below, 'ldap'/'ldap_r' and 'lber' will be resolved to
|
||||
# the targets defined in contrib/openldap-cmake/CMakeLists.txt
|
||||
if (OPENLDAP_USE_REENTRANT_LIBS)
|
||||
set (OPENLDAP_LDAP_LIBRARY "ldap_r")
|
||||
else ()
|
||||
set (OPENLDAP_LDAP_LIBRARY "ldap")
|
||||
endif()
|
||||
set (OPENLDAP_LBER_LIBRARY "lber")
|
||||
set (OPENLDAP_LIBRARIES ${OPENLDAP_LDAP_LIBRARY} ${OPENLDAP_LBER_LIBRARY})
|
||||
set (OPENLDAP_FOUND 1)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (OPENLDAP_FOUND)
|
||||
set (USE_LDAP 1)
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
message (STATUS "Using ldap=${USE_LDAP}: ${OPENLDAP_INCLUDE_DIR} : ${OPENLDAP_LIBRARIES}")
|
4
contrib/CMakeLists.txt
vendored
4
contrib/CMakeLists.txt
vendored
@ -107,6 +107,10 @@ if (USE_INTERNAL_SSL_LIBRARY)
|
||||
add_library(OpenSSL::SSL ALIAS ${OPENSSL_SSL_LIBRARY})
|
||||
endif ()
|
||||
|
||||
if (ENABLE_LDAP AND USE_INTERNAL_LDAP_LIBRARY)
|
||||
add_subdirectory (openldap-cmake)
|
||||
endif ()
|
||||
|
||||
function(mysql_support)
|
||||
set(CLIENT_PLUGIN_CACHING_SHA2_PASSWORD STATIC)
|
||||
set(CLIENT_PLUGIN_SHA256_PASSWORD STATIC)
|
||||
|
1
contrib/openldap
vendored
Submodule
1
contrib/openldap
vendored
Submodule
@ -0,0 +1 @@
|
||||
Subproject commit 34b9ba94b30319ed6389a4e001d057f7983fe363
|
186
contrib/openldap-cmake/CMakeLists.txt
Normal file
186
contrib/openldap-cmake/CMakeLists.txt
Normal file
@ -0,0 +1,186 @@
|
||||
set(OPENLDAP_SOURCE_DIR ${ClickHouse_SOURCE_DIR}/contrib/openldap)
|
||||
|
||||
# How these lists were generated?
|
||||
# I compiled the original OpenLDAP with it's original build system and copied the list of source files from build commands.
|
||||
|
||||
set(_libs_type SHARED)
|
||||
if(OPENLDAP_USE_STATIC_LIBS)
|
||||
set(_libs_type STATIC)
|
||||
endif()
|
||||
|
||||
set(OPENLDAP_VERSION_STRING "2.5.X")
|
||||
|
||||
macro(mkversion _lib_name)
|
||||
add_custom_command(
|
||||
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${_lib_name}-version.c
|
||||
COMMAND ${CMAKE_COMMAND} -E env bash -c "${OPENLDAP_SOURCE_DIR}/build/mkversion -v '${OPENLDAP_VERSION_STRING}' liblber.la > ${CMAKE_CURRENT_BINARY_DIR}/${_lib_name}-version.c"
|
||||
MAIN_DEPENDENCY ${OPENLDAP_SOURCE_DIR}/build/mkversion
|
||||
WORKING_DIRECTORY ${OPENLDAP_SOURCE_DIR}
|
||||
VERBATIM
|
||||
)
|
||||
endmacro()
|
||||
|
||||
set(_extra_build_dir "${CMAKE_CURRENT_SOURCE_DIR}/${CMAKE_SYSTEM_NAME}_${CMAKE_SYSTEM_PROCESSOR}")
|
||||
|
||||
set(_lber_srcs
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/assert.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/decode.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/encode.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/io.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/bprint.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/debug.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/memory.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/options.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/sockbuf.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/liblber/stdio.c
|
||||
)
|
||||
|
||||
mkversion(lber)
|
||||
|
||||
add_library(lber ${_libs_type}
|
||||
${_lber_srcs}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/lber-version.c
|
||||
)
|
||||
|
||||
target_link_libraries(lber
|
||||
PRIVATE ${OPENSSL_LIBRARIES}
|
||||
)
|
||||
|
||||
target_include_directories(lber
|
||||
PRIVATE ${_extra_build_dir}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/libraries/liblber
|
||||
PRIVATE ${OPENSSL_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(lber
|
||||
PRIVATE LBER_LIBRARY
|
||||
)
|
||||
|
||||
set(_ldap_srcs
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/bind.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/open.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/result.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/error.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/compare.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/search.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/controls.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/messages.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/references.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/extended.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/cyrus.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/modify.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/add.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/modrdn.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/delete.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/abandon.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/sasl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/sbind.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/unbind.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/cancel.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/filter.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/free.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/sort.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/passwd.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/whoami.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/vc.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/getdn.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/getentry.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/getattr.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/getvalues.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/addentry.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/request.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/os-ip.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/url.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/pagectrl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/sortctrl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/vlvctrl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/init.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/options.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/print.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/string.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/util-int.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/schema.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/charray.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/os-local.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/dnssrv.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/utf-8.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/utf-8-conv.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/tls2.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/tls_o.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/tls_g.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/turn.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/ppolicy.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/dds.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/txn.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/ldap_sync.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/stctrl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/assertion.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/deref.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/ldifutil.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/ldif.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/fetch.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/lbase64.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/msctrl.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap/psearchctrl.c
|
||||
)
|
||||
|
||||
mkversion(ldap)
|
||||
|
||||
add_library(ldap ${_libs_type}
|
||||
${_ldap_srcs}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ldap-version.c
|
||||
)
|
||||
|
||||
target_link_libraries(ldap
|
||||
PRIVATE ${OPENSSL_LIBRARIES}
|
||||
)
|
||||
|
||||
target_include_directories(ldap
|
||||
PRIVATE ${_extra_build_dir}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/libraries/libldap
|
||||
PRIVATE ${OPENSSL_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(ldap
|
||||
PRIVATE LDAP_LIBRARY
|
||||
)
|
||||
|
||||
set(_ldap_r_specific_srcs
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/threads.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/rdwr.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/tpool.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/rq.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_posix.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_thr.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_nt.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_pth.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_stub.c
|
||||
${OPENLDAP_SOURCE_DIR}/libraries/libldap_r/thr_debug.c
|
||||
)
|
||||
|
||||
mkversion(ldap_r)
|
||||
|
||||
add_library(ldap_r ${_libs_type}
|
||||
${_ldap_r_specific_srcs}
|
||||
${_ldap_srcs}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/ldap_r-version.c
|
||||
)
|
||||
|
||||
target_link_libraries(ldap_r
|
||||
PRIVATE ${OPENSSL_LIBRARIES}
|
||||
)
|
||||
|
||||
target_include_directories(ldap_r
|
||||
PRIVATE ${_extra_build_dir}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/include
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/libraries/libldap_r
|
||||
PRIVATE ${OPENLDAP_SOURCE_DIR}/libraries/libldap
|
||||
PRIVATE ${OPENSSL_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
target_compile_definitions(ldap_r
|
||||
PRIVATE LDAP_R_COMPILE
|
||||
PRIVATE LDAP_LIBRARY
|
||||
)
|
63
contrib/openldap-cmake/Darwin_x86_64/include/lber_types.h
Normal file
63
contrib/openldap-cmake/Darwin_x86_64/include/lber_types.h
Normal file
@ -0,0 +1,63 @@
|
||||
/* include/lber_types.h. Generated from lber_types.hin by configure. */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* LBER types
|
||||
*/
|
||||
|
||||
#ifndef _LBER_TYPES_H
|
||||
#define _LBER_TYPES_H
|
||||
|
||||
#include <ldap_cdefs.h>
|
||||
|
||||
LDAP_BEGIN_DECL
|
||||
|
||||
/* LBER boolean, enum, integers (32 bits or larger) */
|
||||
#define LBER_INT_T int
|
||||
|
||||
/* LBER tags (32 bits or larger) */
|
||||
#define LBER_TAG_T long
|
||||
|
||||
/* LBER socket descriptor */
|
||||
#define LBER_SOCKET_T int
|
||||
|
||||
/* LBER lengths (32 bits or larger) */
|
||||
#define LBER_LEN_T long
|
||||
|
||||
/* ------------------------------------------------------------ */
|
||||
|
||||
/* booleans, enumerations, and integers */
|
||||
typedef LBER_INT_T ber_int_t;
|
||||
|
||||
/* signed and unsigned versions */
|
||||
typedef signed LBER_INT_T ber_sint_t;
|
||||
typedef unsigned LBER_INT_T ber_uint_t;
|
||||
|
||||
/* tags */
|
||||
typedef unsigned LBER_TAG_T ber_tag_t;
|
||||
|
||||
/* "socket" descriptors */
|
||||
typedef LBER_SOCKET_T ber_socket_t;
|
||||
|
||||
/* lengths */
|
||||
typedef unsigned LBER_LEN_T ber_len_t;
|
||||
|
||||
/* signed lengths */
|
||||
typedef signed LBER_LEN_T ber_slen_t;
|
||||
|
||||
LDAP_END_DECL
|
||||
|
||||
#endif /* _LBER_TYPES_H */
|
74
contrib/openldap-cmake/Darwin_x86_64/include/ldap_config.h
Normal file
74
contrib/openldap-cmake/Darwin_x86_64/include/ldap_config.h
Normal file
@ -0,0 +1,74 @@
|
||||
/* Generated from /Users/denis/dev/altinity/ClickHouse/contrib/openldap/include/ldap_config.hin on Sat May 9 00:43:25 +04 2020 */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This file works in conjunction with OpenLDAP configure system.
|
||||
* If you do no like the values below, adjust your configure options.
|
||||
*/
|
||||
|
||||
#ifndef _LDAP_CONFIG_H
|
||||
#define _LDAP_CONFIG_H
|
||||
|
||||
/* directory separator */
|
||||
#ifndef LDAP_DIRSEP
|
||||
#ifndef _WIN32
|
||||
#define LDAP_DIRSEP "/"
|
||||
#else
|
||||
#define LDAP_DIRSEP "\\"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* directory for temporary files */
|
||||
#if defined(_WIN32)
|
||||
# define LDAP_TMPDIR "C:\\." /* we don't have much of a choice */
|
||||
#elif defined( _P_tmpdir )
|
||||
# define LDAP_TMPDIR _P_tmpdir
|
||||
#elif defined( P_tmpdir )
|
||||
# define LDAP_TMPDIR P_tmpdir
|
||||
#elif defined( _PATH_TMPDIR )
|
||||
# define LDAP_TMPDIR _PATH_TMPDIR
|
||||
#else
|
||||
# define LDAP_TMPDIR LDAP_DIRSEP "tmp"
|
||||
#endif
|
||||
|
||||
/* directories */
|
||||
#ifndef LDAP_BINDIR
|
||||
#define LDAP_BINDIR "/tmp/ldap-prefix/bin"
|
||||
#endif
|
||||
#ifndef LDAP_SBINDIR
|
||||
#define LDAP_SBINDIR "/tmp/ldap-prefix/sbin"
|
||||
#endif
|
||||
#ifndef LDAP_DATADIR
|
||||
#define LDAP_DATADIR "/tmp/ldap-prefix/share/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_SYSCONFDIR
|
||||
#define LDAP_SYSCONFDIR "/tmp/ldap-prefix/etc/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_LIBEXECDIR
|
||||
#define LDAP_LIBEXECDIR "/tmp/ldap-prefix/libexec"
|
||||
#endif
|
||||
#ifndef LDAP_MODULEDIR
|
||||
#define LDAP_MODULEDIR "/tmp/ldap-prefix/libexec/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_RUNDIR
|
||||
#define LDAP_RUNDIR "/tmp/ldap-prefix/var"
|
||||
#endif
|
||||
#ifndef LDAP_LOCALEDIR
|
||||
#define LDAP_LOCALEDIR ""
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* _LDAP_CONFIG_H */
|
61
contrib/openldap-cmake/Darwin_x86_64/include/ldap_features.h
Normal file
61
contrib/openldap-cmake/Darwin_x86_64/include/ldap_features.h
Normal file
@ -0,0 +1,61 @@
|
||||
/* include/ldap_features.h. Generated from ldap_features.hin by configure. */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* LDAP Features
|
||||
*/
|
||||
|
||||
#ifndef _LDAP_FEATURES_H
|
||||
#define _LDAP_FEATURES_H 1
|
||||
|
||||
/* OpenLDAP API version macros */
|
||||
#define LDAP_VENDOR_VERSION 20501
|
||||
#define LDAP_VENDOR_VERSION_MAJOR 2
|
||||
#define LDAP_VENDOR_VERSION_MINOR 5
|
||||
#define LDAP_VENDOR_VERSION_PATCH X
|
||||
|
||||
/*
|
||||
** WORK IN PROGRESS!
|
||||
**
|
||||
** OpenLDAP reentrancy/thread-safeness should be dynamically
|
||||
** checked using ldap_get_option().
|
||||
**
|
||||
** The -lldap implementation is not thread-safe.
|
||||
**
|
||||
** The -lldap_r implementation is:
|
||||
** LDAP_API_FEATURE_THREAD_SAFE (basic thread safety)
|
||||
** but also be:
|
||||
** LDAP_API_FEATURE_SESSION_THREAD_SAFE
|
||||
** LDAP_API_FEATURE_OPERATION_THREAD_SAFE
|
||||
**
|
||||
** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
|
||||
** can be used to determine if -lldap_r is available at compile
|
||||
** time. You must define LDAP_THREAD_SAFE if and only if you
|
||||
** link with -lldap_r.
|
||||
**
|
||||
** If you fail to define LDAP_THREAD_SAFE when linking with
|
||||
** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
|
||||
** provided header definitions and declarations may be incorrect.
|
||||
**
|
||||
*/
|
||||
|
||||
/* is -lldap_r available or not */
|
||||
#define LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE 1
|
||||
|
||||
/* LDAP v2 Referrals */
|
||||
/* #undef LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS */
|
||||
|
||||
#endif /* LDAP_FEATURES */
|
1169
contrib/openldap-cmake/Darwin_x86_64/include/portable.h
Normal file
1169
contrib/openldap-cmake/Darwin_x86_64/include/portable.h
Normal file
File diff suppressed because it is too large
Load Diff
63
contrib/openldap-cmake/Linux_x86_64/include/lber_types.h
Normal file
63
contrib/openldap-cmake/Linux_x86_64/include/lber_types.h
Normal file
@ -0,0 +1,63 @@
|
||||
/* include/lber_types.h. Generated from lber_types.hin by configure. */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* LBER types
|
||||
*/
|
||||
|
||||
#ifndef _LBER_TYPES_H
|
||||
#define _LBER_TYPES_H
|
||||
|
||||
#include <ldap_cdefs.h>
|
||||
|
||||
LDAP_BEGIN_DECL
|
||||
|
||||
/* LBER boolean, enum, integers (32 bits or larger) */
|
||||
#define LBER_INT_T int
|
||||
|
||||
/* LBER tags (32 bits or larger) */
|
||||
#define LBER_TAG_T long
|
||||
|
||||
/* LBER socket descriptor */
|
||||
#define LBER_SOCKET_T int
|
||||
|
||||
/* LBER lengths (32 bits or larger) */
|
||||
#define LBER_LEN_T long
|
||||
|
||||
/* ------------------------------------------------------------ */
|
||||
|
||||
/* booleans, enumerations, and integers */
|
||||
typedef LBER_INT_T ber_int_t;
|
||||
|
||||
/* signed and unsigned versions */
|
||||
typedef signed LBER_INT_T ber_sint_t;
|
||||
typedef unsigned LBER_INT_T ber_uint_t;
|
||||
|
||||
/* tags */
|
||||
typedef unsigned LBER_TAG_T ber_tag_t;
|
||||
|
||||
/* "socket" descriptors */
|
||||
typedef LBER_SOCKET_T ber_socket_t;
|
||||
|
||||
/* lengths */
|
||||
typedef unsigned LBER_LEN_T ber_len_t;
|
||||
|
||||
/* signed lengths */
|
||||
typedef signed LBER_LEN_T ber_slen_t;
|
||||
|
||||
LDAP_END_DECL
|
||||
|
||||
#endif /* _LBER_TYPES_H */
|
74
contrib/openldap-cmake/Linux_x86_64/include/ldap_config.h
Normal file
74
contrib/openldap-cmake/Linux_x86_64/include/ldap_config.h
Normal file
@ -0,0 +1,74 @@
|
||||
/* Generated from /home/denis/dev/altinity/ClickHouse/contrib/openldap/include/ldap_config.hin on Sat May 9 03:29:40 +04 2020 */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* This file works in conjunction with OpenLDAP configure system.
|
||||
* If you do no like the values below, adjust your configure options.
|
||||
*/
|
||||
|
||||
#ifndef _LDAP_CONFIG_H
|
||||
#define _LDAP_CONFIG_H
|
||||
|
||||
/* directory separator */
|
||||
#ifndef LDAP_DIRSEP
|
||||
#ifndef _WIN32
|
||||
#define LDAP_DIRSEP "/"
|
||||
#else
|
||||
#define LDAP_DIRSEP "\\"
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* directory for temporary files */
|
||||
#if defined(_WIN32)
|
||||
# define LDAP_TMPDIR "C:\\." /* we don't have much of a choice */
|
||||
#elif defined( _P_tmpdir )
|
||||
# define LDAP_TMPDIR _P_tmpdir
|
||||
#elif defined( P_tmpdir )
|
||||
# define LDAP_TMPDIR P_tmpdir
|
||||
#elif defined( _PATH_TMPDIR )
|
||||
# define LDAP_TMPDIR _PATH_TMPDIR
|
||||
#else
|
||||
# define LDAP_TMPDIR LDAP_DIRSEP "tmp"
|
||||
#endif
|
||||
|
||||
/* directories */
|
||||
#ifndef LDAP_BINDIR
|
||||
#define LDAP_BINDIR "/tmp/ldap-prefix/bin"
|
||||
#endif
|
||||
#ifndef LDAP_SBINDIR
|
||||
#define LDAP_SBINDIR "/tmp/ldap-prefix/sbin"
|
||||
#endif
|
||||
#ifndef LDAP_DATADIR
|
||||
#define LDAP_DATADIR "/tmp/ldap-prefix/share/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_SYSCONFDIR
|
||||
#define LDAP_SYSCONFDIR "/tmp/ldap-prefix/etc/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_LIBEXECDIR
|
||||
#define LDAP_LIBEXECDIR "/tmp/ldap-prefix/libexec"
|
||||
#endif
|
||||
#ifndef LDAP_MODULEDIR
|
||||
#define LDAP_MODULEDIR "/tmp/ldap-prefix/libexec/openldap"
|
||||
#endif
|
||||
#ifndef LDAP_RUNDIR
|
||||
#define LDAP_RUNDIR "/tmp/ldap-prefix/var"
|
||||
#endif
|
||||
#ifndef LDAP_LOCALEDIR
|
||||
#define LDAP_LOCALEDIR ""
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* _LDAP_CONFIG_H */
|
61
contrib/openldap-cmake/Linux_x86_64/include/ldap_features.h
Normal file
61
contrib/openldap-cmake/Linux_x86_64/include/ldap_features.h
Normal file
@ -0,0 +1,61 @@
|
||||
/* include/ldap_features.h. Generated from ldap_features.hin by configure. */
|
||||
/* $OpenLDAP$ */
|
||||
/* This work is part of OpenLDAP Software <http://www.openldap.org/>.
|
||||
*
|
||||
* Copyright 1998-2020 The OpenLDAP Foundation.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted only as authorized by the OpenLDAP
|
||||
* Public License.
|
||||
*
|
||||
* A copy of this license is available in file LICENSE in the
|
||||
* top-level directory of the distribution or, alternatively, at
|
||||
* <http://www.OpenLDAP.org/license.html>.
|
||||
*/
|
||||
|
||||
/*
|
||||
* LDAP Features
|
||||
*/
|
||||
|
||||
#ifndef _LDAP_FEATURES_H
|
||||
#define _LDAP_FEATURES_H 1
|
||||
|
||||
/* OpenLDAP API version macros */
|
||||
#define LDAP_VENDOR_VERSION 20501
|
||||
#define LDAP_VENDOR_VERSION_MAJOR 2
|
||||
#define LDAP_VENDOR_VERSION_MINOR 5
|
||||
#define LDAP_VENDOR_VERSION_PATCH X
|
||||
|
||||
/*
|
||||
** WORK IN PROGRESS!
|
||||
**
|
||||
** OpenLDAP reentrancy/thread-safeness should be dynamically
|
||||
** checked using ldap_get_option().
|
||||
**
|
||||
** The -lldap implementation is not thread-safe.
|
||||
**
|
||||
** The -lldap_r implementation is:
|
||||
** LDAP_API_FEATURE_THREAD_SAFE (basic thread safety)
|
||||
** but also be:
|
||||
** LDAP_API_FEATURE_SESSION_THREAD_SAFE
|
||||
** LDAP_API_FEATURE_OPERATION_THREAD_SAFE
|
||||
**
|
||||
** The preprocessor flag LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE
|
||||
** can be used to determine if -lldap_r is available at compile
|
||||
** time. You must define LDAP_THREAD_SAFE if and only if you
|
||||
** link with -lldap_r.
|
||||
**
|
||||
** If you fail to define LDAP_THREAD_SAFE when linking with
|
||||
** -lldap_r or define LDAP_THREAD_SAFE when linking with -lldap,
|
||||
** provided header definitions and declarations may be incorrect.
|
||||
**
|
||||
*/
|
||||
|
||||
/* is -lldap_r available or not */
|
||||
#define LDAP_API_FEATURE_X_OPENLDAP_THREAD_SAFE 1
|
||||
|
||||
/* LDAP v2 Referrals */
|
||||
/* #undef LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS */
|
||||
|
||||
#endif /* LDAP_FEATURES */
|
1169
contrib/openldap-cmake/Linux_x86_64/include/portable.h
Normal file
1169
contrib/openldap-cmake/Linux_x86_64/include/portable.h
Normal file
File diff suppressed because it is too large
Load Diff
@ -548,6 +548,11 @@ if (OPENSSL_CRYPTO_LIBRARY)
|
||||
target_link_libraries (clickhouse_common_io PRIVATE ${OPENSSL_CRYPTO_LIBRARY})
|
||||
endif ()
|
||||
|
||||
if (USE_LDAP)
|
||||
dbms_target_include_directories (SYSTEM BEFORE PRIVATE ${OPENLDAP_INCLUDE_DIR})
|
||||
dbms_target_link_libraries (PRIVATE ${OPENLDAP_LIBRARIES})
|
||||
endif ()
|
||||
|
||||
dbms_target_include_directories (SYSTEM BEFORE PRIVATE ${DIVIDE_INCLUDE_DIR})
|
||||
dbms_target_include_directories (SYSTEM BEFORE PRIVATE ${SPARSEHASH_INCLUDE_DIR})
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user