[Cmake-commits] CMake branch, master, updated. v3.9.0-rc5-285-ge63472a

Kitware Robot kwrobot at kitware.com
Wed Jul 12 09:05:09 EDT 2017


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, master has been updated
       via  e63472abc597e87ea7e8ded6551cfe968db69095 (commit)
       via  ff9321a18a94080e9b43800627cfcec02dad286f (commit)
       via  083a5cad0e7ad238005e2236364590e0eb1fb2dd (commit)
       via  702083384143c762b6cfcf936f81cc26321a62fd (commit)
       via  e0fb3f314f0dcd2aa0ad2fd97fe3637f18747439 (commit)
       via  5cf9c3d0cc654ba1a84f8bd65edbd09945c909a4 (commit)
       via  80b905f8826cc8c281bdc9bfd600e22dcc759dbc (commit)
       via  1ae1b880a8e3297daf7f2c02ff2cb07e51bbe4a1 (commit)
       via  cca8454ee5006e622c551630011f63f87a5c9748 (commit)
       via  3250b9a122a19a840f63868a244832c24528d54a (commit)
      from  fadcfd4b89aa36cfd9842ef2798ca7dffabb0ade (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e63472abc597e87ea7e8ded6551cfe968db69095
commit e63472abc597e87ea7e8ded6551cfe968db69095
Merge: ff9321a e0fb3f3
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Jul 12 13:00:38 2017 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Jul 12 09:00:43 2017 -0400

    Merge topic 'android-fix-c++_shared'
    
    e0fb3f31 Android: Link to android_support with c++_shared
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1048


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=ff9321a18a94080e9b43800627cfcec02dad286f
commit ff9321a18a94080e9b43800627cfcec02dad286f
Merge: 083a5ca 5cf9c3d
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Jul 12 12:59:16 2017 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Jul 12 08:59:26 2017 -0400

    Merge topic 'vs-2017-sln-guid'
    
    5cf9c3d0 VS: Add SolutionGuid to generated .sln files
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1042


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=083a5cad0e7ad238005e2236364590e0eb1fb2dd
commit 083a5cad0e7ad238005e2236364590e0eb1fb2dd
Merge: 7020833 80b905f
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Jul 12 12:58:15 2017 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Jul 12 08:59:07 2017 -0400

    Merge topic 'find_package-root-prefix-path-suffixes'
    
    80b905f8 find_*: Honor PATH_SUFFIXES in PackageName_ROOT paths
    1ae1b880 cmFindCommon: Drop unused FilterPaths method
    cca8454e cmFindCommon: Fix typo in PackageName_ROOT path label
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Acked-by: Chuck Atkins <chuck.atkins at kitware.com>
    Merge-request: !1044


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=702083384143c762b6cfcf936f81cc26321a62fd
commit 702083384143c762b6cfcf936f81cc26321a62fd
Merge: fadcfd4 3250b9a
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Jul 12 12:57:59 2017 +0000
Commit:     Kitware Robot <kwrobot at kitware.com>
CommitDate: Wed Jul 12 08:58:36 2017 -0400

    Merge topic 'bindexplib-revert-consts'
    
    3250b9a1 bindexplib: Revert support for constants symbols
    
    Acked-by: Kitware Robot <kwrobot at kitware.com>
    Merge-request: !1041


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e0fb3f314f0dcd2aa0ad2fd97fe3637f18747439
commit e0fb3f314f0dcd2aa0ad2fd97fe3637f18747439
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Wed Jul 12 08:29:08 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Wed Jul 12 08:39:42 2017 -0400

    Android: Link to android_support with c++_shared
    
    The NDK has done this in `build/core/definitions.mk` since r13
    (r12 and below do so only for c++_static).

diff --git a/Modules/Platform/Android/ndk-stl-c++_shared.cmake b/Modules/Platform/Android/ndk-stl-c++_shared.cmake
index f585adb..3389408 100644
--- a/Modules/Platform/Android/ndk-stl-c++_shared.cmake
+++ b/Modules/Platform/Android/ndk-stl-c++_shared.cmake
@@ -1,4 +1,5 @@
 include(Platform/Android/ndk-stl-c++)
 macro(__android_stl lang)
   __android_stl_cxx(${lang} libc++_shared.so)
+  __android_stl_lib(${lang} "${CMAKE_ANDROID_NDK}/sources/cxx-stl/llvm-libc++/libs/${CMAKE_ANDROID_ARCH_ABI}/libandroid_support.a" 0)
 endmacro()

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=5cf9c3d0cc654ba1a84f8bd65edbd09945c909a4
commit 5cf9c3d0cc654ba1a84f8bd65edbd09945c909a4
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Jul 10 16:37:31 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 11 10:41:28 2017 -0400

    VS: Add SolutionGuid to generated .sln files
    
    Visual Studio 2017 Update 3 adds a SolutionGuid to its `.sln` files.
    
    Fixes: #17041

diff --git a/Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst b/Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst
index dcd2a4e..a316abe 100644
--- a/Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst
+++ b/Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst
@@ -26,4 +26,6 @@ and ExtensibilityAddIns by default.  If you set the corresponding
 property, it will override the default section.  For example, setting
 VS_GLOBAL_SECTION_POST_ExtensibilityGlobals will override the default
 contents of the ExtensibilityGlobals section, while keeping
-ExtensibilityAddIns on its default.
+ExtensibilityAddIns on its default.  However, CMake will always
+add a ``SolutionGuid`` to the ``ExtensibilityGlobals`` section
+if it is not specified explicitly.
diff --git a/Source/cmGlobalVisualStudio7Generator.cxx b/Source/cmGlobalVisualStudio7Generator.cxx
index f067d8f..b155f5b 100644
--- a/Source/cmGlobalVisualStudio7Generator.cxx
+++ b/Source/cmGlobalVisualStudio7Generator.cxx
@@ -520,6 +520,7 @@ std::string cmGlobalVisualStudio7Generator::ConvertToSolutionPath(
 void cmGlobalVisualStudio7Generator::WriteSLNGlobalSections(
   std::ostream& fout, cmLocalGenerator* root)
 {
+  std::string const guid = this->GetGUID(root->GetProjectName() + ".sln");
   bool extensibilityGlobalsOverridden = false;
   bool extensibilityAddInsOverridden = false;
   const std::vector<std::string> propKeys =
@@ -538,11 +539,14 @@ void cmGlobalVisualStudio7Generator::WriteSLNGlobalSections(
       } else
         continue;
       if (!name.empty()) {
-        if (name == "ExtensibilityGlobals" && sectionType == "postSolution")
+        bool addGuid = false;
+        if (name == "ExtensibilityGlobals" && sectionType == "postSolution") {
+          addGuid = true;
           extensibilityGlobalsOverridden = true;
-        else if (name == "ExtensibilityAddIns" &&
-                 sectionType == "postSolution")
+        } else if (name == "ExtensibilityAddIns" &&
+                   sectionType == "postSolution") {
           extensibilityAddInsOverridden = true;
+        }
         fout << "\tGlobalSection(" << name << ") = " << sectionType << "\n";
         std::vector<std::string> keyValuePairs;
         cmSystemTools::ExpandListArgument(
@@ -557,15 +561,23 @@ void cmGlobalVisualStudio7Generator::WriteSLNGlobalSections(
             const std::string value =
               cmSystemTools::TrimWhitespace(itPair->substr(posEqual + 1));
             fout << "\t\t" << key << " = " << value << "\n";
+            if (key == "SolutionGuid") {
+              addGuid = false;
+            }
           }
         }
+        if (addGuid) {
+          fout << "\t\tSolutionGuid = {" << guid << "}\n";
+        }
         fout << "\tEndGlobalSection\n";
       }
     }
   }
-  if (!extensibilityGlobalsOverridden)
+  if (!extensibilityGlobalsOverridden) {
     fout << "\tGlobalSection(ExtensibilityGlobals) = postSolution\n"
+         << "\t\tSolutionGuid = {" << guid << "}\n"
          << "\tEndGlobalSection\n";
+  }
   if (!extensibilityAddInsOverridden)
     fout << "\tGlobalSection(ExtensibilityAddIns) = postSolution\n"
          << "\tEndGlobalSection\n";
diff --git a/Tests/RunCMake/VSSolution/MorePost-check.cmake b/Tests/RunCMake/VSSolution/MorePost-check.cmake
index 0f7e370..d239b28 100644
--- a/Tests/RunCMake/VSSolution/MorePost-check.cmake
+++ b/Tests/RunCMake/VSSolution/MorePost-check.cmake
@@ -1,5 +1,5 @@
 parseGlobalSections(pre post MorePost)
 testGlobalSection(post TestSec2 Key1=Value1 "Key2=Value with spaces")
 testGlobalSection(post TestSec4 Key6=Value1 "Key7=Value with spaces" Key8=ValueWithoutSpaces)
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/MorePre-check.cmake b/Tests/RunCMake/VSSolution/MorePre-check.cmake
index 45e7419..89b3c7e 100644
--- a/Tests/RunCMake/VSSolution/MorePre-check.cmake
+++ b/Tests/RunCMake/VSSolution/MorePre-check.cmake
@@ -1,5 +1,5 @@
 parseGlobalSections(pre post MorePre)
 testGlobalSection(pre TestSec1 Key1=Value1 "Key2=Value with spaces")
 testGlobalSection(pre TestSec3 Key3=Value1 "Key4=Value with spaces" Key5=ValueWithoutSpaces)
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/OnePost-check.cmake b/Tests/RunCMake/VSSolution/OnePost-check.cmake
index 6af5156..f7d3712 100644
--- a/Tests/RunCMake/VSSolution/OnePost-check.cmake
+++ b/Tests/RunCMake/VSSolution/OnePost-check.cmake
@@ -1,4 +1,4 @@
 parseGlobalSections(pre post OnePost)
 testGlobalSection(post TestSec2 Key1=Value1 "Key2=Value with spaces")
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/OnePre-check.cmake b/Tests/RunCMake/VSSolution/OnePre-check.cmake
index 70b18b2..c5db139 100644
--- a/Tests/RunCMake/VSSolution/OnePre-check.cmake
+++ b/Tests/RunCMake/VSSolution/OnePre-check.cmake
@@ -1,4 +1,4 @@
 parseGlobalSections(pre post OnePre)
 testGlobalSection(pre TestSec1 Key1=Value1 "Key2=Value with spaces")
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/Override1-check.cmake b/Tests/RunCMake/VSSolution/Override1-check.cmake
index a19e2e1..5905204 100644
--- a/Tests/RunCMake/VSSolution/Override1-check.cmake
+++ b/Tests/RunCMake/VSSolution/Override1-check.cmake
@@ -1,4 +1,4 @@
 parseGlobalSections(pre post Override1)
 testGlobalSection(post TestSec Key2=Value2 Key3=Value3)
-testGlobalSection(post ExtensibilityGlobals Key1=Value1)
+testGlobalSection(post ExtensibilityGlobals Key1=Value1 "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/Override2-check.cmake b/Tests/RunCMake/VSSolution/Override2-check.cmake
index d9656e1..c981ec0 100644
--- a/Tests/RunCMake/VSSolution/Override2-check.cmake
+++ b/Tests/RunCMake/VSSolution/Override2-check.cmake
@@ -1,4 +1,4 @@
 parseGlobalSections(pre post Override2)
 testGlobalSection(pre TestSec Key2=Value2 Key3=Value3)
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns Key1=Value1)
diff --git a/Tests/RunCMake/VSSolution/Override3-check.cmake b/Tests/RunCMake/VSSolution/Override3-check.cmake
new file mode 100644
index 0000000..baee9ed
--- /dev/null
+++ b/Tests/RunCMake/VSSolution/Override3-check.cmake
@@ -0,0 +1,3 @@
+parseGlobalSections(pre post Override3)
+testGlobalSection(post ExtensibilityGlobals Key1=Value1 "SolutionGuid={custom-guid}")
+testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/Override3.cmake b/Tests/RunCMake/VSSolution/Override3.cmake
new file mode 100644
index 0000000..a59ce19
--- /dev/null
+++ b/Tests/RunCMake/VSSolution/Override3.cmake
@@ -0,0 +1,4 @@
+set_property(DIRECTORY PROPERTY VS_GLOBAL_SECTION_POST_ExtensibilityGlobals
+  Key1=Value1
+  SolutionGuid={custom-guid}
+  )
diff --git a/Tests/RunCMake/VSSolution/PrePost-check.cmake b/Tests/RunCMake/VSSolution/PrePost-check.cmake
index 322a689..957c964 100644
--- a/Tests/RunCMake/VSSolution/PrePost-check.cmake
+++ b/Tests/RunCMake/VSSolution/PrePost-check.cmake
@@ -2,5 +2,5 @@ parseGlobalSections(pre post PrePost)
 testGlobalSection(post Postsec Key1=Value2)
 testGlobalSection(pre Presec Key1=Value1 "Key2=Value with some spaces")
 testGlobalSection(post Emptysec)
-testGlobalSection(post ExtensibilityGlobals)
+testGlobalSection(post ExtensibilityGlobals "SolutionGuid={00000000-0000-0000-0000-000000000000}")
 testGlobalSection(post ExtensibilityAddIns)
diff --git a/Tests/RunCMake/VSSolution/RunCMakeTest.cmake b/Tests/RunCMake/VSSolution/RunCMakeTest.cmake
index 3a04db4..c25833d 100644
--- a/Tests/RunCMake/VSSolution/RunCMakeTest.cmake
+++ b/Tests/RunCMake/VSSolution/RunCMakeTest.cmake
@@ -8,6 +8,7 @@ run_cmake(MorePost)
 run_cmake(PrePost)
 run_cmake(Override1)
 run_cmake(Override2)
+run_cmake(Override3)
 run_cmake(StartupProject)
 run_cmake(StartupProjectMissing)
 run_cmake(AddPackageToDefault)
diff --git a/Tests/RunCMake/VSSolution/solution_parsing.cmake b/Tests/RunCMake/VSSolution/solution_parsing.cmake
index 4e5bb59..4b27550 100644
--- a/Tests/RunCMake/VSSolution/solution_parsing.cmake
+++ b/Tests/RunCMake/VSSolution/solution_parsing.cmake
@@ -44,6 +44,9 @@ macro(parseGlobalSections arg_out_pre arg_out_post testName)
       endif()
       string(STRIP "${CMAKE_MATCH_1}" key)
       string(STRIP "${CMAKE_MATCH_2}" value)
+      if(key STREQUAL "SolutionGuid" AND value MATCHES "^{[0-9A-F-]+}$")
+        set(value "{00000000-0000-0000-0000-000000000000}")
+      endif()
       list(APPEND ${out_${sectionType}}_${sectionName} "${key}=${value}")
     endif()
   endforeach()

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=80b905f8826cc8c281bdc9bfd600e22dcc759dbc
commit 80b905f8826cc8c281bdc9bfd600e22dcc759dbc
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 11 08:50:24 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 11 09:11:19 2017 -0400

    find_*: Honor PATH_SUFFIXES in PackageName_ROOT paths
    
    This was accidentally forgotten in commit v3.9.0-rc1~71^2~2 (find_*: Add
    a new PackageRoot search path group, 2017-05-03).
    
    Fixes: #17052

diff --git a/Source/cmFindBase.cxx b/Source/cmFindBase.cxx
index 581c401..e378208 100644
--- a/Source/cmFindBase.cxx
+++ b/Source/cmFindBase.cxx
@@ -216,6 +216,8 @@ void cmFindBase::FillPackageRootPath()
     paths.AddCMakePrefixPath(varName);
     paths.AddEnvPrefixPath(varName);
   }
+
+  paths.AddSuffixes(this->SearchPathSuffixes);
 }
 
 void cmFindBase::FillCMakeVariablePath()
diff --git a/Tests/RunCMake/find_package/PackageRoot-stderr.txt b/Tests/RunCMake/find_package/PackageRoot-stderr.txt
index 07b27bd..409fa89 100644
--- a/Tests/RunCMake/find_package/PackageRoot-stderr.txt
+++ b/Tests/RunCMake/find_package/PackageRoot-stderr.txt
@@ -1,7 +1,9 @@
 Foo_ROOT      :
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :FOO_TEST_FILE_FOO-NOTFOUND
+FOO_TEST_FILE_ZOT :FOO_TEST_FILE_ZOT-NOTFOUND
 FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
+FOO_TEST_PATH_ZOT :FOO_TEST_PATH_ZOT-NOTFOUND
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 
 Foo_ROOT      :
@@ -13,15 +15,19 @@ FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_FILE_FOO :BAR_TEST_FILE_FOO-NOTFOUND
 BAR_TEST_FILE_BAR :BAR_TEST_FILE_BAR-NOTFOUND
+BAR_TEST_FILE_ZOT :BAR_TEST_FILE_ZOT-NOTFOUND
 BAR_TEST_PATH_FOO :BAR_TEST_PATH_FOO-NOTFOUND
 BAR_TEST_PATH_BAR :BAR_TEST_PATH_BAR-NOTFOUND
+BAR_TEST_PATH_ZOT :BAR_TEST_PATH_ZOT-NOTFOUND
 BAR_TEST_PROG_FOO :BAR_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_PROG_BAR :BAR_TEST_PROG_BAR-NOTFOUND
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -33,15 +39,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/foo/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/foo/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/foo/cmake_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 
 Foo_ROOT      :
@@ -53,15 +63,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/foo/env_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/foo/env_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/foo/env_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -73,15 +87,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/foo/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/foo/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/foo/cmake_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :FOO_TEST_FILE_FOO-NOTFOUND
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 
 Foo_ROOT      :
@@ -93,15 +111,19 @@ FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_FILE_FOO :BAR_TEST_FILE_FOO-NOTFOUND
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :BAR_TEST_PATH_FOO-NOTFOUND
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :BAR_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :FOO_TEST_FILE_FOO-NOTFOUND
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 
 Foo_ROOT      :
@@ -113,15 +135,19 @@ FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_FILE_FOO :BAR_TEST_FILE_FOO-NOTFOUND
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/env_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :BAR_TEST_PATH_FOO-NOTFOUND
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/env_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :BAR_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/env_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :FOO_TEST_FILE_FOO-NOTFOUND
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 
 Foo_ROOT      :
@@ -133,15 +159,19 @@ FOO_TEST_PATH_FOO :FOO_TEST_PATH_FOO-NOTFOUND
 FOO_TEST_PROG_FOO :FOO_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_FILE_FOO :BAR_TEST_FILE_FOO-NOTFOUND
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :BAR_TEST_PATH_FOO-NOTFOUND
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :BAR_TEST_PROG_FOO-NOTFOUND
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -153,15 +183,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 
 Foo_ROOT      :
@@ -173,15 +207,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -193,15 +231,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -213,15 +255,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/env_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/env_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/env_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 
 Foo_ROOT      :
@@ -233,15 +279,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/env_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/env_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/env_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -253,15 +303,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/env_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/env_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/env_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -273,15 +327,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 
 Foo_ROOT      :
@@ -293,15 +351,19 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/env_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/env_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/env_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
 ENV{Foo_ROOT} :.*/PackageRoot/foo/env_root
 FOO_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
+FOO_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
+FOO_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 
 Foo_ROOT      :.*/PackageRoot/foo/cmake_root
@@ -313,7 +375,9 @@ FOO_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 FOO_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_FILE_FOO :.*/PackageRoot/foo/cmake_root/include/foo.h
 BAR_TEST_FILE_BAR :.*/PackageRoot/bar/cmake_root/include/bar.h
+BAR_TEST_FILE_ZOT :.*/PackageRoot/foo/cmake_root/include/zot/zot.h
 BAR_TEST_PATH_FOO :.*/PackageRoot/foo/cmake_root/include
 BAR_TEST_PATH_BAR :.*/PackageRoot/bar/cmake_root/include
+BAR_TEST_PATH_ZOT :.*/PackageRoot/foo/cmake_root/include/zot
 BAR_TEST_PROG_FOO :.*/PackageRoot/foo/cmake_root/bin/foo.exe
 BAR_TEST_PROG_BAR :.*/PackageRoot/bar/cmake_root/bin/bar.exe
diff --git a/Tests/RunCMake/find_package/PackageRoot.cmake b/Tests/RunCMake/find_package/PackageRoot.cmake
index d9f41f8..421c243 100644
--- a/Tests/RunCMake/find_package/PackageRoot.cmake
+++ b/Tests/RunCMake/find_package/PackageRoot.cmake
@@ -37,7 +37,9 @@ macro(RunPackageRootTest)
   message("Foo_ROOT      :${Foo_ROOT}")
   message("ENV{Foo_ROOT} :$ENV{Foo_ROOT}")
   message("FOO_TEST_FILE_FOO :${FOO_TEST_FILE_FOO}")
+  message("FOO_TEST_FILE_ZOT :${FOO_TEST_FILE_ZOT}")
   message("FOO_TEST_PATH_FOO :${FOO_TEST_PATH_FOO}")
+  message("FOO_TEST_PATH_ZOT :${FOO_TEST_PATH_ZOT}")
   message("FOO_TEST_PROG_FOO :${FOO_TEST_PROG_FOO}")
   CleanUpPackageRootTest()
   message("")
@@ -57,8 +59,10 @@ macro(RunPackageRootTest)
   message("FOO_TEST_PROG_FOO :${FOO_TEST_PROG_FOO}")
   message("BAR_TEST_FILE_FOO :${BAR_TEST_FILE_FOO}")
   message("BAR_TEST_FILE_BAR :${BAR_TEST_FILE_BAR}")
+  message("BAR_TEST_FILE_ZOT :${BAR_TEST_FILE_ZOT}")
   message("BAR_TEST_PATH_FOO :${BAR_TEST_PATH_FOO}")
   message("BAR_TEST_PATH_BAR :${BAR_TEST_PATH_BAR}")
+  message("BAR_TEST_PATH_ZOT :${BAR_TEST_PATH_ZOT}")
   message("BAR_TEST_PROG_FOO :${BAR_TEST_PROG_FOO}")
   message("BAR_TEST_PROG_BAR :${BAR_TEST_PROG_BAR}")
   CleanUpPackageRootTest()
diff --git a/Tests/RunCMake/find_package/PackageRoot/FindBar.cmake b/Tests/RunCMake/find_package/PackageRoot/FindBar.cmake
index eefa49c..72774a7 100644
--- a/Tests/RunCMake/find_package/PackageRoot/FindBar.cmake
+++ b/Tests/RunCMake/find_package/PackageRoot/FindBar.cmake
@@ -1,6 +1,8 @@
 find_file(BAR_TEST_FILE_FOO foo.h)
 find_file(BAR_TEST_FILE_BAR bar.h)
+find_file(BAR_TEST_FILE_ZOT zot.h PATH_SUFFIXES zot)
 find_path(BAR_TEST_PATH_FOO foo.h)
 find_path(BAR_TEST_PATH_BAR bar.h)
+find_path(BAR_TEST_PATH_ZOT zot.h PATH_SUFFIXES zot)
 find_program(BAR_TEST_PROG_FOO foo.exe)
 find_program(BAR_TEST_PROG_BAR bar.exe)
diff --git a/Tests/RunCMake/find_package/PackageRoot/FindFoo.cmake b/Tests/RunCMake/find_package/PackageRoot/FindFoo.cmake
index cb62390..e160a1d 100644
--- a/Tests/RunCMake/find_package/PackageRoot/FindFoo.cmake
+++ b/Tests/RunCMake/find_package/PackageRoot/FindFoo.cmake
@@ -1,5 +1,7 @@
 find_file(FOO_TEST_FILE_FOO foo.h)
+find_file(FOO_TEST_FILE_ZOT zot.h PATH_SUFFIXES zot)
 find_path(FOO_TEST_PATH_FOO foo.h)
+find_path(FOO_TEST_PATH_ZOT zot.h PATH_SUFFIXES zot)
 find_program(FOO_TEST_PROG_FOO foo.exe)
 
 if ("Bar" IN_LIST Foo_FIND_COMPONENTS)
diff --git a/Tests/RunCMake/find_package/PackageRoot/bar/cmake_root/include/zot/zot.h b/Tests/RunCMake/find_package/PackageRoot/bar/cmake_root/include/zot/zot.h
new file mode 100644
index 0000000..e69de29
diff --git a/Tests/RunCMake/find_package/PackageRoot/bar/env_root/include/zot/zot.h b/Tests/RunCMake/find_package/PackageRoot/bar/env_root/include/zot/zot.h
new file mode 100644
index 0000000..e69de29
diff --git a/Tests/RunCMake/find_package/PackageRoot/foo/cmake_root/include/zot/zot.h b/Tests/RunCMake/find_package/PackageRoot/foo/cmake_root/include/zot/zot.h
new file mode 100644
index 0000000..e69de29
diff --git a/Tests/RunCMake/find_package/PackageRoot/foo/env_root/include/zot/zot.h b/Tests/RunCMake/find_package/PackageRoot/foo/env_root/include/zot/zot.h
new file mode 100644
index 0000000..e69de29

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1ae1b880a8e3297daf7f2c02ff2cb07e51bbe4a1
commit 1ae1b880a8e3297daf7f2c02ff2cb07e51bbe4a1
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 11 08:43:48 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 11 09:11:19 2017 -0400

    cmFindCommon: Drop unused FilterPaths method
    
    The method has not been used since commit v3.2.0-rc1~400^2~1
    (Encapsulate search path manipulation functions into a seperate class,
    2014-10-15).

diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx
index 8c5686e..fd0e317 100644
--- a/Source/cmFindCommon.cxx
+++ b/Source/cmFindCommon.cxx
@@ -231,18 +231,6 @@ void cmFindCommon::RerootPaths(std::vector<std::string>& paths)
   }
 }
 
-void cmFindCommon::FilterPaths(const std::vector<std::string>& inPaths,
-                               const std::set<std::string>& ignore,
-                               std::vector<std::string>& outPaths)
-{
-  for (std::vector<std::string>::const_iterator i = inPaths.begin();
-       i != inPaths.end(); ++i) {
-    if (ignore.count(*i) == 0) {
-      outPaths.push_back(*i);
-    }
-  }
-}
-
 void cmFindCommon::GetIgnoredPaths(std::vector<std::string>& ignore)
 {
   // null-terminated list of paths.
diff --git a/Source/cmFindCommon.h b/Source/cmFindCommon.h
index 2eed47b..7954267 100644
--- a/Source/cmFindCommon.h
+++ b/Source/cmFindCommon.h
@@ -81,11 +81,6 @@ protected:
   void GetIgnoredPaths(std::vector<std::string>& ignore);
   void GetIgnoredPaths(std::set<std::string>& ignore);
 
-  /** Remove paths in the ignore set from the supplied vector.  */
-  void FilterPaths(const std::vector<std::string>& inPaths,
-                   const std::set<std::string>& ignore,
-                   std::vector<std::string>& outPaths);
-
   /** Compute final search path list (reroot + trailing slash).  */
   void ComputeFinalPaths();
 

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=cca8454ee5006e622c551630011f63f87a5c9748
commit cca8454ee5006e622c551630011f63f87a5c9748
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Tue Jul 11 08:15:21 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Tue Jul 11 09:11:19 2017 -0400

    cmFindCommon: Fix typo in PackageName_ROOT path label

diff --git a/Source/cmFindCommon.cxx b/Source/cmFindCommon.cxx
index 103e692..8c5686e 100644
--- a/Source/cmFindCommon.cxx
+++ b/Source/cmFindCommon.cxx
@@ -11,7 +11,7 @@
 
 cmFindCommon::PathGroup cmFindCommon::PathGroup::All("ALL");
 cmFindCommon::PathLabel cmFindCommon::PathLabel::PackageRoot(
-  "PacakgeName_ROOT");
+  "PackageName_ROOT");
 cmFindCommon::PathLabel cmFindCommon::PathLabel::CMake("CMAKE");
 cmFindCommon::PathLabel cmFindCommon::PathLabel::CMakeEnvironment(
   "CMAKE_ENVIRONMENT");

https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=3250b9a122a19a840f63868a244832c24528d54a
commit 3250b9a122a19a840f63868a244832c24528d54a
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Mon Jul 10 13:11:42 2017 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Mon Jul 10 14:54:07 2017 -0400

    bindexplib: Revert support for constants symbols
    
    Revert the main logic change of commit v3.9.0-rc1~192^2 (bindexplib: fix
    constants symbols export, 2017-04-26) and its test case.  Unfortunately
    some constants may be provided by multiple object files with different
    `@...` suffixes, leading to ambiguous references.  Revert support
    pending further investigation.
    
    Fixes: #17045

diff --git a/Source/bindexplib.cxx b/Source/bindexplib.cxx
index cd1fb8a..e96226a 100644
--- a/Source/bindexplib.cxx
+++ b/Source/bindexplib.cxx
@@ -242,24 +242,26 @@ public:
 
           // Check whether it is "Scalar deleting destructor" and "Vector
           // deleting destructor"
-          // if scalarPrefix and vectorPrefix are not found then print the
-          // symbol
+          // if scalarPrefix and vectorPrefix are not found then print
+          // the symbol
           const char* scalarPrefix = "??_G";
           const char* vectorPrefix = "??_E";
+          // The original code had a check for
+          //     symbol.find("real@") == std::string::npos)
+          // but this disallows member functions with the name "real".
           if (symbol.compare(0, 4, scalarPrefix) &&
               symbol.compare(0, 4, vectorPrefix)) {
             SectChar = this->SectionHeaders[pSymbolTable->SectionNumber - 1]
                          .Characteristics;
-
             // skip symbols containing a dot
             if (symbol.find('.') == std::string::npos) {
-              if (SectChar & IMAGE_SCN_MEM_EXECUTE) {
-                this->Symbols.insert(symbol);
-              } else if (SectChar & IMAGE_SCN_MEM_READ) {
-                // skip __real@ and __xmm@
-                if (symbol.find("_real") == std::string::npos &&
-                    symbol.find("_xmm") == std::string::npos) {
-                  this->DataSymbols.insert(symbol);
+              if (!pSymbolTable->Type && (SectChar & IMAGE_SCN_MEM_WRITE)) {
+                // Read only (i.e. constants) must be excluded
+                this->DataSymbols.insert(symbol);
+              } else {
+                if (pSymbolTable->Type || !(SectChar & IMAGE_SCN_MEM_READ) ||
+                    (SectChar & IMAGE_SCN_MEM_EXECUTE)) {
+                  this->Symbols.insert(symbol);
                 }
               }
             }
diff --git a/Tests/RunCMake/AutoExportDll/foo.c b/Tests/RunCMake/AutoExportDll/foo.c
index e70fbb5..4b1318b 100644
--- a/Tests/RunCMake/AutoExportDll/foo.c
+++ b/Tests/RunCMake/AutoExportDll/foo.c
@@ -13,5 +13,3 @@ int bar()
 {
   return 5;
 }
-
-const char testconst[] = "testconst";
diff --git a/Tests/RunCMake/AutoExportDll/say.cxx b/Tests/RunCMake/AutoExportDll/say.cxx
index eb9c0ff..51060e8 100644
--- a/Tests/RunCMake/AutoExportDll/say.cxx
+++ b/Tests/RunCMake/AutoExportDll/say.cxx
@@ -13,14 +13,6 @@ int WINAPI foo();
 int bar();
 int objlib();
 void justnop();
-
-// test const export
-#ifdef _WIN32
-// data symbols must be explicitly imported
-__declspec(dllimport) extern const char testconst[];
-#else
-extern const char testconst[];
-#endif
 }
 
 // test c++ functions
@@ -51,8 +43,6 @@ int main()
   bar();
   objlib();
   printf("\n");
-  printf("%s", testconst);
-  printf("\n");
 #ifdef HAS_JUSTNOP
   justnop();
 #endif

-----------------------------------------------------------------------

Summary of changes:
 Help/prop_dir/VS_GLOBAL_SECTION_POST_section.rst   |    4 +-
 Modules/Platform/Android/ndk-stl-c++_shared.cmake  |    1 +
 Source/bindexplib.cxx                              |   22 ++++---
 Source/cmFindBase.cxx                              |    2 +
 Source/cmFindCommon.cxx                            |   14 +----
 Source/cmFindCommon.h                              |    5 --
 Source/cmGlobalVisualStudio7Generator.cxx          |   20 ++++--
 Tests/RunCMake/AutoExportDll/foo.c                 |    2 -
 Tests/RunCMake/AutoExportDll/say.cxx               |   10 ---
 Tests/RunCMake/VSSolution/MorePost-check.cmake     |    2 +-
 Tests/RunCMake/VSSolution/MorePre-check.cmake      |    2 +-
 Tests/RunCMake/VSSolution/OnePost-check.cmake      |    2 +-
 Tests/RunCMake/VSSolution/OnePre-check.cmake       |    2 +-
 Tests/RunCMake/VSSolution/Override1-check.cmake    |    2 +-
 Tests/RunCMake/VSSolution/Override2-check.cmake    |    2 +-
 Tests/RunCMake/VSSolution/Override3-check.cmake    |    3 +
 Tests/RunCMake/VSSolution/Override3.cmake          |    4 ++
 Tests/RunCMake/VSSolution/PrePost-check.cmake      |    2 +-
 Tests/RunCMake/VSSolution/RunCMakeTest.cmake       |    1 +
 Tests/RunCMake/VSSolution/solution_parsing.cmake   |    3 +
 Tests/RunCMake/find_package/PackageRoot-stderr.txt |   64 ++++++++++++++++++++
 Tests/RunCMake/find_package/PackageRoot.cmake      |    4 ++
 .../find_package/PackageRoot/FindBar.cmake         |    2 +
 .../find_package/PackageRoot/FindFoo.cmake         |    2 +
 .../PackageRoot/bar/cmake_root/include/zot/zot.h   |    0
 .../PackageRoot/bar/env_root/include/zot/zot.h     |    0
 .../PackageRoot/foo/cmake_root/include/zot/zot.h   |    0
 .../PackageRoot/foo/env_root/include/zot/zot.h     |    0
 28 files changed, 125 insertions(+), 52 deletions(-)
 create mode 100644 Tests/RunCMake/VSSolution/Override3-check.cmake
 create mode 100644 Tests/RunCMake/VSSolution/Override3.cmake
 copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/find_package/PackageRoot/bar/cmake_root/include/zot/zot.h (100%)
 copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/find_package/PackageRoot/bar/env_root/include/zot/zot.h (100%)
 copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/find_package/PackageRoot/foo/cmake_root/include/zot/zot.h (100%)
 copy Modules/IntelVSImplicitPath/hello.f => Tests/RunCMake/find_package/PackageRoot/foo/env_root/include/zot/zot.h (100%)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list