[MacPorts] #30492: Mesa 7.11-rc3 does not compile on PPC Mac OS X 10.5.8 due to C header file
MacPorts
noreply at macports.org
Sun Jul 31 05:16:21 PDT 2011
#30492: Mesa 7.11-rc3 does not compile on PPC Mac OS X 10.5.8 due to C header file
--------------------------------------+-------------------------------------
Reporter: Peter_Dyballa@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.0.0
Keywords: | Port: mesa
--------------------------------------+-------------------------------------
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...
--
Ticket URL: <https://trac.macports.org/ticket/30492>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list