From 07acb405620ec881bd2c8c137e86a417a40bf14b Mon Sep 17 00:00:00 2001 From: Dirk Mueller Date: Mon, 25 Jun 2007 12:48:39 +0000 Subject: needed outside kdebase/workspace, so move them to kdelibs svn path=/trunk/KDE/kdelibs/; revision=680109 --- modules/FindSamba.cmake | 56 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 modules/FindSamba.cmake (limited to 'modules/FindSamba.cmake') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake new file mode 100644 index 00000000..08c0fee3 --- /dev/null +++ b/modules/FindSamba.cmake @@ -0,0 +1,56 @@ +# - Try to find the samba directory library +# Once done this will define +# +# SAMBA_FOUND - system has SAMBA +# SAMBA_INCLUDE_DIR - the SAMBA include directory +# SAMBA_LIBRARIES - The libraries needed to use SAMBA +# Set SAMBA_REQUIRE_SMBC_SET_CONTEXT to TRUE if you need a version of Samba +# which comes with smbc_set_context() + +# Copyright (c) 2006, Alexander Neundorf, +# +# Redistribution and use is allowed according to the terms of the BSD license. +# For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + # Already in cache, be silent + set(Samba_FIND_QUIETLY TRUE) +endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + +find_path(SAMBA_INCLUDE_DIR NAMES libsmbclient.h ) + +find_library(SAMBA_LIBRARIES NAMES smbclient ) + + +if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + set(SAMBA_FOUND TRUE) + # check whether libsmbclient has smbc_set_context() + include(CheckSymbolExists) + include(MacroPushRequiredVars) + macro_push_required_vars() + set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) + check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) + macro_pop_required_vars() + # fail if smbc_set_context() was required but hasn't been found + if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + set(SAMBA_FOUND FALSE) + endif (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + +else(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + set(SAMBA_FOUND FALSE) + set(SAMBA_HAVE_SMBC_SET_CONTEXT FALSE) +endif(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) + + +if(SAMBA_FOUND) + if(NOT Samba_FIND_QUIETLY) + message(STATUS "Found samba: ${SAMBA_LIBRARIES}") + endif(NOT Samba_FIND_QUIETLY) +else(SAMBA_FOUND) + if (Samba_FIND_REQUIRED) + message(FATAL_ERROR "Could not find Samba library") + endif (Samba_FIND_REQUIRED) +endif(SAMBA_FOUND) + +mark_as_advanced(SAMBA_INCLUDE_DIR SAMBA_LIBRARIES) + -- cgit v1.2.1 From e19837dece1f0ad9f336098515787c713de99d7b Mon Sep 17 00:00:00 2001 From: Allen Winter Date: Wed, 27 Feb 2008 20:48:40 +0000 Subject: fix Samba discovery and usage thanks for the patch Christopher. BUGS: 158335 svn path=/trunk/KDE/kdelibs/; revision=780025 --- modules/FindSamba.cmake | 1 + 1 file changed, 1 insertion(+) (limited to 'modules/FindSamba.cmake') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index 08c0fee3..6579d121 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -29,6 +29,7 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) include(MacroPushRequiredVars) macro_push_required_vars() set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) + set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found -- cgit v1.2.1 From eadc109fd4b385d13ef9c40ac40cdd8303c71662 Mon Sep 17 00:00:00 2001 From: Matthew Woehlke Date: Fri, 29 Feb 2008 22:42:01 +0000 Subject: FindSamba - also check for smbc_option_set, used by the smb kioslave, and not in my libsamba svn path=/trunk/KDE/kdelibs/; revision=780766 --- modules/FindSamba.cmake | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'modules/FindSamba.cmake') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index 6579d121..d6fb1259 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -31,11 +31,16 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) + check_symbol_exists(smbc_set_option "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) set(SAMBA_FOUND FALSE) endif (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) + # fail if smbc_option_set() was required but hasn't been found + if (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) + set(SAMBA_FOUND FALSE) + endif (SAMBA_REQUIRE_SMBC_OPTION_SET AND NOT SAMBA_HAVE_SMBC_OPTION_SET) else(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(SAMBA_FOUND FALSE) -- cgit v1.2.1 From 0fe9686d8611717a6f917f952ebd1229c9849f0e Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Sat, 1 Mar 2008 16:47:59 +0000 Subject: search for the real symbol svn path=/trunk/KDE/kdelibs/; revision=780921 --- modules/FindSamba.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'modules/FindSamba.cmake') diff --git a/modules/FindSamba.cmake b/modules/FindSamba.cmake index d6fb1259..16522c64 100644 --- a/modules/FindSamba.cmake +++ b/modules/FindSamba.cmake @@ -31,7 +31,7 @@ if(SAMBA_INCLUDE_DIR AND SAMBA_LIBRARIES) set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${SAMBA_LIBRARIES}) set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${SAMBA_INCLUDE_DIR}) check_symbol_exists(smbc_set_context "libsmbclient.h" SAMBA_HAVE_SMBC_SET_CONTEXT) - check_symbol_exists(smbc_set_option "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) + check_symbol_exists(smbc_option_set "libsmbclient.h" SAMBA_HAVE_SMBC_OPTION_SET) macro_pop_required_vars() # fail if smbc_set_context() was required but hasn't been found if (SAMBA_REQUIRE_SMBC_SET_CONTEXT AND NOT SAMBA_HAVE_SMBC_SET_CONTEXT) -- cgit v1.2.1