Ticket #18812 (closed defect: fixed)
xorg-server-devel: build fails in glx
| Reported by: | devans@… | Owned by: | jeremyhu@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.8.0 |
| Keywords: | Cc: | steven@… | |
| Port: | xorg-server-devel |
Description
On OS X 10.4.11 ppc
Making all in glx /bin/sh ../libtool --tag=CC --mode=compile /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../include -I../hw/xfree86/os-support -I../hw/xfree86/os-support/bus -I../hw/xfree86/common -I../hw/xfree86/dri -I../hw/xfree86/dri2 -I../mi -I/opt/local/include -I/usr/include -I/opt/macports/trunk/dports/x11/xorg-server-devel/files/include -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include/pixman-1 -I/opt/local/include -I../include -I../include -I../Xext -I../damageext -I../xfixes -I../Xi -I../mi -I../miext/shadow -I../miext/damage -I../render -I../randr -I../fb -I/opt/local/include -I/opt/local/include -DXFree86Server -O2 -DROOTLESS_WORKAROUND -DNO_ALLOCA -MT indirect_reqsize.lo -MD -MP -MF .deps/indirect_reqsize.Tpo -c -o indirect_reqsize.lo indirect_reqsize.c /usr/bin/gcc-4.0 -DHAVE_CONFIG_H -I. -I../include -I../hw/xfree86/os-support -I../hw/xfree86/os-support/bus -I../hw/xfree86/common -I../hw/xfree86/dri -I../hw/xfree86/dri2 -I../mi -I/opt/local/include -I/usr/include -I/opt/macports/trunk/dports/x11/xorg-server-devel/files/include -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -fno-strict-aliasing -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/opt/local/include -I/opt/local/include/freetype2 -I/opt/local/include/pixman-1 -I/opt/local/include -I../include -I../include -I../Xext -I../damageext -I../xfixes -I../Xi -I../mi -I../miext/shadow -I../miext/damage -I../render -I../randr -I../fb -I/opt/local/include -I/opt/local/include -DXFree86Server -O2 -DROOTLESS_WORKAROUND -DNO_ALLOCA -MT indirect_reqsize.lo -MD -MP -MF .deps/indirect_reqsize.Tpo -c indirect_reqsize.c -fno-common -DPIC -o .libs/indirect_reqsize.o indirect_reqsize.c:808: error: conflicting types for '__glXFogivReqSize' indirect_reqsize.h:46: error: previous declaration of '__glXFogivReqSize' was here indirect_reqsize.c:809: error: conflicting types for '__glXLightivReqSize' indirect_reqsize.h:48: error: previous declaration of '__glXLightivReqSize' was here indirect_reqsize.c:810: error: conflicting types for '__glXLightModelivReqSize' indirect_reqsize.h:50: error: previous declaration of '__glXLightModelivReqSize' was here indirect_reqsize.c:811: error: conflicting types for '__glXMaterialivReqSize' indirect_reqsize.h:52: error: previous declaration of '__glXMaterialivReqSize' was here indirect_reqsize.c:812: error: conflicting types for '__glXTexParameterivReqSize' indirect_reqsize.h:55: error: previous declaration of '__glXTexParameterivReqSize' was here indirect_reqsize.c:813: error: conflicting types for '__glXTexEnvivReqSize' indirect_reqsize.h:59: error: previous declaration of '__glXTexEnvivReqSize' was here indirect_reqsize.c:814: error: conflicting types for '__glXTexGenivReqSize' indirect_reqsize.h:62: error: previous declaration of '__glXTexGenivReqSize' was here indirect_reqsize.c:815: error: conflicting types for '__glXPixelMapuivReqSize' indirect_reqsize.h:68: error: previous declaration of '__glXPixelMapuivReqSize' was here indirect_reqsize.c:816: error: conflicting types for '__glXColorTableParameterivReqSize' indirect_reqsize.h:77: error: previous declaration of '__glXColorTableParameterivReqSize' was here indirect_reqsize.c:817: error: conflicting types for '__glXConvolutionParameterivReqSize' indirect_reqsize.h:82: error: previous declaration of '__glXConvolutionParameterivReqSize' was here indirect_reqsize.c:818: error: conflicting types for '__glXCompressedTexSubImage1DARBReqSize' indirect_reqsize.h:89: error: previous declaration of '__glXCompressedTexSubImage1DARBReqSize' was here indirect_reqsize.c:819: error: conflicting types for '__glXCompressedTexSubImage2DARBReqSize' indirect_reqsize.h:90: error: previous declaration of '__glXCompressedTexSubImage2DARBReqSize' was here indirect_reqsize.c:820: error: conflicting types for '__glXLoadProgramNVReqSize' indirect_reqsize.h:95: error: previous declaration of '__glXLoadProgramNVReqSize' was here indirect_reqsize.c:821: error: conflicting types for '__glXRequestResidentProgramsNVReqSize' indirect_reqsize.h:98: error: previous declaration of '__glXRequestResidentProgramsNVReqSize' was here indirect_reqsize.c:822: error: conflicting types for '__glXVertexAttribs1fvNVReqSize' indirect_reqsize.h:100: error: previous declaration of '__glXVertexAttribs1fvNVReqSize' was here indirect_reqsize.c:823: error: conflicting types for '__glXVertexAttribs1svNVReqSize' indirect_reqsize.h:101: error: previous declaration of '__glXVertexAttribs1svNVReqSize' was here indirect_reqsize.c:824: error: conflicting types for '__glXVertexAttribs2fvNVReqSize' indirect_reqsize.h:103: error: previous declaration of '__glXVertexAttribs2fvNVReqSize' was here indirect_reqsize.c:825: error: conflicting types for '__glXVertexAttribs2svNVReqSize' indirect_reqsize.h:104: error: previous declaration of '__glXVertexAttribs2svNVReqSize' was here indirect_reqsize.c:826: error: conflicting types for '__glXVertexAttribs4fvNVReqSize' indirect_reqsize.h:109: error: previous declaration of '__glXVertexAttribs4fvNVReqSize' was here indirect_reqsize.c:827: error: conflicting types for '__glXVertexAttribs4svNVReqSize' indirect_reqsize.h:110: error: previous declaration of '__glXVertexAttribs4svNVReqSize' was here indirect_reqsize.c:828: error: conflicting types for '__glXVertexAttribs4ubvNVReqSize' indirect_reqsize.h:111: error: previous declaration of '__glXVertexAttribs4ubvNVReqSize' was here indirect_reqsize.c:829: error: conflicting types for '__glXPointParameterivNVReqSize' indirect_reqsize.h:112: error: previous declaration of '__glXPointParameterivNVReqSize' was here indirect_reqsize.c:830: error: conflicting types for '__glXProgramNamedParameter4dvNVReqSize' indirect_reqsize.h:113: error: previous declaration of '__glXProgramNamedParameter4dvNVReqSize' was here indirect_reqsize.c:831: error: conflicting types for '__glXDeleteFramebuffersEXTReqSize' indirect_reqsize.h:115: error: previous declaration of '__glXDeleteFramebuffersEXTReqSize' was here indirect_reqsize.c:832: error: conflicting types for '__glXDeleteRenderbuffersEXTReqSize' indirect_reqsize.h:116: error: previous declaration of '__glXDeleteRenderbuffersEXTReqSize' was here make[1]: *** [indirect_reqsize.lo] Error 1 make: *** [all-recursive] Error 1
Change History
comment:2 Changed 4 years ago by devans@…
No mentioned of HAVE_ALIAS in include/dix-config.h at all.
comment:3 Changed 4 years ago by devans@…
I notice that xorg-server uses its own copy of mesa for gl while this version does not and therefore builds against the MacPorts mesa port (if its available -- needs to be a dependency on mesa if this is correct -- if there is no mesa its a configure error). Other than that it seems to be thinking that GLint and int are not the same but I haven't been able to find the definition of GLint to see.
comment:4 Changed 4 years ago by jeremyhu@…
Not exactly. Neither "build against mesa". In 1.4.x, some glx files were symlinked from the mesa sources into xorg-server. With 1.5.x and later, the files are now part of xorg-server itself rather than doign the symlinking.
comment:5 Changed 4 years ago by devans@…
Well, it still seems to want a pkgconfig file from mesa at least since it errors out on configure as follows with mesa deactivated:
Error: Target org.macports.configure returned: configure failure: shell command " cd "/opt/local/var/macports/build/_Volumes_wdc-320_opt_macports_trunk_dports_x11_xorg-server-devel/work/xorg-server-1.5.3-apple4" && ./configure --prefix=/opt/local --with-apple-applications-dir=/Applications/MacPorts --with-fontdir=/opt/local/share/fonts --with-apple-application-id=org.macports.X11 " returned error 1
Command output: checking for struct sockaddr_in.sin_len... yes
checking for socklen_t... yes
checking if Xtrans should support os-specific local connections... no
checking for authdes_seccreate... no
checking for authdes_create... no
checking if Secure RPC authentication ("SUN-DES-1") should be supported... no
checking for /opt/local/share/sgml/X11/defs.ent... no
checking for linuxdoc... no
checking for ps2pdf... /opt/local/bin/ps2pdf
checking Whether to build documentation... no
checking Whether to build pdf documentation... yes
checking whether to build Xquartz... yes
checking for DBUS... yes
checking for HAL... no
checking for glibc...... no
checking for clock_gettime... no
checking for clock_gettime in -lrt... no
checking for a useful monotonic clock ...... no
checking for XLIB... yes
checking for GL... configure: error: Package requirements (glproto >= 1.4.9 gl >= 7.1.0) were not met:
No package 'gl' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables GL_CFLAGS
and GL_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
comment:6 Changed 4 years ago by jeremyhu@…
Urg... that check is there for the xfree86 ddx... we don't actually need it... grr... oh well, it's easier to just add the dependency
comment:7 Changed 4 years ago by devans@…
Just to confirm what is going on, I ran the offending command with -E to get the preprocessed output from which the lines of interest are
extern __attribute__((pure)) int __glXFogivReqSize(const GLbyte *pc, Bool swap);
GLint __glXFogivReqSize( const GLbyte * pc, Bool swap ) { return __glXFogfvReqSize( pc, swap ); }
and from /System/Library/Frameworks/OpenGL.framework/Headers/gl.h
typedef long GLint;
comment:8 Changed 4 years ago by devans@…
On the other hand looking in /usr/X11R6/include/GL/gl.h
typedef int GLint; /* 4-byte signed */
so it looks like this would build against the system GL/gl.h but not that provided by mesa (case above)
comment:10 Changed 4 years ago by devans@…
Indeed. To be complete this is on 10.4.11 ppc, XCode 2.5.
comment:13 Changed 4 years ago by jeremyhu@…
- Status changed from new to closed
- Resolution set to fixed
r51943 should fix this. Please reopen if that's not the case.


Ok, so like 808 in the c file:
line 46 in the h file:
We have this for PURE and HIDDEN
# if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3)) && defined(__ELF__) # define HIDDEN __attribute__((visibility("hidden"))) # else # define HIDDEN # endif # if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 96) # define PURE __attribute__((pure)) # else # define PURE # endifAnd for alias...
#ifdef HAVE_ALIAS # define ALIAS2(from,to) \ GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \ __attribute__ ((alias( # to ))); # define ALIAS(from,to) ALIAS2( from, __glX ## to ## ReqSize ) #else # define ALIAS(from,to) \ GLint __glX ## from ## ReqSize( const GLbyte * pc, Bool swap ) \ { return __glX ## to ## ReqSize( pc, swap ); } #endifCan you tell me if you have HAVE_ALIAS defined in your include/dix-config.h file (in the worksrcpath)
This might just be a Tiger issue, too...