Opened 13 years ago

Closed 13 years ago

#30492 closed defect (fixed)

Mesa 7.11-rc3 does not compile on PPC Mac OS X 10.5.8 due to C header file

Reported by: ballapete (Peter "Pete" Dyballa) Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.0.0
Keywords: Cc: jeremyhu (Jeremy Huddleston Sequoia)
Port: mesa

Description

Compilation ends here:

/usr/bin/gcc-4.2  -c -o state_tracker/st_atom.o state_tracker/st_atom.c  -D_DARWIN_C_SOURCE -DPTHREADS -D_GNU_SOURCE -DGLX_ALIAS_UNSUPPORTED -DGLX_DIRECT_RENDERING -DGLX_USE_APPLEGL -I../../include -I../../src/glsl -I../../src/mesa -I../../src/mapi -I../../src/gallium/include -I../../src/gallium/auxiliary  -ggdb3 -Os -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fvisibility=hidden -I/opt/local/include -I/opt/local/include -fPIC -arch ppc
In file included from ../../src/gallium/include/pipe/p_compiler.h:32,
                 from ../../src/gallium/include/pipe/p_defines.h:31,
                 from state_tracker/st_atom.c:32:
../../src/gallium/include/pipe/p_config.h:134:2: error: #error Unknown Endianness
make[2]: *** [state_tracker/st_atom.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_ports_x11_mesa/mesa/work/Mesa-7.11-rc3/src/mesa'
make[1]: *** [subdirs] Error 1
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_ports_x11_mesa/mesa/work/Mesa-7.11-rc3/src'
make: *** [default] Error 1

The cause is that GCC 4.2 defines (at least with PPC 7447A/7450) other symbols than assumed in src/gallium/include/pipe/p_config.h:

echo | gcc-4.2 -E -dM - | grep -i ppc | sort
#define _ARCH_PPC 1
#define _ARCH_PPCGR 1
#define __ppc__ 1

So these lines fail to define a pipe architecture:

102	#if defined(__PPC__)
103	#define PIPE_ARCH_PPC
104	#if defined(__PPC64__)
105	#define PIPE_ARCH_PPC_64
106	#endif
107	#endif

GCC 4.2 provides so easy means:

echo | gcc-4.2 -E -dM - | grep -i end | sort
#define _BIG_ENDIAN 1
#define __BIG_ENDIAN__ 1

Could be it's even documented...

Attachments (1)

main.log (177.7 KB) - added by ballapete (Peter "Pete" Dyballa) 13 years ago.
The main.log file.

Download all attachments as: .zip

Change History (2)

Changed 13 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log added

The main.log file.

comment:1 Changed 13 years ago by jeremyhu (Jeremy Huddleston Sequoia)

Resolution: fixed
Status: newclosed

Thanks, r81482

Note: See TracTickets for help on using tickets.