Bug 52962

Summary: gbm.c:54:4: error: implicit declaration of function ‘pipe_loader_drm_probe_fd’
Product: Mesa Reporter: Chí-Thanh Christopher Nguyễn <chithanh>
Component: OtherAssignee: mesa-dev
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: All   
See Also: https://bugs.gentoo.org/show_bug.cgi?id=428508
Whiteboard:
i915 platform: i915 features:
Attachments: build.log

Description Chí-Thanh Christopher Nguyễn 2012-07-30 10:44:17 UTC
Created attachment 64950 [details]
build.log

Mesa from today's git, configured with

./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --disable-dependency-tracking --enable-dri --enable-glx --enable-texture-float --disable-debug --enable-egl --enable-gbm --disable-gles1 --enable-gles2 --enable-glx-tls --disable-osmesa --enable-asm --enable-shared-glapi --enable-xa --enable-xorg --with-dri-drivers=,swrast,i915,i965 --with-gallium-drivers=,swrast,i915 --with-egl-platforms=x11,drm --enable-gallium-egl --disable-d3d1x --enable-gallium-g3dvl --enable-gallium-llvm --enable-openvg --disable-r600-llvm-compiler --disable-vdpau --enable-xvmc

will fail to build in:

gbm.c: In function ‘gallium_screen_create’:
gbm.c:54:4: error: implicit declaration of function ‘pipe_loader_drm_probe_fd’
gmake[3]: *** [gbm.o] Error 1

This is due to i915g not defining -DHAVE_PIPE_LOADER_DRM
A workaround is to add gallium_require_drm_loader statement to i915 in configure.ac (or additionally enabling one driver that already has it).

Or one could check in gbm.c for HAVE_PIPE_LOADER_DRM before calling pipe_loader_drm_probe_fd().
Comment 1 Chí-Thanh Christopher Nguyễn 2012-08-08 22:36:02 UTC
Patch was sent for review:
http://lists.freedesktop.org/archives/mesa-dev/2012-August/025278.html

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.