Bug 101110 - Build failure in GNOME Continuous
Summary: Build failure in GNOME Continuous
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Other (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: mesa-dev
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-05-19 22:40 UTC by Emmanuele Bassi (:ebassi)
Modified: 2017-05-20 00:20 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Emmanuele Bassi (:ebassi) 2017-05-19 22:40:53 UTC
Mesa compilation is failing in the GNOME Continuous integration builder:

script=../../../../../src/gallium/targets/xvmc/xvmc.sym   -Wl,-soname -Wl,libXvMCgallium.so.1 -o .libs/libXvMCgallium.so.1.0.0
../../../../src/gallium/auxiliary/.libs/libgalliumvlwinsys.a(libgalliumvlwinsys_la-vl_winsys_dri3.o): In function `vl_dri3_flush_frontbuffer':
/ostbuild/source/mesa/_build/src/gallium/auxiliary/../../../../src/gallium/auxiliary/vl/vl_winsys_dri3.c:571: undefined reference to `xcb_xfixes_create_region'
../../../../src/gallium/auxiliary/.libs/libgalliumvlwinsys.a(libgalliumvlwinsys_la-vl_winsys_dri3.o): In function `vl_dri3_screen_create':
/ostbuild/source/mesa/_build/src/gallium/auxiliary/../../../../src/gallium/auxiliary/vl/vl_winsys_dri3.c:768: undefined reference to `xcb_xfixes_id'
/ostbuild/source/mesa/_build/src/gallium/auxiliary/../../../../src/gallium/auxiliary/vl/vl_winsys_dri3.c:775: undefined reference to `xcb_xfixes_id'
/ostbuild/source/mesa/_build/src/gallium/auxiliary/../../../../src/gallium/auxiliary/vl/vl_winsys_dri3.c:779: undefined reference to `xcb_xfixes_query_version'
/ostbuild/source/mesa/_build/src/gallium/auxiliary/../../../../src/gallium/auxiliary/vl/vl_winsys_dri3.c:781: undefined reference to `xcb_xfixes_query_version_reply'

Full build log: http://build.gnome.org/continuous/buildmaster/builds/2017/05/19/40/build/log-mesa.txt

Configuration options:

  "--disable-asm",
  "--enable-osmesa",
  "--with-dri-driverdir=/usr/lib/dri",
  "--enable-egl",
  "--enable-gles1",
  "--enable-gles2",
  "--with-egl-platforms=wayland,x11,drm",
  "--enable-shared-glapi",
  "--enable-gbm",
  "--enable-xa",
  "--with-llvm-config-dir=/usr/bin/llvm3.3",
  "--with-gallium-drivers=svga,r300,nouveau,swrast,virgl",
  "--enable-llvm",
  "--with-vulkan-drivers=intel",
  "--with-dri-drivers=nouveau,radeon,r200,i915,i965,swrast"

Configuration summary:

        prefix:          /usr
        exec_prefix:     ${prefix}
        libdir:          /usr/lib
        includedir:      /usr/include

        OpenGL:          yes (ES1: yes ES2: yes)

        OSMesa:          libOSMesa

        DRI platform:    drm
        DRI drivers:     i915 i965 nouveau r200 radeon swrast 
        DRI driver dir:  /usr/lib/dri
        GLX:             DRI-based

        EGL:             yes
        EGL drivers:     builtin:egl_dri2 builtin:egl_dri3
        GBM:             yes
        EGL/Vulkan/VL platforms:   wayland x11 drm

        Vulkan drivers:  intel 
        Vulkan ICD dir:  ${datarootdir}/vulkan/icd.d

        llvm:            yes
        llvm-config:     /usr/bin/llvm3.3/x86_64-gnomeostree-linux-llvm-config
        llvm-version:    3.3

        Gallium drivers: svga r300 nouveau swrast virgl
        Gallium st:      mesa xa xvmc

        HUD extra stats: no
        HUD lmsensors:   no

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

        CFLAGS:          -g -m64 -mtune=generic -Wall -std=c99 -Werror=implicit-function-declaration -Werror=missing-prototypes -fno-math-errno -fno-trapping-math
        CXXFLAGS:        -g -m64 -mtune=generic -Wall -fno-math-errno -fno-trapping-math
        LDFLAGS:         
        Macros:          -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D_GNU_SOURCE -DUSE_SSE41 -DUSE_GCC_ATOMIC_BUILTINS -DNDEBUG -DHAVE_XLOCALE_H -DHAVE_SYS_SYSCTL_H -DHAVE_STRTOF -DHAVE_MKOSTEMP -DHAVE_DLOPEN -DHAVE_DL_ITERATE_PHDR -DHAVE_POSIX_MEMALIGN -DHAVE_LIBDRM -DGLX_USE_DRM -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DHAVE_WAYLAND_PLATFORM -DHAVE_X11_PLATFORM -DHAVE_DRM_PLATFORM -DHAVE_DRI3 -DENABLE_SHADER_CACHE -DHAVE_MINCORE -DHAVE_LLVM=0x0303 -DMESA_LLVM_VERSION_PATCH=0

        LLVM_CFLAGS:     -I/usr/include/llvm3.3 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
        LLVM_CXXFLAGS:   -I/usr/include/llvm3.3 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
        LLVM_CPPFLAGS:   -I/usr/include/llvm3.3 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS
        LLVM_LDFLAGS:    -L/usr/lib/llvm3.3  -lz -lpthread -lffi -ldl -lm 

        PYTHON2:         python2.7
Comment 1 Emil Velikov 2017-05-19 22:45:34 UTC
Seems like I've missed some corner case - I'm looking into it.
Comment 2 Emil Velikov 2017-05-19 23:15:42 UTC
Should be fixes with the following. Thanks for the report.

commit 2100c5f7bef6b47bf96b026e689e835ca436a59b
Author: Emil Velikov <emil.velikov@collabora.com>
Date:   Sat May 20 00:04:33 2017 +0100

    configure.ac: add xcb-fixes to the XCB DRI3 list
    
    The XCB module is used by the VL targets. Thus omitting it can lead to
    link-time errors due to unresolved symbols.
    
    Other DRI3 users such as the Vulkan WSI and the dri3 loader helper do
    not use an update region in their xcb_present_pixmap() call. We will
    look into that at a later stage.
    
    Fixes: acf3d2afab0 ("configure: check once for DRI3 dependencies")
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101110
    Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
Comment 3 Dieter Nützel 2017-05-20 00:19:00 UTC
Hello Emil,

shouldn't this look like this:

diff --git a/configure.ac b/configure.ac
index b788137d51..06883a9667 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1723,7 +1723,7 @@ fi
 if test x"$enable_dri3" = xyes; then
     DEFINES="$DEFINES -DHAVE_DRI3"
 
-    dri3_modules="x11-xcb xcb >= $XCB_REQUIRED xcb-dri3 xcb-fixes xcb-present xcb-sync xshmfence >= $XSHMFENCE_REQUIRED"
+    dri3_modules="x11-xcb xcb >= $XCB_REQUIRED xcb-dri3 xcb-xfixes xcb-present xcb-sync xshmfence >= $XSHMFENCE_REQUIRED"
     PKG_CHECK_MODULES([XCB_DRI3], [$dri3_modules])
 fi

_xcb-xfixes_ ???

Signed-off-by: Dieter Nützel <Dieter@nuetzel-hh.de>


Mesa git do NOT compile on my openSUSE Tumbleweed with your commit.

Greetings,
Dieter

BTW Look this right?
./autogen.sh --prefix=/usr/local --with-dri-drivers="" --with-gallium-drivers=r600,radeonsi,swrast --with-platforms=drm,x11 --enable-nine --enable-texture-float --enable-opencl --with-vulkan-drivers=radeon

Had add 'x11' to '--with-platforms=drm'
Comment 4 Emil Velikov 2017-05-20 00:20:14 UTC
Correction - needs the following brown paper bag commit
48cd1919ff1 ("configure.ac: s/xcb-fixes/xcb-xfixes/")


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.