Browse Source

Source_Group: Allow an empty prefix with the TREE syntax.

When calling

    source_group(TREE <root> PREFIX "" FILES ...)

the files located at the root directory were not assigned
to the correct source group: they were put in a default
group (e.g. "Source Files" in Visual Studio).

Fixes: #17608
Yohann Benedic 7 years ago
parent
commit
b3baa97e80
1 changed files with 5 additions and 1 deletions
  1. 5 1
      Source/cmSourceGroupCommand.cxx

+ 5 - 1
Source/cmSourceGroupCommand.cxx

@@ -101,9 +101,13 @@ bool addFilesToItsSourceGroups(const std::string& root,
       tokenizedPath = tokenizePath(sgFilesPath);
     }
 
-    if (tokenizedPath.size() > 1) {
+    if (!tokenizedPath.empty()) {
       tokenizedPath.pop_back();
 
+      if (tokenizedPath.empty()) {
+        tokenizedPath.push_back("");
+      }
+
       sg = makefile.GetOrCreateSourceGroup(tokenizedPath);
 
       if (!sg) {