aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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)