aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorAlexander Neundorf <neundorf@kde.org>2006-11-30 21:15:08 +0000
committerAlexander Neundorf <neundorf@kde.org>2006-11-30 21:15:08 +0000
commit22e8e0927cb0a7110f737ba5ead75ce04a29dcf8 (patch)
tree5bc8c16ece728c7f663ecb9a076b09c9efd9c464 /modules
parent82ae5d70756619522eab946b9efe88bb91ef9365 (diff)
downloadextra-cmake-modules-22e8e0927cb0a7110f737ba5ead75ce04a29dcf8.tar.gz
extra-cmake-modules-22e8e0927cb0a7110f737ba5ead75ce04a29dcf8.tar.bz2
the logic which for dealing with ippDeleteAttribute was buggy:
when invoked the second time, CUPS_FOUND became true even although ippDeleteAttribute didn't exist, since in this case only the include dir and the lib variables were checked additionally (in order to sync back to cmake cvs) don't always fail if ippDeleteAttribute doesn't exist, but make this optional (enabled in kdeprint/CMakeLists.txt by setting CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE) Alex svn path=/trunk/KDE/kdelibs/; revision=609455
Diffstat (limited to 'modules')
-rw-r--r--modules/FindCups.cmake64
1 files changed, 30 insertions, 34 deletions
diff --git a/modules/FindCups.cmake b/modules/FindCups.cmake
index a6bb9202..0fd0ae5b 100644
--- a/modules/FindCups.cmake
+++ b/modules/FindCups.cmake
@@ -4,48 +4,44 @@
# CUPS_FOUND - system has Cups
# CUPS_INCLUDE_DIR - the Cups include directory
# CUPS_LIBRARIES - Libraries needed to use Cups
-# CUPS_DEFINITIONS - Compiler switches required for using Cups
-#
+# Set CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE to TRUE if you need a version which
+# features this function (i.e. at least 1.1.19)
+
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
#
# Redistribution and use is allowed according to the terms of the BSD license.
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
+INCLUDE(CheckLibraryExists)
- # in cache already
- SET(CUPS_FOUND TRUE)
+FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h )
-else (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
+FIND_LIBRARY(CUPS_LIBRARIES NAMES cups )
- FIND_PATH(CUPS_INCLUDE_DIR cups/cups.h
- /usr/include
- /usr/local/include
- )
-
- FIND_LIBRARY(CUPS_LIBRARIES NAMES cups
- PATHS
- /usr/lib
- /usr/local/lib
- )
-
- if (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
- # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint)
- check_library_exists(cups ippDeleteAttribute "" CUPS_FOUND)
- endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
-
- if (CUPS_FOUND)
- if (NOT Cups_FIND_QUIETLY)
- message(STATUS "Found Cups: ${CUPS_LIBRARIES}")
- endif (NOT Cups_FIND_QUIETLY)
- else (CUPS_FOUND)
- set(CUPS_LIBRARIES )
- if (Cups_FIND_REQUIRED)
- message(FATAL_ERROR "Could NOT find Cups")
- endif (Cups_FIND_REQUIRED)
- endif (CUPS_FOUND)
+IF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
+ SET(CUPS_FOUND TRUE)
+
+ # ippDeleteAttribute is new in cups-1.1.19 (and used by kdeprint)
+ CHECK_LIBRARY_EXISTS(cups ippDeleteAttribute "" CUPS_HAS_IPP_DELETE_ATTRIBUTE)
+ IF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE)
+ SET(CUPS_FOUND FALSE)
+ ENDIF (CUPS_REQUIRE_IPP_DELETE_ATTRIBUTE AND NOT CUPS_HAS_IPP_DELETE_ATTRIBUTE)
+
+ELSE (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
+ SET(CUPS_FOUND FALSE)
+ENDIF (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)
+
+IF (CUPS_FOUND)
+ IF (NOT Cups_FIND_QUIETLY)
+ MESSAGE(STATUS "Found Cups: ${CUPS_LIBRARIES}")
+ ENDIF (NOT Cups_FIND_QUIETLY)
+ELSE (CUPS_FOUND)
+ SET(CUPS_LIBRARIES )
+ IF (Cups_FIND_REQUIRED)
+ MESSAGE(FATAL_ERROR "Could NOT find Cups")
+ ENDIF (Cups_FIND_REQUIRED)
+ENDIF (CUPS_FOUND)
- MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES)
+MARK_AS_ADVANCED(CUPS_INCLUDE_DIR CUPS_LIBRARIES)
-endif (CUPS_INCLUDE_DIR AND CUPS_LIBRARIES)