@@ -54,6 +54,7 @@ option(APU_HAVE_SQLITE3 "Build SQLite3 DBD driver" OFF)
5454option (APU_HAVE_PGSQL "Build PostgreSQL DBD driver" OFF )
5555option (APU_HAVE_CRYPTO "Crypto support" OFF )
5656option (APU_HAVE_ICONV "Xlate support" OFF )
57+ option (APR_HAS_LDAP "LDAP support" ON )
5758option (APR_HAVE_IPV6 "IPv6 support" ON )
5859option (INSTALL_PDB "Install .pdb files (if generated)" ON )
5960option (APR_BUILD_TESTAPR "Build the test suite" ON )
@@ -112,6 +113,11 @@ if(APU_HAVE_PGSQL)
112113 find_package (PostgreSQL REQUIRED )
113114endif ()
114115
116+ set (LDAP_LIBRARIES)
117+ if (APR_HAS_LDAP)
118+ set (LDAP_LIBRARIES wldap32)
119+ endif ()
120+
115121if (APR_POOL_DEBUG)
116122 add_compile_definitions (APR_POOL_DEBUG=1 )
117123endif ()
@@ -132,6 +138,9 @@ string(REGEX REPLACE ".*#define APR_PATCH_VERSION[ \t]+([0-9]+).*" "\\1" APR_PAT
132138configure_file (include /apr.hwc
133139 ${PROJECT_BINARY_DIR} /apr.h )
134140# "COPYONLY" just because anything else isn't implemented ;)
141+ configure_file (include /private/apu_ldap_internal.hw
142+ ${PROJECT_BINARY_DIR} /apu_ldap_internal.h
143+ COPYONLY )
135144configure_file (include /private/apu_select_dbm.hw
136145 ${PROJECT_BINARY_DIR} /apu_select_dbm.h
137146 COPYONLY )
@@ -392,6 +401,10 @@ set(APR_SOURCES
392401 xml/apr_xml_xmllite.c
393402)
394403
404+ if (APR_HAS_LDAP)
405+ set (APR_SOURCES ${APR_SOURCES} ldap/apr_ldap_stub.c ldap/apr_ldap_url.c)
406+ endif ()
407+
395408# Sources and libraries for APR builtin drivers. Used when APR_MODULAR_DSO=OFF.
396409set (APR_EXTRA_SOURCES)
397410set (APR_EXTRA_LIBRARIES)
@@ -512,6 +525,14 @@ if(APU_HAVE_CRYPTO)
512525 "OpenSSL::Crypto" )
513526endif ()
514527
528+ IF (APR_HAS_LDAP)
529+ ADD_APR_MODULE (
530+ apr_ldap-2 "apr_ldap"
531+ "ldap/apr_ldap.c"
532+ ${LDAP_LIBRARIES}
533+ )
534+ ENDIF ()
535+
515536if (APU_HAVE_ODBC)
516537 list (APPEND dbd_drivers odbc)
517538
@@ -770,6 +791,7 @@ message(STATUS " IPv6 ............................ : ${APR_HAVE_IPV6}")
770791message (STATUS " DBD ODBC driver ................. : ${APU_HAVE_ODBC} " )
771792message (STATUS " DBD SQLite3 driver .............. : ${APU_HAVE_SQLITE3} " )
772793message (STATUS " DBD PostgreSQL .................. : ${APU_HAVE_PGSQL} " )
794+ message (STATUS " LDAP driver ..................... : ${APR_HAS_LDAP} " )
773795message (STATUS " XML backend ..................... : ${APR_XML_BACKEND} " )
774796message (STATUS " Have Crypto ..................... : ${APU_HAVE_CRYPTO} " )
775797message (STATUS " Have Iconv ...................... : ${APU_HAVE_ICONV} " )
0 commit comments