X11R7-RC0 requires libxkbfile, this is done in configure.ac: AC_DEFINE(XKB,1,[Build XKB]) AC_DEFINE(XKB_IN_SERVER,1,[Build XKB server]) AC_DEFINE(XKB_DFLT_DISABLED,0,[Enable XKB per default]) REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" X11R7 should not require xkbfile since it builds its own copy under xorg-server/xkb. The fix is to remove the following line: REQUIRED_MODULES="$REQUIRED_MODULES xkbfile" I tested this on linux. Xorg does not need to link agaist libxkbfile and most importantly against libX11. A little off-topic but relevant: * the files duplicated from xkbfile to xorg-server retain their names except from xkbmisc.c which is renamed to xkbfmisc.c, why is that ? * I think its a good idea to add an appendix to the "modular tree developer guide" with the files that have been duplicated for the needs of the modular tree. Here is a quick list from symlink.sh: app/xprop/dsimple.[hc] app/xwd/dsimple.[hc] app/xwininfo/dsimple.[hc] app/xedit/print*.[hc] xserver/xorg/xkb/XKB*.[hc] xserver/xorg/xkb/xkb[a-z]*.[hc]
Requires the xkbfile header files to be duplicated as well, or leave the requirement for xkbfile (to get the header files) but don't link against it or libX11.
xkbmisc.c is renamed to xkbfmisc.c because we already have XKBMisc.c (from libX11 sources), and need to avoid name collisions on case-agnostic systems.
(In reply to comment #2) > xkbmisc.c is renamed to xkbfmisc.c because we already have XKBMisc.c (from > libX11 sources), and need to avoid name collisions on case-agnostic systems. better then put the imported files in separate subdirs (like libxkbfile, libX11) to avoid clash with original xserver/xkb and between them
Created attachment 3504 [details] [review] symlink.sh: put xkb imported files to separate subdirs Putting imported files to separate subdirs makes it clear that these files are imported code from the respective libs. It also avoids name clashes. The patch also imports libxkbfile header files. I think this makes sense since most of the src files of the library are also imported. With this patch the xkbfile requirement to build xserver can be dropped from configure.ac
Created attachment 3505 [details] [review] Makefiles for xkb and new subdirs
i'm fixing this particular pathological behaviour
-
a great deal of this is now gone. all we have left is XkbRF_*, and the XKM reading functions.
this patch was against the script for the symlink.sh stuff, and is now thus irrelevant
Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.
Should this be closed as fixed? My Xorg isn't linking against libxkbfile
yep.
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.