# $Id$ # # ldap-sync - A plugin for the opensync framework # # Copyright (C) 2005 - 2007 Gergely Santa (version # Copyright (C) 2009 Juergen Leising # # This library is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 2.1 of the License, or (at your option) any later version. # # This library is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public # License along with this library; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # ################################################################### # Policy commands must appear as the very first ones, as it seems. IF (COMMAND cmake_policy) cmake_policy(SET CMP0003 NEW) cmake_policy(SET CMP0010 OLD) cmake_policy(GET CMP0010 policy_ten) MESSAGE( STATUS "CMP0010 has been set to \"${policy_ten}\"" ) ELSE (COMMAND cmake_policy) MESSAGE( STATUS " Could NOT find the command \"cmake_policy\". Ignoring.") ENDIF (COMMAND cmake_policy) ################### Name and version: ############################# PROJECT( libopensync-plugin-ldap ) SET( VERSION "0.40" ) SET( CPACK_PACKAGE_VERSION "${VERSION}" ) # SET( OPENSYNC_MIN_VERSION "${VERSION}" ) CMAKE_MINIMUM_REQUIRED(VERSION 2.6) # SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) ######################################################### # Look for 3rd Party CMake modules SET( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules" ) FIND_PACKAGE( OpenSync REQUIRED ) FIND_PACKAGE( GLIB2 REQUIRED ) FIND_PACKAGE( LibXml2 REQUIRED ) FIND_PACKAGE( LibXslt REQUIRED ) FIND_PACKAGE( LibLdap ) FIND_PACKAGE( LibMozLdap ) IF ( USE_OPENLDAP ) # The user prefers openldap. So try and usd this particular library. MESSAGE( STATUS "User has defined USE_OPENLDAP." ) IF ( LIBLDAP_FOUND ) SET ( USE_OPENLDAP 1 ) # libldap and liblber from openldap IF ( LIBLBER_FOUND ) SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ${LBER_INCLUDE_DIR} ) ELSE ( LIBLBER_FOUND ) SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ) ENDIF ( LIBLBER_FOUND ) IF ( LIBLBER_FOUND ) SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ${LBER_LIBRARY_DIRS} ) ELSE ( LIBLBER_FOUND ) SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ) ENDIF ( LIBLBER_FOUND ) IF ( LIBLBER_FOUND) SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ${LBER_LIBRARY} ) ELSE ( LIBLBER_FOUND) SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ) ENDIF ( LIBLBER_FOUND) ELSE ( LIBLDAP_FOUND ) MESSAGE ( FATAL_ERROR " libldap from openldap could NOT be found, although USE_OPENLDAP has been defined. " ) ENDIF ( LIBLDAP_FOUND ) ELSE ( USE_OPENLDAP ) IF ( USE_MOZLDAP ) # The user prefers mozldap. So try and usd this particular library. MESSAGE ( STATUS "User has defined USE_MOZLDAP." ) IF ( LIBMOZLDAP_FOUND ) SET ( USE_MOZLDAP 1 ) #libldap60 from Mozilla IF ( MOZLDAP_INCLUDE_DIR ) SET ( _LDAP_INCLUDE_DIRS ${MOZLDAP_INCLUDE_DIR} ) ELSE ( MOZLDAP_INCLUDE_DIR ) IF ( LIBMOZLDAP_INCLUDEDIR ) SET ( _LDAP_INCLUDE_DIRS ${LIBMOZLDAP_INCLUDEDIR}) ENDIF ( LIBMOZLDAP_INCLUDEDIR ) ENDIF ( MOZLDAP_INCLUDE_DIR ) IF ( LIBMOZLDAP_LIBDIR ) SET ( _LDAP_LIBRARY_DIRS ${LIBMOZLDAP_LIBDIR} ) ENDIF ( LIBMOZLDAP_LIBDIR ) IF ( LIBMOZLDAP_LIBRARIES ) SET ( _LDAP_LIBRARIES ${LIBMOZLDAP_LIBRARIES} ) ELSE ( LIBMOZLDAP_LIBRARIES ) IF ( MOZLDAP_LIBRARY ) SET ( _LDAP_LIBRARIES ${MOZLDAP_LIBRARY} ) ELSE ( MOZLDAP_LIBRARY ) MESSAGE( FATAL_ERROR " Neither LIBMOZLDAP_LIBRARIES nor MOZLDAP_LIBRARY has been defined." ) ENDIF ( MOZLDAP_LIBRARY ) ENDIF ( LIBMOZLDAP_LIBRARIES ) ELSE ( LIBMOZLDAP_FOUND ) MESSAGE (FATAL_ERROR " libmozldap from the Mozilla LDAP C SDK could NOT be found, although USE_MOZLDAP has been defined. " ) ENDIF ( LIBMOZLDAP_FOUND ) ELSE ( USE_MOZLDAP ) # The user has no particular preference with regard to the LDAP library. # By default use openldap, if available. # Fall back to mozldap only, if necessary (and possible, of course). MESSAGE ( STATUS "User has not chosen a particular LDAP library." ) IF ( LIBLDAP_FOUND ) SET ( USE_OPENLDAP 1 ) # libldap and liblber from openldap IF ( LIBLBER_FOUND ) SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ${LBER_INCLUDE_DIR} ) ELSE ( LIBLBER_FOUND ) SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ) ENDIF ( LIBLBER_FOUND ) IF ( LIBLBER_FOUND ) SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ${LBER_LIBRARY_DIRS} ) ELSE ( LIBLBER_FOUND ) SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ) ENDIF ( LIBLBER_FOUND ) IF ( LIBLBER_FOUND) SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ${LBER_LIBRARY} ) ELSE ( LIBLBER_FOUND) SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ) ENDIF ( LIBLBER_FOUND) ELSE ( LIBLDAP_FOUND ) IF ( LIBMOZLDAP_FOUND ) SET ( USE_MOZLDAP 1 ) #libldap60 from Mozilla IF ( MOZLDAP_INCLUDE_DIR ) SET ( _LDAP_INCLUDE_DIRS ${MOZLDAP_INCLUDE_DIR} ) ELSE ( MOZLDAP_INCLUDE_DIR ) IF ( LIBMOZLDAP_INCLUDEDIR ) SET ( _LDAP_INCLUDE_DIRS ${LIBMOZLDAP_INCLUDEDIR}) ENDIF ( LIBMOZLDAP_INCLUDEDIR ) ENDIF ( MOZLDAP_INCLUDE_DIR ) IF ( LIBMOZLDAP_LIBDIR ) SET ( _LDAP_LIBRARY_DIRS ${LIBMOZLDAP_LIBDIR} ) ENDIF ( LIBMOZLDAP_LIBDIR ) IF ( LIBMOZLDAP_LIBRARIES ) SET ( _LDAP_LIBRARIES ${LIBMOZLDAP_LIBRARIES} ) ELSE ( LIBMOZLDAP_LIBRARIES ) IF ( MOZLDAP_LIBRARY ) SET ( _LDAP_LIBRARIES ${MOZLDAP_LIBRARY} ) ELSE ( MOZLDAP_LIBRARY ) MESSAGE( FATAL_ERROR " Neither LIBMOZLDAP_LIBRARIES nor MOZLDAP_LIBRARY has been defined." ) ENDIF ( MOZLDAP_LIBRARY ) ENDIF ( LIBMOZLDAP_LIBRARIES ) ELSE ( LIBMOZLDAP_FOUND ) MESSAGE (FATAL_ERROR " Neither libmozldap from the Mozilla LDAP C SDK nor libldap from openldap could be found. " ) ENDIF ( LIBMOZLDAP_FOUND ) ENDIF ( LIBLDAP_FOUND ) ENDIF ( USE_MOZLDAP) ENDIF ( USE_OPENLDAP ) #################### # Determine _LDAP_INCLUDE_DIRS IF ( LIBLDAP_FOUND ) # # libldap and liblber from openldap # IF ( LIBLBER_FOUND ) # SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ${LBER_INCLUDE_DIR} ) # ELSE ( LIBLBER_FOUND ) # SET ( _LDAP_INCLUDE_DIRS ${LDAP_INCLUDE_DIR} ) # ENDIF ( LIBLBER_FOUND ) ELSE ( LIBLDAP_FOUND ) IF ( LIBMOZLDAP_FOUND ) # #libldap60 from Mozilla # IF ( MOZLDAP_INCLUDE_DIR ) # SET ( _LDAP_INCLUDE_DIRS ${MOZLDAP_INCLUDE_DIR} ) # # ELSE ( MOZLDAP_INCLUDE_DIR ) # IF ( LIBMOZLDAP_INCLUDEDIR ) # SET ( _LDAP_INCLUDE_DIRS ${LIBMOZLDAP_INCLUDEDIR}) # ENDIF ( LIBMOZLDAP_INCLUDEDIR ) # ENDIF ( MOZLDAP_INCLUDE_DIR ) ELSE ( LIBMOZLDAP_FOUND ) MESSAGE( FATAL_ERROR " Neither libldap from openldap nor libldap60 from Mozilla could be found. The ldap-sync plugin requires one of these libraries including the header files, as can be found in \"development packages\" or \"SDK's\"." ) ENDIF ( LIBMOZLDAP_FOUND ) ENDIF ( LIBLDAP_FOUND ) # Determine _LDAP_LIBRARY_DIRS IF ( LIBLDAP_FOUND ) # IF ( LIBLBER_FOUND ) # SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ${LBER_LIBRARY_DIRS} ) # ELSE ( LIBLBER_FOUND ) # SET ( _LDAP_LIBRARY_DIRS ${LDAP_LIBRARY_DIRS} ) # ENDIF ( LIBLBER_FOUND ) ELSE ( LIBLDAP_FOUND ) # IF ( LIBMOZLDAP_FOUND ) # IF ( LIBMOZLDAP_LIBDIR ) # SET ( _LDAP_LIBRARY_DIRS ${LIBMOZLDAP_LIBDIR} ) # ENDIF ( LIBMOZLDAP_LIBDIR ) # ELSE ( LIBMOZLDAP_FOUND ) # MESSAGE( FATAL_ERROR " Neither libldap from openldap nor libldap60 from Mozilla could be found. The ldap-sync plugin requires one of these." ) # ENDIF ( LIBMOZLDAP_FOUND ) ENDIF ( LIBLDAP_FOUND ) # Determine _LDAP_LIBRARIES IF ( LIBLDAP_FOUND ) # IF ( LIBLBER_FOUND) # SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ${LBER_LIBRARY} ) # ELSE ( LIBLBER_FOUND) # SET ( _LDAP_LIBRARIES ${LDAP_LIBRARY} ) # ENDIF ( LIBLBER_FOUND) ELSE ( LIBLDAP_FOUND ) IF ( LIBMOZLDAP_FOUND ) # IF ( LIBMOZLDAP_LIBRARIES ) # SET ( _LDAP_LIBRARIES ${LIBMOZLDAP_LIBRARIES} ) # # ELSE ( LIBMOZLDAP_LIBRARIES ) # IF ( MOZLDAP_LIBRARY ) # SET ( _LDAP_LIBRARIES ${MOZLDAP_LIBRARY} ) # ELSE ( MOZLDAP_LIBRARY ) # MESSAGE( FATAL_ERROR " Neither LIBMOZLDAP_LIBRARIES nor MOZLDAP_LIBRARY has been defined." ) # ENDIF ( MOZLDAP_LIBRARY ) # # ENDIF ( LIBMOZLDAP_LIBRARIES ) ELSE ( LIBMOZLDAP_FOUND ) MESSAGE( FATAL_ERROR " Neither libldap from openldap nor libldap60 from Mozilla could be found. The ldap-sync plugin requires one of these." ) ENDIF ( LIBMOZLDAP_FOUND ) ENDIF ( LIBLDAP_FOUND ) ################### FIND_PACKAGE( LibSASL2 ) FIND_PACKAGE( LibGSSAPIV2 ) FIND_PACKAGE( Check ) IF ( NOT CHECK_FOUND ) MESSAGE( STATUS " Could NOT find the check library: \"check\" or \"libcheck\": http://check.sourceforge.net/ . The test suite can NOT be built, therefore.") ENDIF ( NOT CHECK_FOUND ) ############### Doxygen ############################ MESSAGE(STATUS "checking for doxygen...") FIND_PROGRAM( DOXYGEN_EXECUTABLE doxygen ) IF (DOXYGEN_EXECUTABLE) MESSAGE( STATUS " Found ${DOXYGEN_EXECUTABLE}") ELSE (DOXYGEN_EXECUTABLE) MESSAGE( STATUS " Could NOT find doxygen. This is not important.") ENDIF (DOXYGEN_EXECUTABLE) MESSAGE(STATUS "checking for dot...") FIND_PROGRAM( DOXYGEN_DOT_EXECUTABLE dot ) IF (DOXYGEN_DOT_EXECUTABLE) MESSAGE( STATUS " Found ${DOXYGEN_DOT_EXECUTABLE}") ELSE (DOXYGEN_DOT_EXECUTABLE) MESSAGE( STATUS " Could NOT find dot. So the Doxyfile needs to be changed.") ENDIF (DOXYGEN_DOT_EXECUTABLE) IF ( DOXYGEN_EXECUTABLE ) IF ( DOXYGEN_DOT_EXECUTABLE ) SET( HAVE_DOT "YES" ) ENDIF ( DOXYGEN_DOT_EXECUTABLE ) CONFIGURE_FILE( "Doxyfile.in" "${CMAKE_CURRENT_BINARY_DIR}/Doxyfile" ) ADD_CUSTOM_TARGET( doxygen ${DOXYGEN_EXECUTABLE} ) ENDIF ( DOXYGEN_EXECUTABLE ) ############# C Flags and linker flags ######################## #SET ( CMAKE_C_FLAGS_DEBUG " -ggdb3 -O0 -fno-inline -std=c99 -Wall -pedantic " CACHE STRING "Flags used by the C compiler during debug builds." FORCE ) IF (WIN32) SET( CMAKE_C_FLAGS_DEBUG " -O0 -fno-inline -ggdb3 -Wall -std=c99 -pedantic -Wundef -Wextra -Wshadow -Wpointer-arith -Wwrite-strings -Wsign-compare -Wbad-function-cast -Wcast-align -Waggregate-return -Wstrict-prototypes -Wold-style-definition -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wmissing-format-attribute -Wno-multichar -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wvolatile-register-var -Wnormalized=nfc -Wvariadic-macros -std=gnu99" CACHE STRING "Flags used by the C compiler during maintainer builds." FORCE ) SET( CMAKE_C_FLAGS_HACKING "-O2 -fmessage-length=0 -Wall -Werror -D_FORTIFY_SOURCE=2 -g" CACHE STRING "Developer C Compiler Flags" ) ELSE (WIN32) SET( CMAKE_C_FLAGS_DEBUG " -O0 -fno-inline -ggdb3 -Wall -std=c99 -pedantic -Wundef -Wextra -Wshadow -Wpointer-arith -Wwrite-strings -Wsign-compare -Wbad-function-cast -Wcast-align -Waggregate-return -Wstrict-prototypes -Wold-style-definition -Wmissing-field-initializers -Wmissing-noreturn -Wmissing-prototypes -Wmissing-declarations -Wmissing-format-attribute -Wno-multichar -Wpacked -Wredundant-decls -Wnested-externs -Winline -Winvalid-pch -Wvolatile-register-var -Wnormalized=nfc -Wvariadic-macros -fstack-protector-all -Wstack-protector -std=gnu99" CACHE STRING "Flags used by the C compiler during maintainer builds." FORCE ) # -Wpadded # -Wcast-qual ENDIF (WIN32) SET( CMAKE_EXE_LINKER_FLAGS_DEBUG "-Wl,--warn-unresolved-symbols,--warn-once" CACHE STRING "Flags used for linking binaries during debug builds." FORCE ) SET( CMAKE_SHARED_LINKER_FLAGS_DEBUG "-Wl,--warn-unresolved-symbols,--warn-once" CACHE STRING "Flags used by the shared libraries linker during debug builds." FORCE ) MARK_AS_ADVANCED(CMAKE_C_FLAGS_DEBUG CMAKE_EXE_LINKER_FLAGS_DEBUG CMAKE_SHARED_LINKER_FLAGS_DEBUG ) # Test configuration OPTION( ENABLE_UNITTESTS "Should the test suite be built? " OFF ) IF ( CHECK_FOUND ) SET( ENABLE_UNITTESTS ON ) ELSE ( CHECK_FOUND ) SET( ENABLE_UNITTESTS OFF ) ENDIF ( CHECK_FOUND ) # Setting a custom timeout for ctest is a hassle. # The only variable that seems to be considered by cmake/ctest is # DART_TESTING_TIMEOUT. And this works ONLY, if one adds "FORCE". # # DART_TESTING_TIMEOUT must be set in CTestConfig.cmake rather than here. # At least, it seems so... OPTION ( RUN_LONG_TESTS "Should the tests be run under valgrind?" OFF ) OPTION ( WITH_VALGRIND "Should the tests be run under valgrind? " OFF ) IF (RUN_LONG_TESTS OR WITH_VALGRIND) SET ( ENV{WITH_VALGRIND} ON ) SET ( ENV{WITH_VALGRIND} ON PARENT_SCOPE ) ENDIF(RUN_LONG_TESTS OR WITH_VALGRIND) # Workaround for wrong setting of CMAKE_BUILD_TYPE: First of two steps: IF (CMAKE_BUILD_TYPE) SET(CORRECT_CMAKE_BUILD_TYPE "${CMAKE_BUILD_TYPE}" CACHE STRING "The CMAKE_BUILD_TYPE definition in /usr/local/share/libopensync1/cmake/modules/OpenSyncInternal.cmake overrides even the command line settings here. This variable aims to fix this." FORCE ) ENDIF (CMAKE_BUILD_TYPE) # Set some defaults INCLUDE( Testing RESULT_VARIABLE TESTING_MODULE ) IF (NOT TESTING_MODULE) MESSAGE(STATUS " cmake/modules/Testing.cmake could NOT be found. Ignoring.") ENDIF (NOT TESTING_MODULE) INCLUDE( ShowStatus RESULT_VARIABLE SHOWSTATUS_MODULE ) IF (NOT SHOWSTATUS_MODULE) MESSAGE(STATUS " cmake/modules/ShowStatus.cmake could NOT be found. Ignoring.") ENDIF (NOT SHOWSTATUS_MODULE) INCLUDE( OpenSyncInternal RESULT_VARIABLE OPENSYNC_INTERNAL ) IF (NOT OPENSYNC_INTERNAL) MESSAGE(FATAL_ERROR " cmake/modules/OpenSyncInternal.cmake could NOT be found. Exiting.") ENDIF (NOT OPENSYNC_INTERNAL) # Now, that CMAKE_BUILD_TYPE has been corrupted by OpenSyncInternal.cmake # we reset it to the what has been configured here: IF (CORRECT_CMAKE_BUILD_TYPE) SET( CMAKE_BUILD_TYPE "${CORRECT_CMAKE_BUILD_TYPE}" ) ENDIF (CORRECT_CMAKE_BUILD_TYPE) SET( LDAP_PLUGIN_OPENSYNC_CONFIGDIR "${SHARE_INSTALL_DIR}/libopensync1/defaults" CACHE PATH "OpenSync plugin configuration directory: Where the style sheets can be found." ) SET( LDAP_PLUGIN_OPENSYNC_SCHEMASDIR "${SHARE_INSTALL_DIR}/libopensync1/schemas" CACHE PATH "OpenSync XML schemata directory." ) ADD_SUBDIRECTORY( src ) IF (ENABLE_UNITTESTS) ADD_SUBDIRECTORY( tests ) ENDIF (ENABLE_UNITTESTS) ADD_SUBDIRECTORY( misc ) #################### make uninstall ###################################### # uninstall target - cf. cmake FAQ: Can I do "make uninstall" with CMake? CONFIGURE_FILE( "${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules/cmake_uninstall.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" IMMEDIATE @ONLY) ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") ################### config.h ############################# SET( SHARE_INSTALL_DIR "${SHARE_INSTALL_DIR}" CACHE PATH "Installation directory for configuration files and schemata") CONFIGURE_FILE( "config.h.cmake" "${CMAKE_CURRENT_BINARY_DIR}/config.h" ) ################### make coverage ########################## CONFIGURE_FILE( "tests/coverage.sh.cmake" "${CMAKE_CURRENT_BINARY_DIR}/tests/coverage.sh") ADD_CUSTOM_TARGET(coverage "${CMAKE_CURRENT_BINARY_DIR}/tests/coverage.sh") ################## show_file_dirs.sh ################## CONFIGURE_FILE( "${CMAKE_CURRENT_SOURCE_DIR}/tests/show_file_dirs.sh.cmake" "${CMAKE_CURRENT_BINARY_DIR}/tests/show_file_dirs.sh" ) # INSTALL( # PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/tests/show_file_dirs.sh" # DESTINATION ${BIN_INSTALL_DIR} ) ################## show_ldap_tree.sh ################## CONFIGURE_FILE( "${CMAKE_CURRENT_SOURCE_DIR}/tests/show_ldap_tree.sh.cmake" "${CMAKE_CURRENT_BINARY_DIR}/tests/show_ldap_tree.sh" ) # INSTALL( # PROGRAMS "${CMAKE_CURRENT_BINARY_DIR}/tests/show_ldap_tree.sh" # DESTINATION ${BIN_INSTALL_DIR} ) ######## The MacroEnsureOutOfSourceBuild.cmake fails sometimes... ######### MESSAGE(STATUS "CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}" ) MESSAGE(STATUS "CMAKE_CURRENT_SOURCE_DIR = ${CMAKE_CURRENT_SOURCE_DIR}" ) MESSAGE(STATUS "CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_BINARY_DIR}" ) MESSAGE(STATUS "CMAKE_BINARY_DIR = ${CMAKE_BINARY_DIR}" ) MESSAGE(STATUS "CMAKE_CURRENT_BINARY_DIR = ${CMAKE_CURRENT_SOURCE_DIR}" ) MESSAGE(STATUS "CMAKE_BINARY_DIR = ${CMAKE_SOURCE_DIR}" ) MESSAGE(STATUS "CWD = $ENV{PWD}" ) MESSAGE(STATUS "LDAP_PLUGIN_OPENSYNC_CONFIGDIR = ${LDAP_PLUGIN_OPENSYNC_CONFIGDIR}") MESSAGE(STATUS "LDAP_PLUGIN_OPENSYNC_SCHEMASDIR = ${LDAP_PLUGIN_OPENSYNC_SCHEMASDIR}") IF ( USE_OPENLDAP ) MESSAGE (STATUS "The LDAP plugin will be linked against libldap from openldap ( http://www.openldap.org/ ).") ELSE ( USE_OPENLDAP ) IF ( USE_MOZLDAP ) MESSAGE (STATUS "The LDAP plugin will be linked against libldap60 from the Mozilla LDAP C SDK ( http://www.mozilla.org/directory/csdk.html ).") ELSE ( USE_MOZLDAP ) MESSAGE (FATAL_ERROR "Neither libldap from openldap nor libldap60 from Mozilla has been chosen. This is not possible. The LDAP plugin requires either of these libraries.") ENDIF ( USE_MOZLDAP ) ENDIF ( USE_OPENLDAP ) IF ( LIBSASL2_FOUND ) MESSAGE (STATUS "Strong, SASL based binds are enabled.") ELSE ( LIBSASL2_FOUND ) MESSAGE (STATUS "Only the \"simple\" bind method is possible. libsasl2 has NOT been found.") ENDIF ( LIBSASL2_FOUND ) ##################### debugging cmake... ################################# # "cmake ... -DCMAKE_BUILD_TYPE=Whatever" sometimes does not work. # Actually, it NEVER works here...What's going on? MESSAGE(STATUS "CMAKE_BUILD_TYPE = ${CMAKE_BUILD_TYPE}" ) IF(CMAKE_CROSSCOMPILING) MESSAGE(STATUS "We are cross-compiling.") ENDIF(CMAKE_CROSSCOMPILING) IF (WIN32) MESSAGE(STATUS "We compile for windows.") ENDIF (WIN32) IF (SHOWSTATUS_MODULE) SHOW_STATUS( ENABLE_UNITTESTS "Build the test suite:\t\t" ) SHOW_STATUS( RUN_AUTH_TESTS "Run the authentication specific tests, too:" ) ENDIF (SHOWSTATUS_MODULE) ########################################################################## ## Packaging SET(CPACK_SOURCE_IGNORE_FILES "/Testing/;tags;/obsolete/;build;build_debug;build_windows;svn_;/CVS/;/[.]svn/;[.]swp$;.*~;") OPENSYNC_PACKAGE( ${PROJECT_NAME} ${VERSION} ) # vim:tw=0:nowrap