Warning, /frameworks/kdelibs4support/cmake/modules/FindSamba.cmake is written in an unsupported language. File is not indexed.
0001 # - Try to find the samba directory library 0002 # Once done this will define 0003 # 0004 # SAMBA_FOUND - system has SAMBA 0005 # SAMBA_INCLUDE_DIR - the SAMBA include directory 0006 # SAMBA_LIBRARIES - The libraries needed to use SAMBA 0007 # Set SAMBA_REQUIRE_SMBC_SET_CONTEXT to TRUE if you need a version of Samba 0008 # which comes with smbc_set_context() 0009 0010 # Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org> 0011 # 0012 # Redistribution and use is allowed according to the terms of the BSD license. 0013 # For details see the accompanying COPYING-CMAKE-SCRIPTS file. 0014 0015 if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) 0016 # Already in cache, be silent 0017 set(Samba_FIND_QUIETLY TRUE) 0018 endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) 0019 0020 find_package(PkgConfig) 0021 if(PKG_CONFIG_FOUND) 0022 pkg_check_modules(PC_SAMBA smbclient) 0023 endif() 0024 0025 find_path(SAMBA_INCLUDE_DIR NAMES libsmbclient.h HINTS ${PC_SAMBA_INCLUDEDIR}) 0026 0027 find_library(SAMBA_LIBRARIES NAMES smbclient HINTS ${PC_SAMBA_LIBDIR}) 0028 0029 if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) 0030 set(SAMBA_FOUND TRUE) 0031 # check whether libsmbclient has smbc_set_context() 0032 include(CheckSymbolExists) 0033 include(CMakePushCheckState) 0034 cmake_push_check_state() 0035 set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) 0036 set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) 0037 check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) 0038 check_symbol_exists(smbc_option_set "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) 0039 cmake_pop_check_state() 0040 # fail if smbc_set_context() was required but hasn't been found 0041 if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) 0042 set(SAMBA_FOUND FALSE) 0043 endif (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) 0044 # fail if smbc_option_set() was required but hasn't been found 0045 if (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) 0046 set(SAMBA_FOUND FALSE) 0047 endif (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) 0048 else(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) 0049 set(SAMBA_FOUND FALSE) 0050 set(SAMBA_HAVE_SMBC_SET_CONTEXT FALSE) 0051 endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) 0052 0053 0054 if(SAMBA_FOUND) 0055 if(NOT Samba_FIND_QUIETLY) 0056 message(STATUS "Found samba: ${SAMBA_LIBRARIES}") 0057 endif(NOT Samba_FIND_QUIETLY) 0058 else(SAMBA_FOUND) 0059 if (Samba_FIND_REQUIRED) 0060 message(FATAL_ERROR "Could not find Samba library") 0061 endif (Samba_FIND_REQUIRED) 0062 endif(SAMBA_FOUND) 0063 0064 mark_as_advanced(SAMBA_INCLUDE_DIR SAMBA_LIBRARIES) 0065