Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 586062 - x11-base/xorg-server-1.17.4: missing "xcb/xcb_keysyms.h" with USE="xnest"
Summary: x11-base/xorg-server-1.17.4: missing "xcb/xcb_keysyms.h" with USE="xnest"
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Matt Turner
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-16 03:19 UTC by Garth
Modified: 2017-02-26 05:03 UTC (History)
1 user (show)

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


Attachments
build log (build.log.bz2,29.57 KB, application/x-bzip2)
2016-06-16 03:23 UTC, Garth
Details
emerge info (emerge.info.txt,5.83 KB, text/plain)
2016-06-16 03:24 UTC, Garth
Details
ebuild patch (xorg-server-1.17.4.ebuild.patch,327 bytes, patch)
2016-06-16 03:25 UTC, Garth
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Garth 2016-06-16 03:19:03 UTC
I've just updated x11-base/xorg-server from 1.16.4 to 1.17.4 and found a possible missing dependency.

If USE="xnest" is used, and x11-libs/xcb-util-keysyms is not installed, then the build of xorg-server-1.17.4 fails with:

/var/tmp/portage/x11-base/xorg-server-1.17.4/work/xorg-server-1.17.4/hw/xnest/Keyboard.c:25:29: fatal error: xcb/xcb_keysyms.h: No such file or directory
 #include <xcb/xcb_keysyms.h>

If x11-libs/xcb-util-keysyms is installed, or USE="-xnest" then it builds fine.

I don't know if the new dependency is really required, or if something from USE="xephyr" is leaking through. Unfortunately this is a production machine with very low specs, so I can't spend the time to test things (source code patches, other versions of xorg-server) & recompile to see if they work.

The patch submitted adds the dependency for USE="xnest". If this is really a new requirement for xorg-server, then the same should be done to the ebuilds of newer versions.
Comment 1 Garth 2016-06-16 03:23:36 UTC
Created attachment 437696 [details]
build log
Comment 2 Garth 2016-06-16 03:24:21 UTC
Created attachment 437698 [details]
emerge info
Comment 3 Garth 2016-06-16 03:25:14 UTC
Created attachment 437700 [details, diff]
ebuild patch
Comment 4 Matt Turner gentoo-dev 2017-02-26 05:03:57 UTC
(No need to Cc yourself on bugs you file)


Currently hostx.c and ephyr.c are the only two files that #include xcb/xcb_keysyms.h. They are both part of Xephyr, not Xnest.

I fixed the missing xcb dependencies a couple of years ago in the x11 overlay, with

commit ad669de599c69a5436683f2acd22de49d66af118
Author: Matt Turner <mattst88@gmail.com>
Date:   Sat Feb 21 18:31:20 2015 -0800

    x11-base/xorg-server: Set appropriate xcb dependencies for xephyr.

The ebuild is now in the main portage tree, and all versions going back to 1.17.4 have that dependency.

But your report says Keyboard.c is the culprit. I checked the xserver git log, and xcb/xcb_keysyms.h was included until

commit 4affa75a90d2455c81087b930126ad7adfd019f0
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu Nov 19 12:21:08 2015 -0500

    xnest: Fix needless build dependency on xcb-util-keysyms

which is in 1.19.0.

I have fixed the 1.17.4 and 1.18.4 ebuilds to contain the dependency:

commit 0a24e95351f1619d93dd1c8598c49647a964b587
Author: Matt Turner <mattst88@gentoo.org>
Date:   Sat Feb 25 21:02:20 2017 -0800

    x11-base/xorg-server: Depend on xcb-util-keysyms for xnest.

Thanks for the bug report.