Closed
Bug 682873
Opened 13 years ago
Closed 6 years ago
Fix IPC compilation for iOS
Categories
(Core :: IPC, defect)
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: ted, Assigned: ted)
References
(Blocks 1 open bug)
Details
(Whiteboard: [iOS])
Attachments
(1 file, 1 obsolete file)
(deleted),
patch
|
Details | Diff | Splinter Review |
My iOS build is currently dying in ipc:
In file included from /Users/luser/build/mozilla-central/ipc/chromium/src/base/message_pump_mac.h:36,
from /Users/luser/build/mozilla-central/ipc/chromium/src/base/message_loop.cc:17:
../../dist/system_wrappers/IOKit/IOKitLib.h:3:33: error: IOKit/IOKitLib.h: No such file or directory
It looks like IOKit is not a public framework on iOS. I'm not sure what the best way to fix this is.
I'm currently building with the first 5 patches from here applied:
http://hg.mozilla.org/users/tmielczarek_mozilla.com/mq/file/9c1d4391a0a8
on top of:
http://hg.mozilla.org/projects/build-system/rev/80b591f7b135
It looks IO Kit is being used here just to receive notifications of power-state changes. I think we can get by without these for the initial port, and we may want to rework how this happens anyway.
Ted or Doug: it looks like we can just ifdef the IO Kit usage out of these files. The actual IPC transport code uses general POSIX APIs that google claims iOS supports, so that should work out of the box. Either way, I won't have time to hack on this in the near future, unassigning myself.
Assignee: jones.chris.g → nobody
Comment 2•13 years ago
|
||
if we can just use posix, that would make the world happy.
BTW, in case comment 1 was unclear, the two takeaways are
(1) Mac IPC just uses POSIX primitives already, which are supposedly available on iOS. IPC should work out of the box.
(2) The IO Kit bustage here comes from chromium using it to listen to changes in power state. It can be safely ifdef'd out for iOS without breaking anything. That should be all that's needed to fix this problem. (We'll of course want power-state monitoring for iOS, but the impl will likely look very different.)
Fixing (2) should be a matter of a few minutes for someone with an iOS build env, which I don't and won't have time to set up for a while.
Comment 4•13 years ago
|
||
power-state monitoring can come way later. need to get the port up and running. if we ifdef it out, you'll review?
For sure.
Assignee | ||
Comment 6•13 years ago
|
||
I'm partway to fixing this, but the build blows up on bug 685927 before I get through ipc/chromium.
Depends on: 685927
Assignee | ||
Comment 7•13 years ago
|
||
This is a very hack-and-slash approach. This compiles all the way through ipc, but I'm sure it'll fail to link eventually.
Assignee | ||
Updated•13 years ago
|
Assignee: nobody → ted.mielczarek
Assignee | ||
Comment 8•10 years ago
|
||
I redid this work recently to get things building again:
http://hg.mozilla.org/users/tmielczarek_mozilla.com/gecko-ios/rev/a5ba3152b4f5
This is pretty terrible, and most of it is just copying files wholesale from upstream Chromium. I'm pretty sure my piecemeal approach here breaks non-iOS builds, though, so I probably need to revisit this and be a bit more careful. The upstream Chromium code actually supports iOS, but our stuff is so forked we can't just take a new code drop.
Assignee | ||
Updated•9 years ago
|
Attachment #559706 -
Attachment is obsolete: true
I need this patch as well to allow MessageLoop to work on a run loop that we don't control (such as the main UI one)
Assignee | ||
Updated•6 years ago
|
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in
before you can comment on or make changes to this bug.
Description
•