Last Comment Bug 651861 - ipc/chromium compilation broken on mingw
: ipc/chromium compilation broken on mingw
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: IPC (show other bugs)
: Trunk
: x86_64 Windows 7
: -- normal (vote)
: ---
Assigned To: Jacek Caban
:
: [PTO to Dec5] Bill McCloskey (:billm)
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-04-21 07:30 PDT by Jacek Caban
Modified: 2011-04-28 03:28 PDT (History)
0 users
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
fix v1.0 (12.72 KB, patch)
2011-04-21 07:30 PDT, Jacek Caban
cjones.bugs: review+
Details | Diff | Splinter Review

Description Jacek Caban 2011-04-21 07:30:51 PDT
Created attachment 527534 [details] [diff] [review]
fix v1.0

There are a few problems with compilation on mingw. The attached patch fixes all of them (I'm not requesting review yet as I need to get one last fix committed to mingw-w64 project first). The changes are:

Makefile.in, debug_on_start.h:
Disable debug_on_start on mingw (make it depend on compiler instead of OS)

chromium-config.mk:
Make -DCOMPILER_MSVC depend on compiler instead of OS

atomicops.h:
Use MSVC version of tomicops_internals_* on mingw

atomicops_internals_x86_msvc.h:
MSC version check makes sense only on MSVC

file_path.cc, file_path.h, file_util.cc:
GCC lacks UNICODE version of ifstream constructor, but we use UNICODE paths on Windows. Workaround the problem by converting path to ASCII version.

message_loop.cc, platform_thread_win.cc:
Use MOZ_SEH_TRY/MOZ_SEH_EXCEPT instead of __try/__except to workaround GCC's lack of SEH support.

prtime.cc, time_win.cc:
Use proper macro for long long constants instead of MSC-specific syntax.

win_util.cc:
Do function pointer to pointer cast explicitly (GCC throws an error otherwise).
Comment 1 Jacek Caban 2011-04-28 03:28:55 PDT
Thanks for the review, patch pushed to m-c:

http://hg.mozilla.org/mozilla-central/rev/c447a4e42b62

Note You need to log in before you can comment on or make changes to this bug.