From 7f07bc72c536eb1f1a2b75d1d1f57d4f0044f903 Mon Sep 17 00:00:00 2001 From: Jussi Pakkanen Date: Tue, 18 Mar 2014 00:43:04 +0200 Subject: [PATCH] Thanks, Microsoft! Thanks a fucking lot for making your uuids case sensitive in one location and case insensitive in another. And thanks especially a fucking lot for failing in this case while pretending thate everything works. Fuck you! --- backends.py | 4 ++-- coredata.py | 2 +- interpreter.py | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/backends.py b/backends.py index d64a307b4..85b1f648c 100644 --- a/backends.py +++ b/backends.py @@ -1232,7 +1232,7 @@ class Vs2010Backend(Backend): ofile.write('Microsoft Visual Studio Solution File, Format Version 11.00\n') ofile.write('# Visual Studio 2010\n') for p in projlist: - prj_line = 'Project("%s") = "%s", "%s", "{%s}"\nEndProject\n' % \ + prj_line = 'Project("{%s}") = "%s", "%s", "{%s}"\nEndProject\n' % \ (self.environment.coredata.guid, p[0], p[1], p[2]) ofile.write(prj_line) ofile.write('Global\n') @@ -1288,7 +1288,7 @@ class Vs2010Backend(Backend): pl = ET.SubElement(prjconf, 'Platform') pl.text = platform globalgroup = ET.SubElement(root, 'PropertyGroup', Label='Globals') - guidelem = ET.SubElement(globalgroup, 'ProjectGUID') + guidelem = ET.SubElement(globalgroup, 'ProjectGuid') guidelem.text = guid kw = ET.SubElement(globalgroup, 'Keyword') kw.text = 'Win32Proj' diff --git a/coredata.py b/coredata.py index 42a70d1c9..94c8ea106 100644 --- a/coredata.py +++ b/coredata.py @@ -23,7 +23,7 @@ version = '0.14.0-research' class CoreData(): def __init__(self, options): - self.guid = str(uuid.uuid4()) + self.guid = str(uuid.uuid4()).upper() self.target_guids = {} self.version = version self.prefix = options.prefix diff --git a/interpreter.py b/interpreter.py index 34d972115..2a27b4b87 100644 --- a/interpreter.py +++ b/interpreter.py @@ -1162,7 +1162,7 @@ class Interpreter(): l = targetclass(name, self.subdir, is_cross, sources, objs, self.environment, kwargs) self.build.targets[name] = l.held_object if name not in self.coredata.target_guids: - self.coredata.target_guids[name] = str(uuid.uuid4()) + self.coredata.target_guids[name] = str(uuid.uuid4()).upper() if self.environment.is_cross_build() and l.is_cross: txt = ' cross build ' else: