diff --git a/CMakeScripts/FindCorpus2.cmake b/CMakeScripts/FindCorpus2.cmake
index 1d9185207699dc13800f80a6deb37fcd09968ef5..da710906b8c363ba5f23e3fd1e96408cb5ad38b6 100644
--- a/CMakeScripts/FindCorpus2.cmake
+++ b/CMakeScripts/FindCorpus2.cmake
@@ -1,19 +1,24 @@
-FIND_PATH(Corpus2_INCLUDE_DIR token.h /usr/include/libcorpus2 /usr/local/include/libcorpus2 )
+IF (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
+#Already in cache
+   SET(Corpus2_FOUND TRUE)
+ELSE (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
+   FIND_PATH(Corpus2_INCLUDE_DIR libcorpus2/token.h /usr/include /usr/local/include)
 
-FIND_LIBRARY(Corpus2_LIBRARY NAMES corpus2 PATH /usr/lib /usr/local/lib) 
+   FIND_LIBRARY(Corpus2_LIBRARY corpus2 /usr/lib /usr/local/lib) 
 
-MARK_AS_ADVANCED(Corpus2_LIBRARY)
-MARK_AS_ADVANCED(Corpus2_INCLUDE_DIR)
+   MARK_AS_ADVANCED(Corpus2_LIBRARY)
+   MARK_AS_ADVANCED(Corpus2_INCLUDE_DIR)
 
+   IF (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
+      SET(Corpus2_FOUND TRUE)
+   ENDIF (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
 
-IF (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
-   SET(Corpus2_FOUND TRUE)
 ENDIF (Corpus2_INCLUDE_DIR AND Corpus2_LIBRARY)
 
 
 IF (Corpus2_FOUND)
    set(Corpus2_VERSION 0.0.0)
-   FIND_FILE(_Corpus2_VERSION_FILE version.h ${Corpus2_INCLUDE_DIR})
+   FIND_FILE(_Corpus2_VERSION_FILE libcorpus2/version.h ${Corpus2_INCLUDE_DIR})
    MARK_AS_ADVANCED(_Corpus2_VERSION_FILE)
    IF (_Corpus2_VERSION_FILE)
       FILE(READ ${_Corpus2_VERSION_FILE} _Corpus2_VERSION_CONENTS)
diff --git a/CMakeScripts/FindPwrUtils.cmake b/CMakeScripts/FindPwrUtils.cmake
index 62e25bb7e0789cabb5a1148fa85526e5a52757d4..858e922e5d0fb3daa4c0ba699a9674b42b9f9a38 100644
--- a/CMakeScripts/FindPwrUtils.cmake
+++ b/CMakeScripts/FindPwrUtils.cmake
@@ -1,18 +1,24 @@
-FIND_PATH(PwrUtils_INCLUDE_DIR foreach.h /usr/include/libpwrutils /usr/local/include/libpwrutils )
+IF (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
+#already in cache
+   SET(PwrUtils_FOUND TRUE)
+ELSE (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
 
-FIND_LIBRARY(PwrUtils_LIBRARY NAMES pwrutils PATH /usr/lib /usr/local/lib) 
+   FIND_PATH(PwrUtils_INCLUDE_DIR libpwrutils/foreach.h /usr/include /usr/local/include )
 
-MARK_AS_ADVANCED(PwrUtils_LIBRARY)
-MARK_AS_ADVANCED(PwrUtils_INCLUDE_DIR)
+   FIND_LIBRARY(PwrUtils_LIBRARY pwrutils /usr/lib /usr/local/lib) 
 
+   MARK_AS_ADVANCED(PwrUtils_LIBRARY)
+   MARK_AS_ADVANCED(PwrUtils_INCLUDE_DIR)
 
-IF (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
-   SET(PwrUtils_FOUND TRUE)
+   IF (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
+      SET(PwrUtils_FOUND TRUE)
+   ENDIF (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
 ENDIF (PwrUtils_INCLUDE_DIR AND PwrUtils_LIBRARY)
 
+
 IF (PwrUtils_FOUND)
    set(PwrUtils_VERSION 0.0.0)
-   FIND_FILE(_PwrUtils_VERSION_FILE version.h ${PwrUtils_INCLUDE_DIR})
+   FIND_FILE(_PwrUtils_VERSION_FILE libpwrutils/version.h ${PwrUtils_INCLUDE_DIR})
    MARK_AS_ADVANCED(_PwrUtils_VERSION_FILE)
    IF (_PwrUtils_VERSION_FILE)
       FILE(READ ${_PwrUtils_VERSION_FILE} _PwrUtils_VERSION_CONENTS)