Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 467692 - media-libs/mesa-9.0.1[xorg] fails to build against x11-base/xorg-server-1.13.4[minimal]
Summary: media-libs/mesa-9.0.1[xorg] fails to build against x11-base/xorg-server-1.13....
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-04-28 05:53 UTC by Jaroslav Rakhmatoullin
Modified: 2013-05-02 17:01 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
Output of emerge --info (emerge.info.mesa,5.36 KB, text/plain)
2013-04-28 05:53 UTC, Jaroslav Rakhmatoullin
Details
build.log (Mesa-9.0.1) (build.log,217.34 KB, text/plain)
2013-04-28 05:54 UTC, Jaroslav Rakhmatoullin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Rakhmatoullin 2013-04-28 05:53:11 UTC
Created attachment 346764 [details]
Output of emerge --info

The mesa ebuild stops in the compile stage for no good reason. It stops because the mentioned header is missing. I apologize if this is a simple oversight on my part, but even if it is, mesa needs to require whatever package dri2.h has been moved to. 

On a laptop, that has "the same" packages, that were installed a couple or months prior to this I get:

$ ssh eee.lan locate dri2.h\| xargs qfile -e
x11-libs/libxcb-1.8.1 (/usr/include/xcb/dri2.h)
x11-base/xorg-server-1.13.1 (/usr/include/xorg/dri2.h)

On this machine: 

# USE='-xvfb minimal nptl udev suid xorg' emerge =x11-base/xorg-server-1.13.4
# qlist x11-base/xorg-server |grep dri
(nothing)

The build gets as far as: 

x86_64-pc-linux-gnu-gcc -c
        -I.
        -I../../../../src/gallium/include
        -I../../../../src/gallium/auxiliary
        -I../../../../src/gallium/drivers
        -DHAVE_CONFIG_H
        -DHAVE_XEXTPROTO_71
        -DHAVE_LIBKMS
        -I/usr/include/libkms
        -I/usr/include/xorg
        -I/usr/include/pixman-1
        -I/usr/include/libdrm
        -I../../../../src/gallium/include
        -I../../../../src/gallium/auxiliary
        -I../../../../include
        -I../../../../src/mesa
        -I../../../../src/mesa/drivers/dri/common
        -I../../../../src/mesa/main -march=core2 -O2 -pipe
        -Wall -std=c99
        -Werror=implicit-function-declaration
        -Werror=missing-prototypes 
        -fno-strict-aliasing 
         -fno-builtin-memcmp -fPIC
        -D_GNU_SOURCE
        -DHAVE_PTHREAD
        -DTEXTURE_FLOAT_ENABLED
        -DUSE_X86_64_ASM
        -DHAVE_DLOPEN
        -DHAVE_POSIX_MEMALIGN
        -DIN_DRI_DRIVER
        -DUSE_XCB
        -DGLX_INDIRECT_RENDERING
        -DGLX_DIRECT_RENDERING
        -DGLX_USE_TLS
        -DHAVE_PTHREAD
        -DUSE_EXTERNAL_DXTN_LIB=1
        -DIN_DRI_DRIVER
        -DHAVE_ALIAS
        -DHAVE_MINCORE
        -DHAVE_LIBUDEV
        -DHAVE_XEXTPROTO_71 -fvisibility=hidden  xorg_dri2.c -o xorg_dri2.o
xorg_dri2.c:38:18: fatal error: dri2.h: No such file or directory
compilation terminated.
make: *** [all-recursive] Error 1
Comment 1 Jaroslav Rakhmatoullin 2013-04-28 05:54:27 UTC
Created attachment 346766 [details]
build.log (Mesa-9.0.1)
Comment 2 Jaroslav Rakhmatoullin 2013-04-28 06:01:15 UTC
I forgot to mention that copying the header from the other host gets me through the build.
Comment 3 Roman Žilka 2013-04-28 19:35:33 UTC
The header is missing from the xorg-server package because of the "minimal" USE flag.
Comment 4 Jaroslav Rakhmatoullin 2013-04-29 18:18:07 UTC
(In reply to comment #3)
> The header is missing from the xorg-server package because of the "minimal"
> USE flag.

This is correct. The problem is that a new version (upgrading from 7.10.3) of mesa relies on that header. Mesa was being updated before (emerge resolved order) xorg-server, and failed to compile because the previously (1.13.4 with minimal) installed xorg-server did not provide this header. I believe this would can be resolved by requiring xorg-server without the minimal USE flag. Not sure of the implications of that.
Comment 5 Chí-Thanh Christopher Nguyễn gentoo-dev 2013-04-29 18:48:16 UTC
The best way to handle this on user side for now would be to not build mesa with USE="xorg".
Comment 6 Ilya Sretensky 2013-05-02 09:27:30 UTC
I have had the same issue and posted it on the forum.
https://forums.gentoo.org/viewtopic-p-7301248.html#7301248

The following workaround has helped me.

$ echo "" > /etc/portage/package.use 
$ emerge --unmerge x11-base/xorg-server 
$ emerge gentoolkit 
$ euse --disable minimal 
$ euse --disable xorg 
$ emerge media-libs/mesa 
$ euse --enable xorg 
$ emerge x11-base/xorg-server

You can find more details in that forum topic which I have mentioned.
Comment 7 Chí-Thanh Christopher Nguyễn gentoo-dev 2013-05-02 17:01:57 UTC
fixed in mesa-9.1.2