Hi,
in the DRI build system t_vtx_x86_gcc.S ends up being compiled this
command:
gcc -c -o t_vtx_x86_gcc.o t_vtx_x86_gcc.S
The defined like -DUSE_X86_ASM are not there because they are defined as
CFLAGS which are not used for compiling assembler sources files. Because
of the conditional statement at the top of t_vtx_x86_gcc.S several
symbols are undefined in the resulting 3D drivers:
#if defined(USE_X86_ASM) && !defined(HAVE_NONSTANDARD_GLAPIENTRY)
Is this conditional really needed? If yes then the Imakefiles in DRI
have to be fixed to set all the defines in CPPFLAGS, not in CFLAGS.
Though I don't know if this works with all make versions that XFree86
supports.
The attached patch is a quick and dirty workaround. However, this way
the ASM_DEFS end up twice on the command lines of all .c-files in the
tnl directory.
Regards,
Felix
--- ./Imakefile.~1.3.~ 2004-04-01 12:02:01.000000000 +0200
+++ ./Imakefile 2004-04-01 14:39:23.000000000 +0200
@@ -86,6 +86,7 @@
SRCS = $(MESA_TNL_SRCS)
OBJS = $(MESA_TNL_OBJS)
+ CPPFLAGS = $(ASM_DEFS)
#include <Library.tmpl>