On Mon, 13 May 2002, Mike A. Harris wrote:

> New versions of the gcc compiler have an optimization called
> "string merging" which is enabled by default.  The XFree86 module
> loader chokes on the ELF sections that this optimization adds to
> the ELF objects.

> To work around this XFree86 module loader limitation, you need
> to pass -fno-merge-constants to the linker when modules are
> being built. This can be done from host.def with:

> ModuleLdFlags -fno-merge-constants

That should have a "#define " in front of it.

> This was automatically detected in later 4.1.0 CVS, and also in
> 4.2.0 CVS however it looks like someone removed the automatic
> checks in head CVS.

No, it wasn't removed.  But, it's possible that

        gcc -fmerge-constants -xc /dev/null -S -o /dev/null

... no longer generates a zero return (i.e. is no longer a valid test to
determine whether or not the compiler has merge-constants support).

Marc.

+----------------------------------+-----------------------------------+
|  Marc Aurele La France           |  work:   1-780-492-9310           |
|  Computing and Network Services  |  fax:    1-780-492-1729           |
|  352 General Services Building   |  email:  [EMAIL PROTECTED]          |
|  University of Alberta           +-----------------------------------+
|  Edmonton, Alberta               |                                   |
|  T6G 2H1                         |     Standard disclaimers apply    |
|  CANADA                          |                                   |
+----------------------------------+-----------------------------------+
XFree86 Core Team member.  ATI driver and X server internals.

_______________________________________________
Xpert mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xpert

Reply via email to