Closed Bug 358953 Opened 18 years ago Closed 18 years ago

visibility patches for 1.8 branch

Categories

(Core :: General, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: dbaron, Assigned: dbaron)

References

Details

(Keywords: fixed1.8.0.9, fixed1.8.1.1)

Attachments

(1 file, 3 obsolete files)

These are two straggling visibility patches needed to compile the 1.8 branch on Fedora Core 6, but are not needed for the trunk.  This fix relocations that (given WRAP_SYSTEM_INCLUDES works on FC6) cause linker errors with x86_64 or prevent running under SELinux with i686.
Attached patch patches (obsolete) — Splinter Review
The first patch changes the extern declaration in nsNativeComponentLoader.cpp (which no longer exists on the trunk) to match the definition in nsComponentManager.cpp by adding NS_COM.

The second patch already landed on the trunk as part of attachment 222874 [details] [diff] [review] of bug 305949.
Attachment #244243 - Flags: review?(benjamin)
Comment on attachment 244243 [details] [diff] [review]
patches

Why nsComponentManagerLog? I don't see that being used outside of libxpcom_core.so.
We could easily go the other way, I suppose, and remove the NS_COM at the definition.
Attached patch patches (obsolete) — Splinter Review
This removes the other NS_COM rather than adding a new one.  This part can therefore also land on the trunk.

I also added a change to xpcom/reflect/xptcall/src/md/unix/Makefile.in .  I'd thought that I'd tested that bug 358931 was sufficient, but it's not.  So I'm pulling the MOZILLA_INTERNAL_API=1 across from the trunk.
Attachment #244243 - Attachment is obsolete: true
Attachment #244500 - Flags: review?(benjamin)
Attachment #244243 - Flags: review?(benjamin)
Attachment #244500 - Flags: review?(benjamin) → review+
Checked in the NS_COM removal to the trunk; the other two pieces are things that I got from the trunk, so marking FIXED.
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Comment on attachment 244500 [details] [diff] [review]
patches

This is a low risk patch that will, along with the other dependencies of bug 359275:

* allow Linux distros to take advantage of improved load and runtime performance with WRAP_SYSTEM_HEADERS, other performance optimizations
(prelinking), and security improvements (SELinux)

* make it easier for developers to build on new distributions like Fedora Core
6
Attachment #244500 - Flags: approval1.8.1.1?
Attachment #244500 - Flags: approval1.8.0.9?
The nsComponentManager change seems to have broken nye's builds except for the bloat build:
http://tinderbox.mozilla.org/showlog.cgi?log=MozillaTest/1162624800.21811.gz

nye builds with gcc 3.4.4.  The bloat build has visibility completely disabled to get tracemalloc symbols, while the other trees build with visibility half-enabled '-fvisibility-hidden' since they have the gcc bug.
My local SeaMonkey builds (gcc 4.1.0) are busted due to this change as well, with the same error as nye tinderbox. As http://lxr.mozilla.org/mozilla/search?string=nsComponentManagerLog shows, this is also used in nsRegistry.cpp (libxpcom_compat_c.so) and that's where it's failing...
REOPENing as this broke compiling SeaMonkey trunk on modern enough compilers.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Attached patch bustage fix for SeaMonkey trunk (obsolete) — Splinter Review
Reverting this change makes SeaMonkey trunk compile again. I don't know the code and don't know if this is the correct way to fix it, but at least this fixes the current bustage. I'll leave it to more competent people to fix the real issue if needed.
Attachment #244683 - Flags: superreview?(benjamin)
Attachment #244683 - Flags: review?(dbaron)
That's bug 359512, and we should solve it by removing the logging from nsRegistry.
Blocks: 359512
Comment on attachment 244683 [details] [diff] [review]
bustage fix for SeaMonkey trunk

I backed out the change, and you guys can discuss what to do with it on the trunk in bug 359512.

I'll go with my original approach for the 1.8 branch.
Attachment #244683 - Attachment is obsolete: true
Attachment #244683 - Flags: superreview?(benjamin)
Attachment #244683 - Flags: review?(dbaron)
Status: REOPENED → RESOLVED
Closed: 18 years ago18 years ago
Resolution: --- → FIXED
Attached patch patchesSplinter Review
This is a low risk patch that will, along with the other dependencies of bug
359275:

* allow Linux distros to take advantage of improved load and runtime
performance with WRAP_SYSTEM_HEADERS, other performance optimizations
(prelinking), and security improvements (SELinux)

* make it easier for developers to build on new distributions like Fedora Core
6
Attachment #244500 - Attachment is obsolete: true
Attachment #244688 - Flags: review?(benjamin)
Attachment #244688 - Flags: approval1.8.1.1?
Attachment #244688 - Flags: approval1.8.0.9?
Attachment #244500 - Flags: approval1.8.1.1?
Attachment #244500 - Flags: approval1.8.0.9?
Attachment #244688 - Flags: review?(benjamin) → review+
Comment on attachment 244688 [details] [diff] [review]
patches

approved for 1.8/1.8.0 branches, a=dveditz
Attachment #244688 - Flags: approval1.8.1.1?
Attachment #244688 - Flags: approval1.8.1.1+
Attachment #244688 - Flags: approval1.8.0.9?
Attachment #244688 - Flags: approval1.8.0.9+
Checked in to MOZILLA_1_8_BRANCH and MOZILLA_1_8_0_BRANCH.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: