Closed Bug 546478 Opened 10 years ago Closed 10 years ago

Remove FlatCarbon headers, in NSPR

Categories

(NSPR :: NSPR, defect)

x86
macOS
defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: xfsunoles, Assigned: jaas)

References

Details

Attachments

(1 file)

We need stop using the FlatCarbon and starts using the umbrella wrapper of the Carbon framewok. 

I did see these http://mxr.mozilla.org/mozilla-central/source/nsprpub/pr/src/linking/prlink.c#47, There could be more file than that.
Blocks: 546458
Depends on: 482277
Summary: Remove Remaining FlatCarbon header → Remove FlatCarbon headers, in NSPR
Josh, could you take care of this?  Thanks.
Assignee: wtc → joshmoz
Target Milestone: --- → 4.8.5
Attached patch fix v1.0Splinter Review
Attachment #427333 - Flags: review?
Attachment #427333 - Flags: review? → review?(wtc)
Comment on attachment 427333 [details] [diff] [review]
fix v1.0

r=wtc.  Thanks for writing the patch.

NSPR trunk is frozen for the NSPR 4.8.4 release now.  I will
check this next week, after NSPR 4.8.4 is done.
Attachment #427333 - Flags: review?(wtc) → review+
I checked in the patch on the NSPR trunk (NSPR 4.8.5).

Checking in Makefile.in;
/cvsroot/mozilla/nsprpub/pr/src/linking/Makefile.in,v  <--  Makefile.in
new revision: 1.19; previous revision: 1.18
done
Checking in prlink.c;
/cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c,v  <--  prlink.c
new revision: 3.105; previous revision: 3.104
done
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Good catch.  mozilla/nsprpub/config/system-headers is not
being used because we commented out the WRAP_SYSTEM_INCLUDES=1
assignment in mozilla/nsprpub/configure.in.  We can remove
all the WRAP_SYSTEM_INCLUDES related code now.
Comment on attachment 427333 [details] [diff] [review]
fix v1.0

Josh,

In this patch, we have:

> #if defined(XP_MACOSX) && defined(USE_MACH_DYLD)
>-#include <CodeFragments.h>
>-#include <TextUtils.h>
>-#include <Types.h>
>-#include <Aliases.h>
>-#include <CFURL.h>
>-#include <CFBundle.h>
>-#include <CFString.h>
>-#include <CFDictionary.h>
>-#include <CFData.h>
>+#include <Carbon/Carbon.h>
>+#include <CoreFoundation/CoreFoundation.h>
> #endif

I just verified that under Xcode 3.2.2, all of the FlatCarbon
headers that we used to include simply include
<CoreServices/CoreServices.h>.

So should we also just include <CoreServices/CoreServices.h> here?
That may be true for a particular SDK but we'd have to check SDKs all the way back in the supported range (10.4 for nspr?). I think there is a good enough chance that you'll need Carbon.h that you should leave it to be safe.
You need to log in before you can comment on or make changes to this bug.