aboutsummaryrefslogtreecommitdiff
path: root/modules/MacroOptionalFindPackage.cmake
diff options
context:
space:
mode:
authorDario Freddi <drf@kde.org>2010-03-01 19:20:31 +0000
committerDario Freddi <drf@kde.org>2010-03-01 19:20:31 +0000
commit4b989a26ea40d46100fb7883dcec1778eb8d4533 (patch)
tree6b79ca6535baff87dcebbebcfa9df4704c3e6b5b /modules/MacroOptionalFindPackage.cmake
parent84ccffd809dc71de314f21cb747d590d246be3ed (diff)
downloadextra-cmake-modules-4b989a26ea40d46100fb7883dcec1778eb8d4533.tar.gz
extra-cmake-modules-4b989a26ea40d46100fb7883dcec1778eb8d4533.tar.bz2
This commit is a massive backport of: r1091455, r1091811, r1091516, r1091017, r1089968, r1089130 and maybe some others which I forgot.
Basically it makes KAuth's plugins dynamic, except for fake ones. Bottom line: less libraries linked to kdecore and no crashes upon installation problems. Tested on a clean build of the branch, works great. svn path=/branches/KDE/4.4/kdelibs/; revision=1097623
Diffstat (limited to 'modules/MacroOptionalFindPackage.cmake')
-rw-r--r--modules/MacroOptionalFindPackage.cmake32
1 files changed, 6 insertions, 26 deletions
diff --git a/modules/MacroOptionalFindPackage.cmake b/modules/MacroOptionalFindPackage.cmake
index d4ed48e3..f09952f3 100644
--- a/modules/MacroOptionalFindPackage.cmake
+++ b/modules/MacroOptionalFindPackage.cmake
@@ -7,42 +7,22 @@
# The standard <name>_FOUND variables can be used in the same way
# as when using the normal FIND_PACKAGE()
-# Copyright (c) 2006-2010 Alexander Neundorf, <neundorf@kde.org>
+# 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.
-# This is just a helper macro to set a bunch of variables empty.
-# We don't know whether the package uses UPPERCASENAME or CamelCaseName, so we try both:
-macro(_MOFP_SET_EMPTY_IF_DEFINED _name _var)
- if(DEFINED ${_name}_${_var})
- set(${_name}_${_var} "")
- endif(DEFINED ${_name}_${_var})
-
- string(TOUPPER ${_name} _nameUpper)
- if(DEFINED ${_nameUpper}_${_var})
- set(${_nameUpper}_${_var} "")
- endif(DEFINED ${_nameUpper}_${_var})
-endmacro(_MOFP_SET_EMPTY_IF_DEFINED _package _var)
-
macro (MACRO_OPTIONAL_FIND_PACKAGE _name )
option(WITH_${_name} "Search for ${_name} package" ON)
if (WITH_${_name})
find_package(${_name} ${ARGN})
else (WITH_${_name})
- string(TOUPPER ${_name} _nameUpper)
- set(${_name}_FOUND FALSE)
- set(${_nameUpper}_FOUND FALSE)
-
- _mofp_set_empty_if_defined(${_name} INCLUDE_DIRS)
- _mofp_set_empty_if_defined(${_name} INCLUDE_DIR)
- _mofp_set_empty_if_defined(${_name} INCLUDES)
- _mofp_set_empty_if_defined(${_name} LIBRARY)
- _mofp_set_empty_if_defined(${_name} LIBRARIES)
- _mofp_set_empty_if_defined(${_name} LIBS)
- _mofp_set_empty_if_defined(${_name} FLAGS)
- _mofp_set_empty_if_defined(${_name} DEFINITIONS)
+ set(${_name}_FOUND)
+ set(${_name}_INCLUDE_DIR)
+ set(${_name}_INCLUDES)
+ set(${_name}_LIBRARY)
+ set(${_name}_LIBRARIES)
endif (WITH_${_name})
endmacro (MACRO_OPTIONAL_FIND_PACKAGE)