<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - Mesa 10.1: doesn't build with DRI3 enabled"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=74727">74727</a>
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>mesa-dev@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Mesa 10.1: doesn't build with DRI3 enabled
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>edwin+mesa@etorok.net
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>GLX
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr></table>
      <p>
        <div>
        <pre>If I want to build Mesa 10.1 branch with DRI3 enabled (the default), it fails.
I have to use --disable-dri3 to be able to build Mesa.

I have the following package versions installed, are they too old?
ii  libxcb-dri3-0:amd64                    1.10-2                         amd64
       X C Binding, dri3 extension
ii  libxcb-dri3-dev:amd64                  1.10-2                         amd64
       X C Binding, dri3 extension, development files
ii  x11proto-dri3-dev                      1.0-1                          all  
       X11 DRI3 extension wire protocol


$ ./configure --enable-dri --enable-glx-tls --enable-shared-glapi
--enable-texture-float --enable-xa --disable-xvmc --disable-vdpau
--with-gallium-drivers=r600,swrast LLVM_CONFIG=/usr/bin/llvm-config-3.4 
--enable-debug
[... this succeeds]
        prefix:          /usr/local
        exec_prefix:     ${prefix}
        libdir:          ${exec_prefix}/lib
        includedir:      ${prefix}/include

        OpenGL:          yes (ES1: no ES2: no)
        OpenVG:          no

        OSMesa:          no
        DRI drivers:     i915 i965 nouveau r200 radeon swrast
        DRI driver dir:  ${libdir}/dri
        GLX:             DRI-based

        EGL:             yes
        EGL platforms:   x11
        EGL drivers:     builtin:egl_glx builtin:egl_dri2

        llvm:            yes
        llvm-config:     /usr/bin/llvm-config-3.4
        llvm-version:    3.4

        Gallium:         yes
        Target dirs:     dri-swrast r600/dri 
        Winsys dirs:     radeon/drm sw sw/dri 
        Driver dirs:     galahad identity llvmpipe noop r600 rbug softpipe
trace 
        Trackers dirs:   dri xa 

        Shared libs:     yes
        Static libs:     no
        Shared-glapi:    yes

        CFLAGS:          -g -O2 -Wall -std=c99
-Werror=implicit-function-declaration -Werror=missing-prototypes
-fno-strict-aliasing -fno-builtin-memcmp -g -O0
        CXXFLAGS:        -g -O2 -Wall -fno-strict-aliasing -fno-builtin-memcmp
-g -O0
        Macros:          -D_GNU_SOURCE -DHAVE_PTHREAD -DDEBUG
-DTEXTURE_FLOAT_ENABLED -DUSE_X86_64_ASM -DHAVE_DLOPEN -DHAVE_POSIX_MEMALIGN
-DHAVE_LIBDRM -DHAVE_LIBUDEV -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING
-DGLX_USE_TLS -DHAVE_PTHREAD -DUSE_EXTERNAL_DXTN_LIB=1 -DHAVE_ALIAS -DHAVE_DRI3
-DHAVE_MINCORE -DHAVE_LLVM=0x0304

        LLVM_CFLAGS:     -I/usr/lib/llvm-3.4/include  -D_GNU_SOURCE
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
        LLVM_CXXFLAGS:   -I/usr/lib/llvm-3.4/include  -D_GNU_SOURCE
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS   
-fvisibility-inlines-hidden -fno-exceptions -fPIC -Woverloaded-virtual
-Wcast-qual
        LLVM_CPPFLAGS:   -I/usr/lib/llvm-3.4/include  -D_GNU_SOURCE
-D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS

        PYTHON2:         python2

        Run 'make' to build Mesa
$ make 
[...]

make[3]: Entering directory `/home/edwin/HDD/me/language/C++/mesa/src/glx'
  CC       dri3_glx.lo
In file included from dri3_glx.c:66:0:
/usr/include/xcb/present.h:18:19: fatal error: randr.h: No such file or
directory
 #include "randr.h"
                   ^
compilation terminated.
make[3]: *** [dri3_glx.lo] Error 1

FWIW randr.h is in /usr/include/X11/extensions/randr.h.

If I add a CPPFLAGS=-I/usr/include/X11/extensions I get a different error:
make[3]: Entering directory `/home/edwin/HDD/me/language/C++/mesa/src/glx'
  CC       dri3_glx.lo
In file included from dri3_glx.c:66:0:
/usr/include/xcb/present.h:139:5: error: unknown type name 'xcb_randr_crtc_t'
     xcb_randr_crtc_t    target_crtc; /**<  */
     ^
/usr/include/xcb/present.h:336:5: error: unknown type name 'xcb_randr_crtc_t'
     xcb_randr_crtc_t    target_crtc; /**<  */</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>