Alan Coopersmith <[email protected]> writes:
> Solaris linker throws error if a mapfile references an undefined
> symbol, such as is found when building glu with both mangled and
> unmangled names in exports table but only one set of symbol names
> defined in objects.
>
> Signed-off-by: Alan Coopersmith <[email protected]>
> ---
> src/glu/sgi/Makefile | 7 ++-
> src/glu/sgi/glu.exports | 118 ------------------------------------------
> --
> src/glu/sgi/glu.exports.in | 63 +++++++++++++++++++++++
> 3 files changed, 69 insertions(+), 119 deletions(-)
> delete mode 100644 src/glu/sgi/glu.exports
> create mode 100644 src/glu/sgi/glu.exports.in
NAK, breaks Linux sw-only mangled mesa build.
My command line to create the exports file ends up being:
gcc -E -I ../../../include/GL -g -DUSE_MGL_NAMESPACE -Wall
-Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fPIC
-DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DHAVE_POSIX_MEMALIGN
-DUSE_XSHM glu.exports.in | \
awk '/^[^#]+/ {print}' > glu.exports
which complains:
gcc: glu.exports.in: linker input file unused because linking not done
If I manually invoke:
cpp -E glu.exports.in | awk '/^[^#]+/ {print}' > glu.exports
it does the right thing, and the build works thereafter.
FYI, compiler:
t...@shigeru mesa gcc -v 2>&1 | grep "gcc version"
gcc version 4.3.2 (Debian 4.3.2-1.1)
I like the approach though. Might be a good idea to do something like
this for Darwin as well, so we could unify the way the export table is
built.
-tom
------------------------------------------------------------------------------
Register Now & Save for Velocity, the Web Performance & Operations
Conference from O'Reilly Media. Velocity features a full day of
expert-led, hands-on workshops and two days of sessions from industry
leaders in dedicated Performance & Operations tracks. Use code vel09scf
and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf
_______________________________________________
Mesa3d-dev mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev