Visual Studio has an environment variable named PlatformArchitecture that evaluates to "32" for 32-bit builds and "64" for 64-bit builds. There are many places in the Windows build where we have written obj32, bin32, or lib32. Many of these can be replaced by obj$(PlatformArchitecture), obj%PlatformArchitecture%, etc. I had some trouble with the .sh shell scripts, work-around-vs-dependency-tracking-bugs.py, and copyForwardingHeaders.cmd, so those can be done in a separate patch. This is a large step towards getting a 64-bit build on Windows.
I also had some trouble with WebKitExportGenerator. To prevent this patch from being too large and complicated, I'll do the rest in another patch.
Created attachment 208171 [details] Patch
This patch has some quirks. It puts some things (a build log, some scripts) into an obj directory instead of obj32.
Comment on attachment 208171 [details] Patch This needs more work before it's done, and it would completely break the 64-bit build until it is done.
Let's do this in small steps, starting with the vxcproj, props, and filters. They work without modifying behavior on the 32-bit build. It will destroy any hopes of manually hacking together a 64-bit build until we're done, but I'm the only one who's doing that right now, anyways.
Created attachment 209138 [details] Patch
Comment on attachment 209138 [details] Patch I got carried away with my regular expressions. This needs to be done manually.
Created attachment 209139 [details] Patch
Created attachment 209203 [details] patch I forgot to undo my changes to a .make file in the previous patch. This one's good.
Comment on attachment 209203 [details] patch Yuck! Visual Studio project files are the worst. This looks fine to me.
r154333
<rdar://problem/15498740>