diff options
Diffstat (limited to 'gn/gn_meta_sln.py')
-rw-r--r-- | gn/gn_meta_sln.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gn/gn_meta_sln.py b/gn/gn_meta_sln.py index 2cb4ae59ae..9f30cb02d2 100644 --- a/gn/gn_meta_sln.py +++ b/gn/gn_meta_sln.py @@ -52,6 +52,7 @@ cppTypeGuid = "8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942" allProjects = {} projectPattern = (r'Project\("\{' + cppTypeGuid + r'\}"\) = "([^"]*)", "([^"]*)", "\{([^\}]*)\}"') +projectNamePattern = (r'obj/(.*)\.vcxproj') for config in configs: if config[1]: @@ -59,11 +60,14 @@ for config in configs: for slnLine in slnLines: matchObj = re.match(projectPattern, slnLine) if matchObj: - projName = matchObj.group(1) - if not allProjects.has_key(projName): - allProjects[projName] = [] - allProjects[projName].append((config[0], matchObj.group(2), - matchObj.group(3))) + projPath = matchObj.group(2) + nameObj = re.match(projectNamePattern, projPath) + if nameObj: + projName = nameObj.group(1).replace('/', '.') + if not allProjects.has_key(projName): + allProjects[projName] = [] + allProjects[projName].append((config[0], projPath, + matchObj.group(3))) # We need something to work with. Typically, this will fail if no GN folders # have IDE files |