On Tue, Oct 07, 2014 at 06:36:29AM +1300, Jessica Hamilton wrote: > On 7 October 2014 06:10, Jérôme Duval <jerome.duval@xxxxxxxxx> wrote: > > 2014-10-04 3:45 GMT+02:00 <jessica.l.hamilton@xxxxxxxxx>: > >> Revision: btrev43090 > >> Commit: aeb1fcf62f3b60585fdb39fb646417982700c2df > >> URL: http://cgit.haiku-os.org/buildtools/commit/?id=aeb1fcf > >> Author: Nick Smallbone <nick.smallbone@xxxxxxxxx> > >> Date: Fri Oct 3 14:16:03 2014 UTC > >> Committer: Jessica Hamilton <jessica.l.hamilton@xxxxxxxxx> > >> Commit-Date: Sat Oct 4 01:41:05 2014 UTC > >> > >> ---------------------------------------------------------------------------- > >> > >> 4 files changed, 4 insertions(+), 4 deletions(-) > >> gcc/gcc/config/arm/haiku.h | 2 +- > >> gcc/gcc/config/i386/haiku.h | 2 +- > >> gcc/gcc/config/mips/haiku.h | 2 +- > >> legacy/gcc/gcc/config/i386/haiku.h | 2 +- > > > > You might also adjust gcc/gcc/config/i386/haiku64.h, > > gcc/gcc/config/rs6000/haiku.h and gcc/gcc/config/m68k/haiku.h. > > Question: what means the option "-r"? I couldn't find any reference to it. > > > > BTW where did this patch come from? A ticket would have been nice to > > understand the context, it's not very easy with a one-liner summary. > > The -r and -shared options are mutually exclusive. The Glasgow Haskell > Compiler makes use of the -r option. Haiku's default of forcing the > -shared switch broke the -r switch. -r is actually a linker option. ld -r is "relink object files into a relocatable file" and is usually used to merge object files together in a bigger .o, as an alternative to creating a static library and to cut down memory use when linking big projects. I have patched some recipes to use an ar archive instead of a relinked .o, but that doesn't always work, and fixing the compiler is a better solution. -- Adrien.