Bug 89375 (X64_CONDITIONAL)
Summary: | ConditionalMacros.h causes compiler errors for MSVC x64 | ||
---|---|---|---|
Product: | WebKit | Reporter: | Alex Christensen <alex.christensen> |
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Normal | CC: | paroga, roger_fong |
Priority: | P3 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | Windows 7 |
Alex Christensen
When compiling JavaScriptCore with MSVC for a x64 target, there are many errors caused by the lack of definitions from WebKitLibraries\win\include\ConditionalMacros.h. Line 1054 of this file currently reads as follows:
#elif defined(_M_IX86) /* Visual Studio with Intel x86 target */
Replacing it with the following causes many macros to be defined (perhaps not correctly), but it compiles.
#elif defined(_M_IX86) || defined(_M_AMD64) /* Visual Studio with Intel x86 or x64 target */
Should this be changed? Is this the change that should be made? It's not in the repository, so it can't be patched.
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Patrick R. Gansterer
similar like in https://bugs.webkit.org/show_bug.cgi?id=89374#c1
Alex Christensen
This was fixed in Brent Fulgham's WinCairoRequirements git repository (https://github.com/bfulgham/WinCairoRequirements/blob/master/src/opencflite/include/ConditionalMacros.h lines 1103-1145) but I'm not sure I like this line (1106):
#define TARGET_CPU_X86 1
shouldn't we add a macro like this, which was not originally intended when OpenCFLite was written?
#define TARGET_CPU_X64 0
#define TARGET_CPU_X86_64 1