From 0658f7a5f8e80b569319ce08afce2a5ff220fe72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Mon, 15 Feb 2016 18:17:50 +0100 Subject: [PATCH] modules: don't unset MAGNUM_*APPLICATION_* vars if they stay the same. Use case: user is calling find_package(Magnum REQUIRED Sdl2Application) in a toplevel dir and in a subdir. The second call would unset the MAGNUM_APPLICATION_LIBRARIES which is not correct, because it still is just that one application. Also, now instead of unsetting the variables are set to -NOTFOUND so they produce an error when used as libraries/include directories for a target. --- modules/FindMagnum.cmake | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/FindMagnum.cmake b/modules/FindMagnum.cmake index ff160198e..0852a0fc8 100644 --- a/modules/FindMagnum.cmake +++ b/modules/FindMagnum.cmake @@ -561,17 +561,17 @@ foreach(component ${Magnum_FIND_COMPONENTS}) if(NOT DEFINED MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES AND NOT DEFINED MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS) set(MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES ${MAGNUM_${_COMPONENT}_LIBRARIES}) set(MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS ${MAGNUM_${_COMPONENT}_INCLUDE_DIRS}) - else() - unset(MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES) - unset(MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS) + elseif(NOT MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES STREQUAL MAGNUM_${_COMPONENT}_LIBRARIES AND NOT MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS STREQUAL MAGNUM_${_COMPONENT}_INCLUDE_DIRS) + set(MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES MAGNUM_WINDOWLESSAPPLICATION_LIBRARIES-NOTFOUND) + set(MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS MAGNUM_WINDOWLESSAPPLICATION_INCLUDE_DIRS-NOTFOUND) endif() elseif(${component} MATCHES ".+Application") if(NOT DEFINED MAGNUM_APPLICATION_LIBRARIES AND NOT DEFINED MAGNUM_APPLICATION_INCLUDE_DIRS) set(MAGNUM_APPLICATION_LIBRARIES ${MAGNUM_${_COMPONENT}_LIBRARIES}) set(MAGNUM_APPLICATION_INCLUDE_DIRS ${MAGNUM_${_COMPONENT}_INCLUDE_DIRS}) - else() - unset(MAGNUM_APPLICATION_LIBRARIES) - unset(MAGNUM_APPLICATION_INCLUDE_DIRS) + else(NOT MAGNUM_APPLICATION_LIBRARIES STREQUAL MAGNUM_${_COMPONENT}_LIBRARIES AND NOT MAGNUM_APPLICATION_INCLUDE_DIRS STREQUAL MAGNUM_${_COMPONENT}_INCLUDE_DIRS) + set(MAGNUM_APPLICATION_LIBRARIES MAGNUM_APPLICATION_LIBRARIES-NOTFOUND) + set(MAGNUM_APPLICATION_INCLUDE_DIRS MAGNUM_APPLICATION_INCLUDE_DIRS-NOTFOUND) endif() endif()