On Thu 2003-06-12 at 00:16:54 +0200, [EMAIL PROTECTED] wrote:
> Benjamin Pflugmann wrote:
> >
> >AFAIK, this is need for all platforms. gcc 3.3 has abandoned support
> >for multi-line strings, after they were already deprecated since 3.0:
> >
> > http://gcc.gnu.org/gcc-3.3/changes.html
> 
> Is this the same thing I'm seeing with Mesa (hasn't been rebuilding 
> since gcc 3.3):

I doubt it. From what I have seen, gcc 3.3 gives very specific errors
about the multi-line strings (i.e. that "multi-line" mentioned in the
error message itself).



> http://eijk.homelinux.org/build/cooker/i586/problem/Mesa-5.0.1-3mdk
> 
> gcc -O2 -fomit-frame-pointer -pipe -march=i586 -mcpu=pentiumpro -g 
> -march=pentium -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -Wall 
> -Wno-uninitialized -O3 -fexpensive-optimizations -fomit-frame-pointer 
> -finline-functions -funroll-loops -DNDEBUG -DHW_LOG_ENABLED -DGLX_LOG 
> -DDYNAMIC_MODULE  -DSTDC_HEADERS=1 -DHAVE_FCNTL_H=1 -DHAVE_LIMITS_H=1 
> -DHAVE_SYS_IOCTL_H=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_TYPES_H=1 
> -DHAVE_SYS_MMAN_H=1 -DHAVE_SYS_PERM_H=1 -DHAVE_ASM_SIGCONTEXT_H=1 
> -DHAVE_LINUX_NEWAGP=1 -DSIZEOF_LONG=4 -DRETSIGTYPE=void -DHAVE_VPRINTF=1 
> -DHAVE_STRDUP=1 -DHAVE_STRERROR=1 -DHAVE_STRSTR=1 -DHAVE_IOPL=1 
> -DHAVE_LIBDL=1    -DGLX_LOG  -DGLXEXT -DXDEBUG 
> -DGLX_SO_PATH='"/usr/X11R6/lib/modules/glx-3.so"' -DMESA31 
> -DBUILD_COLOR_TABLE_EXT=1 -DGLX_MODULE  
> -I/home/cooker/RPM/BUILD/Mesa-5.0.1/glx/Mesa-3.2.1/src 
> -I/home/cooker/RPM/BUILD/Mesa-5.0.1/glx/Mesa-3.2.1/include 
> -I/home/cooker/RPM/BUILD/Mesa-5.0.1/glx/Mesa-3.2.1/src/X 
> -I/home/cooker/RPM/BUILD/Mesa-5.0.1/glx/Mesa-3.2.1/src/X86 -fPIC -c 3dnow.c
> 3dnow.c:159:35: pasting "gl_3dnow_rescale_normals_raw" and "(" does not 
> give a valid preprocessing token
> 3dnow.c:159:35: pasting "gl_3dnow_normalize_normals_raw" and "(" does not 
> give a valid preprocessing token

After "quick" look, the problems seems to be here (3dnow.c:26ff):

  extern void gl_##pfx##_rescale_normals_##masked## (NORM_ARGS);                \
  extern void gl_##pfx##_normalize_normals_##masked## (NORM_ARGS);              \
  ...

IMHO, the last concatination (##) makes no sense. The concatination is
used to create a new label, but the label ended with 'masked'. If I am
not mistaken, simply removing the last '##' on every of these line
should do the trick. But then, beware, my preprocessor-fu is not worth
of mentioning (I never have used this concatination myself).

Bye,


Reply via email to