Closed Bug 311143 Opened 14 years ago Closed 13 years ago

Building with sun linker rather than gnu linker on solaris causes "elf" failures.

Categories

(Core :: Canvas: 2D, defect)

Other Branch
Sun
Solaris
defect
Not set

Tracking

()

RESOLVED FIXED

People

(Reporter: ron, Assigned: timeless)

References

Details

(Keywords: fixed1.8.0.9, fixed1.8.1.1)

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6 Mnenhy/0.6.0.104
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6 Mnenhy/0.6.0.104

Build using the /usr/ccs/ld (standard Sun linker) rather than the gnu one, blows
up due to an empty module:  .../content/canvas/src/dummy.cpp which is just a
comment that "This file only exists because some platforms can't handle building
an  empty .a file or .lib or whatever)"   The above is true, as the sun gags on
it, even with this file.   Adding a single externally linked symbol to the file
gets around this, for example:

void concvsdummy() { }

added to the file will fix it.  Shouldn't have any impact elsewhere as that
symbol shouldn't be reference and hence not loaded from the archive.

Reproducible: Always

Steps to Reproduce:
Build firefox on a machine without the gnu-linker in the path.

Actual Results:  
Build fails with elf_error elf_getarsym error on libgkconcvs_s.a.


Expected Results:  
Build successfully
Status: UNCONFIRMED → NEW
Component: Build Config → Layout: Canvas
Ever confirmed: true
OS: other → Solaris
Product: Firefox → Core
QA Contact: build.config → layout.canvas
Hardware: Other → Sun
Version: unspecified → Other Branch
Confirmed the bug on Solaris 2.8 build and that the fix works.  Attached is a
diff -u patch against the 1.8 branch.
Attachment #199579 - Flags: review?(vladimir)
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

Heh, fun stuff.. r=me
Attachment #199579 - Flags: review?(vladimir) → review+
Attachment #199579 - Flags: superreview?(jst)
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

sr=jst
Attachment #199579 - Flags: superreview?(jst) → superreview+
Fix checked in on the trunk (per email request).
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
Attachment #199579 - Flags: approval1.8rc1?
Nominating for 1.8, linking change only, no functionality change what so ever.
Flags: blocking1.8rc1?
Attachment #199579 - Flags: approval1.8rc1? → approval1.8rc1+
not a blocker, but i approved the patch.
Flags: blocking1.8rc1?
*** Bug 354867 has been marked as a duplicate of this bug. ***
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

this should have been committed a year ago. i have it ready to commit on viper ...
Attachment #199579 - Flags: approval1.8.1?
Attachment #199579 - Flags: approval1.8.0.9?
Attachment #199579 - Flags: approval1.8.0.8?
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

we can take this for 1.8.1.1
Attachment #199579 - Flags: approval1.8.1? → approval1.8.1-
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

knee-jerk "keep 1.8.0.8 matching 1.8.1" minus.
Attachment #199579 - Flags: approval1.8.1.1?
Attachment #199579 - Flags: approval1.8.0.8?
Attachment #199579 - Flags: approval1.8.0.8-
Comment on attachment 199579 [details] [diff] [review]
ensure dummy cpp has at least one symbol

approved for 1.8/1.8.0 branches, a=dveditz for drivers
Attachment #199579 - Flags: approval1.8.1.1?
Attachment #199579 - Flags: approval1.8.1.1+
Attachment #199579 - Flags: approval1.8.0.9?
Attachment #199579 - Flags: approval1.8.0.9+
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee: nobody → timeless
Status: REOPENED → NEW
Status: NEW → RESOLVED
Closed: 14 years ago13 years ago
Resolution: --- → FIXED
-> timeless per comment 9, but this is not a release blocker so if it hangs out until next time we're not going to cry.
fixed1.8.0.9 and fixed1.8.1.1 by timeless
You need to log in before you can comment on or make changes to this bug.