Closed
Bug 678423
Opened 11 years ago
Closed 11 years ago
We need to conditionally define the 10.7 Cocoa symbols for 10.6 SDK and lower.
Categories
(Core :: Widget: Cocoa, defect)
Tracking
()
VERIFIED
FIXED
People
(Reporter: zbraniecki, Assigned: smichaud)
Details
Attachments
(1 file)
2.47 KB,
patch
|
BenWa
:
review+
|
Details | Diff | Splinter Review |
Spin off of bug 668953 (see bug 668953 comment 91) - we'll need to define 10.7 SDK cocoa symbols when using the 10.6 SDK or lower. - we need a way to tell which SDK we're using in compiled code
Comment 1•11 years ago
|
||
(In reply to Zbigniew Braniecki [:gandalf] from comment #0) > - we need a way to tell which SDK we're using in compiled code MAC_OS_X_VERSION_MAX_ALLOWED is exactly that, even though it's very confusingly named. We already use it, for example here: http://mxr.mozilla.org/mozilla-central/source/widget/src/cocoa/nsCocoaWindow.h#138 Using #if !defined(MAC_OS_X_VERSION_10_7) || MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_7 instead of #ifdef __LP64__ for the enum and interface definitions in nsChildView.h would be exactly the right thing to do here.
Assignee | ||
Comment 2•11 years ago
|
||
I now agree, Benoit. I'm about to try it out with a 10.7 SDK build on OS X 10.7. If that works (which it should), I'll post a patch and ask you to review.
Assignee | ||
Comment 3•11 years ago
|
||
> I now agree, Benoit. Oops. I now agree with both Benoit (bug 668963 comment #98) and Markus.
Assignee | ||
Comment 4•11 years ago
|
||
Assignee: nobody → smichaud
Attachment #552673 -
Flags: review?(bgirard)
Updated•11 years ago
|
Attachment #552673 -
Flags: review?(bgirard) → review+
Assignee | ||
Comment 5•11 years ago
|
||
Comment on attachment 552673 [details] [diff] [review] Fix Landed on mozilla-central: http://hg.mozilla.org/mozilla-central/rev/5c8b3f1db588
Assignee | ||
Updated•11 years ago
|
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Assignee | ||
Comment 6•11 years ago
|
||
> instead of > #ifdef __LP64__ As long as we continue to use the 10.5 SDK for 32-bit builds, we can't use the patch for bug 668953 in 32-bit builds -- the code compiles on 10.6, but won't link. That's why I used #ifdef __LP64__. Benoit suggested we might use MAC_OS_X_VERSION_MIN instead. But I'd feel obliged to double-check the docs and do test compiles, and we don't have time for that. I've been using __LP64__ all along, and know that it works. If we haven't replaced __LP64__ by the time we stop using the 10.5 SDK, we can just drop it -- it'll no longer be needed. There's been talk of dropping the 10.5 SDK even before we drop support for running on OS X 10.5. See bug 674655. But this might not work out.
Comment 7•11 years ago
|
||
(In reply to Steven Michaud from comment #6) > > instead of > > #ifdef __LP64__ > > As long as we continue to use the 10.5 SDK for 32-bit builds, we can't > use the patch for bug 668953 in 32-bit builds -- the code compiles on > 10.6, but won't link. Which part exactly? And why? Have you tested it? Sorry to be so inquiring, but I'd really like to understand this :)
Assignee | ||
Comment 8•11 years ago
|
||
It has to do with "blocks". See bug 668953 comment #67.
Comment 9•11 years ago
|
||
Oh, right. I had forgotten that the interface definition has blocks, too (and not only the chunk of code in nsChildView.mm). OK, thanks.
You need to log in
before you can comment on or make changes to this bug.
Description
•