[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