Last Comment Bug 391937 - Linux x86_64 startup-notification relocation error gcc-4.2.x
: Linux x86_64 startup-notification relocation error gcc-4.2.x
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Build Config (show other bugs)
: unspecified
: x86 Linux
: -- normal (vote)
: ---
Assigned To: Walter Meinl
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2007-08-12 06:42 PDT by Walter Meinl
Modified: 2007-08-19 22:24 PDT (History)
4 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
add the sn headers to the system-wrappers (435 bytes, patch)
2007-08-12 07:08 PDT, Walter Meinl
benjamin: review-
Details | Diff | Splinter Review
use ifdef (all occasions) (1.46 KB, patch)
2007-08-13 11:41 PDT, Walter Meinl
benjamin: review+
bzbarsky: approval1.9+
Details | Diff | Splinter Review

Description Walter Meinl 2007-08-12 06:42:31 PDT
User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9a8pre) Gecko/2007081215 Minefield/3.0a8pre
Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9a8pre) Gecko/2007081215 Minefield/3.0a8pre

/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: n
sWindow.o: relocation R_X86_64_PC32 against `sn_display_new' can not be used whe
n making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-pc-linux-gnu/4.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: f
inal link failed: Bad value

Reproducible: Always

Steps to Reproduce:
1. compile minefield with gcc > 4.2
2.
3.
Actual Results:  
relocation error

Expected Results:  
should compile
Comment 1 Walter Meinl 2007-08-12 07:08:38 PDT
Created attachment 276376 [details] [diff] [review]
add the sn headers to the system-wrappers
Comment 2 Benjamin Smedberg AWAY UNTIL 2-AUG-2016 [:bsmedberg] 2007-08-13 06:31:04 PDT
Comment on attachment 276376 [details] [diff] [review]
add the sn headers to the system-wrappers

Please use #ifdef instead of ==
Comment 3 Walter Meinl 2007-08-13 11:41:01 PDT
Created attachment 276513 [details] [diff] [review]
use ifdef (all occasions)

In reply to comment #2)
> (From update of attachment 276376 [details] [diff] [review])
> Please use #ifdef instead of ==
> 
Ups, when I looked at config/system-headers I thought this was desired

benjamin, in this patch version I changed all '==' or '!=' against ifdef or ifndef, working with the sn headers and with native-lcms zlib png and jpeg (cairo not tested, but should work as well)
Since I'm German I want it standardized ;-)
When you think it's overdone I'll attach a patch only ifdef(ed) for startup-notification headers
Comment 4 Walter Meinl 2007-08-15 23:06:05 PDT
Comment on attachment 276513 [details] [diff] [review]
use ifdef (all occasions)

asking for approval for the trunk. Should be very low risk - and a helper for checkin (if approval +) thanks
Comment 5 gentoo_e17_powa 2007-08-18 04:41:55 PDT
I am under Gentoo ~amd64 and I have so build errors when emerging Firefox-2.0.0.6, Thunderbird 2.0.0.6 and Xulrunner 1.8.1.6, with gcc-4.2.0, glibc-2.6.1, binutils-2.17.50.0.18.
I have had to disable the "debug" USE flag to build this software.
See : https://bugs.gentoo.org/show_bug.cgi?id=188636
Comment 6 Boris Zbarsky [:bz] 2007-08-19 19:19:30 PDT
Comment on attachment 276513 [details] [diff] [review]
use ifdef (all occasions)

a=bzbarsky
Comment 7 Boris Zbarsky [:bz] 2007-08-19 19:24:35 PDT
Checked in on trunk.  Thanks for the patch!
Comment 8 David Baron :dbaron: ⌚️UTC+2 (review requests must explain patch) 2007-08-19 19:38:48 PDT
I think those changes to use ifdef will break things, given the Makefile.  If you want to use ifdef, you have to convert the code that passes through various AC_DEFINEs from configure.in as -Ds to not pass them at all.  So I think what landed will break a bunch of things.

Did anyone test that it didn't?
Comment 9 David Baron :dbaron: ⌚️UTC+2 (review requests must explain patch) 2007-08-19 19:39:50 PDT
And note that to test this you need to remove the system-headers directory and clobber any directories that depend on the wrapping.
Comment 10 David Baron :dbaron: ⌚️UTC+2 (review requests must explain patch) 2007-08-19 19:44:19 PDT
Yeah, I confirmed locally that the patch broke those tests.  The changes to existing ifdefs should be backed out; the new stuff is fine.
Comment 11 David Baron :dbaron: ⌚️UTC+2 (review requests must explain patch) 2007-08-19 19:47:05 PDT
I backed out the ifdef changes in existing code since they broke things (those variables were always defined, sometimes to empty string).
Comment 12 Walter Meinl 2007-08-19 22:24:32 PDT
(In reply to comment #11)
> I backed out the ifdef changes in existing code since they broke things (those
> variables were always defined, sometimes to empty string).
> 

Thanks that you kept an eye on it, I enforced it too much

Note You need to log in before you can comment on or make changes to this bug.