Find a file
Rouven Czerwinski 06161682bb xwayland: remove includedir from pkgconfig
Before this change, the xwayland pkgconfig file will always contain an
includedir directive, even though xwayland is not a linkable shared
library:

  prefix=/nix/store/3spcjqp5zcyg8arz6dnsj59fal5yk3jy-xwayland-23.2.6
  includedir=${prefix}/include

  exec_prefix=${prefix}
  xwayland=/nix/store/3spcjqp5zcyg8arz6dnsj59fal5yk3jy-xwayland-23.2.6/bin/Xwayland
  […]
  Cflags: -I${includedir}

According to a bug reporter this trips up cmake [1], which expects that
the include directory exists, which it does not since xwayland does not
install any header files.

Add the dataonly directive to pkgsconfig.generate() which will remove
the default "." subdir and ensures that includedir is not set inside the
pkgconfig file. Additionally enforce the install directory to
$libdir/pkgconfig, since it otherwise will be installed to
$datadir/pkgconfig, which precludes programs from finding the pkgconfig
because share/pkgconfig is usually not included in the search path.

The resulting pkgconfig does not contain an includedir:

  prefix=/nix/store/p7xhdzl65hfhzf36vxykzp2i9cyy7y6c-xwayland-23.2.6

  exec_prefix=${prefix}
  xwayland=/nix/store/p7xhdzl65hfhzf36vxykzp2i9cyy7y6c-xwayland-23.2.6/bin/Xwayland
  have_glamor=true
  have_eglstream=true
  have_initfd=true
  have_listenfd=true
  have_verbose=true
  have_terminate_delay=true
  have_no_touch_pointer_emulation=true
  have_force_xrandr_emulation=true
  have_geometry=true
  have_fullscreen=true
  have_host_grab=true
  have_decorate=false
  have_enable_ei_portal=true
  have_byteswappedclients=true

  Name: Xwayland
  Description: X Server for Wayland
  Version: 23.2.6

[1]: https://github.com/NixOS/nixpkgs/pull/309075#issuecomment-2108381428

Signed-off-by: Rouven Czerwinski <rouven@czerwinskis.de>
Reviewed-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1543>
(cherry picked from commit 9df084c8d1)
2026-01-25 10:39:53 -08:00
.gitlab-ci Update CI for Xwayland explicit sync 2026-01-19 12:32:24 -08:00
composite rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
config include: move dbus-core.h to config 2026-01-25 10:39:52 -08:00
damageext prevent name clash on Windows w/ RT_* defines 2026-01-19 12:48:30 -08:00
dbe dbe: unexport dbestruct.h 2026-01-25 10:39:52 -08:00
dix rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
doc prevent name clash on Windows w/ RT_* defines 2026-01-19 12:48:30 -08:00
dri3 rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
exa include: drop obsolete check for typeof operator 2026-01-25 10:39:52 -08:00
fb fb: Fix 1bpp Xservers on "whitePixel=0, blackPixel=1" VRAMs 2024-01-03 19:43:16 +00:00
glamor xwayland/glamor: Handle depth 15 in gbm_format_for_depth 2026-01-25 10:39:52 -08:00
glx rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
hw xwayland: remove includedir from pkgconfig 2026-01-25 10:39:53 -08:00
include include: xkbfile: clean up forgotten unused declarations 2026-01-25 10:39:53 -08:00
man Xserver.man: Note that -byteswappedclients is the default in this release 2026-01-19 12:32:23 -08:00
mi rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
miext os: move os_move_fd() out of public API 2026-01-19 12:32:20 -08:00
os os: drop remains of STREAMSCONN 2026-01-25 10:39:53 -08:00
present present: On *BSD, epoll-shim is needed to emulate eventfd() 2026-01-25 10:39:53 -08:00
pseudoramiX Remove autotools support 2021-10-27 13:15:40 +03:00
randr prevent name clash on Windows w/ RT_* defines 2026-01-19 12:48:30 -08:00
record prevent name clash on Windows w/ RT_* defines 2026-01-19 12:48:30 -08:00
render rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
test test: fix the xi2 protocol swapping tests to actually work 2026-01-19 12:32:24 -08:00
Xext fix including <sys/mman.h> 2026-01-25 10:39:52 -08:00
xfixes rename remaining RT_* defines to X11_RESTYPE_* 2026-01-19 12:48:30 -08:00
Xi prevent name clash on Windows w/ RT_* defines 2026-01-19 12:48:30 -08:00
xkb xkb: deadcode cleanup 2026-01-25 10:39:53 -08:00
.appveyor.yml appveyor: Add libxcvt build dep 2021-11-04 13:03:25 +00:00
.dir-locals.el .dir-locals.el: Add missing final newline 2019-10-01 17:05:28 +00:00
.gitignore Clean up the .gitignore file 2024-01-12 00:50:24 +00:00
.gitlab-ci.yml Update CI for Xwayland explicit sync 2026-01-19 12:32:24 -08:00
.mailmap Add a .mailmap file to canonicalize author names and emails 2023-03-15 18:10:51 +00:00
.travis.yml travis: Add OSX meson build to matrix 2019-05-02 15:42:58 +00:00
COPYING modesetting: Merge modesetting's COPYING into the xserver's. 2014-09-15 12:46:02 -07:00
meson.build xwayland: add support for wp_linux_drm_syncobj_v1 2026-01-19 12:32:24 -08:00
meson_options.txt os: secure-rpc: make build option tristate 2026-01-25 10:39:52 -08:00
README.md Fix spelling/wording issues 2020-07-05 13:07:33 -07:00
xorg-server.m4 xorg-server.m4: just all cflags instead of just sdkdir 2018-09-20 20:12:24 +01:00
xorg-server.pc.in xfree86: link modules against Xorg symbols on Cygwin 2012-04-05 21:57:07 -05:00
xserver.ent.in doc: relocate xserver.ent in the package root directory 2011-05-14 11:22:26 -07:00

X Server

The X server accepts requests from client applications to create windows, which are (normally rectangular) "virtual screens" that the client program can draw into.

Windows are then composed on the actual screen by the X server (or by a separate composite manager) as directed by the window manager, which usually communicates with the user via graphical controls such as buttons and draggable titlebars and borders.

For a comprehensive overview of X Server and X Window System, consult the following article: https://en.wikipedia.org/wiki/X_server

All questions regarding this software should be directed at the Xorg mailing list:

https://lists.freedesktop.org/mailman/listinfo/xorg

The primary development code repository can be found at:

https://gitlab.freedesktop.org/xorg/xserver

For patch submission instructions, see:

https://www.x.org/wiki/Development/Documentation/SubmittingPatches

As with other projects hosted on freedesktop.org, X.Org follows its Code of Conduct, based on the Contributor Covenant. Please conduct yourself in a respectful and civilized manner when using the above mailing lists, bug trackers, etc:

https://www.freedesktop.org/wiki/CodeOfConduct