Commit graph

138 commits

Author SHA1 Message Date
Olivier Fourdan
38efdcada1 xserver 21.1.22
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2178>
2026-04-14 15:12:24 +02:00
Alan Coopersmith
fd9f9f747e os: fix sha1 build error with Nettle 4.0
Nettle 2.6 (released in 2013) split the sha.h header into sha1.h & sha2.h,
but left the sha.h header for compatibility until the recent Nettle 4.0
release finally removed it.

Nettle 4.0 also dropped the length argument from the sha1_digest function.

Closes: #1871
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2146>
2026-03-28 16:40:00 +00:00
Alan Coopersmith
13cb37f179 meson: don't build xselinux if xace is disabled
xselinux requires xace to build

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
(cherry picked from commit 7b15321b3b)

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2146>
2026-03-28 16:40:00 +00:00
Olivier Fourdan
312a25c65c xserver 21.1.21
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2108>
2025-11-24 18:03:35 +01:00
Olivier Fourdan
065f02d946 xserver 21.1.20
Quick release to fix the missing files in 21.1.19.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2090>
2025-10-28 17:40:09 +01:00
Olivier Fourdan
a10c9018ff xserver 21.1.19
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2087>
2025-10-28 14:15:35 +01:00
Olivier Fourdan
2403cd5352 xserver 21.1.18
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2029>
2025-06-18 17:55:42 +02:00
Olivier Fourdan
97f79ca01b xserver 21.1.17
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2025>
2025-06-17 15:06:57 +02:00
Olivier Fourdan
b7f84e6d50 xserver 21.1.16
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1830>
2025-02-25 19:36:29 +01:00
Matt Turner
b5f1b211b4 xserver 21.1.15
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1753>
2024-12-17 12:39:36 -05:00
José Expósito
b25ad9b8f0 xserver 21.1.14
Signed-off-by: José Expósito <jexposit@redhat.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1734>
2024-10-29 16:41:13 +01:00
Matt Turner
be2767845d xserver 21.1.13
Signed-off-by: Matt Turner <mattst88@gmail.com>
2024-04-12 13:09:23 -04:00
Povilas Kanapickas
101caa1b03 xserver 21.1.12
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2024-04-03 23:43:57 +03:00
José Expósito
31407c0199 xserver 21.1.11
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
2024-01-16 10:15:15 +01:00
Peter Hutterer
15e2409776 xserver 21.1.10
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-12-13 11:12:59 +10:00
Peter Hutterer
6197bea02e xserver 21.1.9
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-10-25 11:05:28 +10:00
Sam James
2c33ee9f1d Switch to libbsd-overlay
This is more portable than libbsd as everything Just Works, even on BSD systems,
and is the recommended method of consuming libbsd nowadays.

It also helpfully lets things work with glibc-provided functions for new
enough glibc.

[For the 21.1.x backport, take inspiration from @alanc's commit to libxdmcp
at c01da8ebd0.]

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/973
Co-authored-by: Guillem Jover <guillem@hadrons.org>
(cherry picked from commit 94945a5274)
Signed-off-by: Sam James <sam@gentoo.org>
2023-10-23 23:30:14 -04:00
Olivier Fourdan
7c791b1550 xserver 21.1.8
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
2023-03-29 14:20:26 +02:00
Peter Hutterer
af9111ac7f xserver 21.1.7
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2023-02-07 10:30:59 +10:00
Jeremy Huddleston Sequoia
07f9689507 Revert "meson: Don't build COMPOSITE for XQuartz"
This will allow us to remove build-time conditionalization on COMPOSITE
while still allowing XQuartz to disable it and use ROOTLESS.

This reverts commit 5f2d652377

(cherry picked from commit 66e7b7349d)
2023-01-17 15:22:09 -08:00
Olivier Fourdan
59b6fc88ed xserver 21.1.6
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
2022-12-19 10:48:21 +01:00
Peter Hutterer
f292fbfaac xserver 21.1.5
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2022-12-14 11:35:12 +10:00
Jeremy Huddleston Sequoia
5f2d652377
meson: Don't build COMPOSITE for XQuartz
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
(cherry picked from commit 9c03733669)
2022-11-27 15:15:21 -08:00
Povilas Kanapickas
6bf62381d0 xserver 21.1.4 2022-07-12 16:09:23 +03:00
Jeremy Huddleston Sequoia
033d93a021 meson: Support building Xnest and Xorg on darwin
Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
(cherry picked from commit ef8101560e)
2022-06-26 03:03:26 -07:00
Jeremy Huddleston Sequoia
4ea6f661ed Revert "meson: Bump requirement to meson-0.50.0"
This bump is causing issues with our CI.  Sorry about that.

This reverts commit a6a20a7c40

(cherry picked from commit 8cd0397e5b)
2022-06-20 20:33:38 -07:00
Jeremy Huddleston Sequoia
6465263be8 meson: Bump requirement to meson-0.50.0
WARNING: Project specifies a minimum meson_version '>= 0.47.0' but uses features which were added in newer versions:
 * 0.50.0: {'install arg in configure_file'}

Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com>
(cherry picked from commit 0a27f96d1d)
2022-06-19 22:23:40 -07:00
Povilas Kanapickas
85397cc2ef xserver 21.1.3
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2022-01-03 00:23:30 +02:00
Povilas Kanapickas
9852b29380 xserver 21.1.2
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-12-15 15:46:09 +02:00
Povilas Kanapickas
6b997fb74e xserver 21.1.1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-11-07 01:34:24 +02:00
Povilas Kanapickas
27a0ee32cc xserver 21.1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-10-27 13:38:26 +03:00
Povilas Kanapickas
e59faa4b8c xserver 21.1 RC 2 2021-10-14 17:33:40 +03:00
Povilas Kanapickas
d00e7dfc9d xserver 21.1 RC 1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-09-21 23:37:48 +03:00
Povilas Kanapickas
4ee66f574a Drop XWayland DDX 2021-09-15 21:49:17 +03:00
Povilas Kanapickas
18d3131f9a meson: Implement developer documentation build
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-08-20 10:26:07 +00:00
Povilas Kanapickas
722da1c62c meson: Add option to disable libdrm support
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-08-20 07:11:44 +00:00
Olivier Fourdan
a4ab57cb74 build: Add dependency on libxcvt
libxcvt is a library providing a standalone version of the X server
implementation of the VESA CVT standard timing modelines generator.

Closes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1142
Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
2021-08-06 11:29:29 +00:00
Povilas Kanapickas
b4f55712da xserver 21.0.99.1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-07-05 21:40:55 +03:00
Olivier Fourdan
e167299f60 xfixes: Add ClientDisconnectMode
With Wayland compositors now being able to start Xwayland on demand, the
next logical step is to be able to stop Xwayland when there is no more
need for it.

The Xserver itself is capable of terminating itself once all X11 clients
are gone, yet in a typical full session, there are a number of X11
clients running continuously (e.g. the Xsettings daemon, IBus, etc.).

Those always-running clients will prevent the Xserver from terminating,
because the actual number of X11 clients will never drop to 0. Worse,
the X11 window manager of a Wayland compositor also counts as an X11
client, hence also preventing Xwayland from stopping.

Some compositors such as mutter use the XRes extension to query the X11
clients connected, match their PID with the actual executable name and
compare those with a list of executables that can be ignored when
deciding to kill the Xserver.

But that's not just clumsy, it is also racy, because a new X11 client
might initiate a connection the X11 server right when the compositor is
about to kill it.

To solve this issue directly at the Xserver level, this add new entries
to the XFixes extension to let the X11 clients themselves specify the
disconnect mode they expect.

Typically, those X11 daemon clients would specify the disconnect mode
XFixesClientDisconnectFlagTerminate to let the Xserver know that they
should not be accounted for when checking the remaining clients prior
to terminate.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2021-06-07 17:28:05 +02:00
Jan Beich
8274dd6643 meson: provide fallback for *proto dependencies
Meson has a built-in facility to use bundled versions of dependencies
if system packages are too old. Enable for xorgproto after 8e504d8b36:

Run-time dependency xproto found: YES 7.0.33
Run-time dependency randrproto found: YES 1.6.0
Run-time dependency renderproto found: YES 0.11.1
Run-time dependency xextproto found: YES 7.3.0
Dependency inputproto found: NO found 2.3.2 but need: '>= 2.3.99.1'
Found CMake: /usr/local/bin/cmake (3.20.2)
Run-time dependency inputproto found: NO (tried pkgconfig and cmake)
Looking for a fallback subproject for the dependency inputproto

meson.build:73:0: ERROR: Neither a subproject directory nor a xorgproto.wrap file was found.
2021-06-01 02:44:58 +00:00
Povilas Kanapickas
8e504d8b36 meson: Depend on inputproto 2.3.99.1
Signed-off-by: Povilas Kanapickas <povilas@radix.lt>
2021-05-30 13:26:29 +03:00
Povilas Kanapickas
689496ed65 meson: Switch project version to 20.x.y style 2021-04-08 14:06:02 +00:00
Povilas Kanapickas
88b5e1a219 meson: Bump min meson version to 0.47 to get install_mode support 2021-03-26 09:18:55 +00:00
Simon Ser
1b7dca27eb xwayland: remove wl_log_set_handler_client workaround
This bumps the minimum Wayland version to 1.5 (released in 2014).

Signed-off-by: Simon Ser <contact@emersion.fr>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
Reviewed-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Martin Peres <martin.peres@mupuf.org>
2021-03-24 08:13:11 +01:00
Jan Beich
376eaadde3 meson: hide C API if Xorg is disabled (like autotools)
When building only Xwayland using Meson some files are always installed.
This causes package conflict if Xwayland is built separately from Xorg.

  include/xorg/compositeext.h
  include/xorg/damage.h
  include/xorg/damagestr.h
  include/xorg/dbestruct.h
  include/xorg/dri3.h
  include/xorg/fb.h
  include/xorg/fboverlay.h
  include/xorg/fbpict.h
  include/xorg/fbrop.h
  include/xorg/geext.h
  include/xorg/geint.h
  include/xorg/glyphstr.h
  include/xorg/mi.h
  include/xorg/micmap.h
  include/xorg/micoord.h
  include/xorg/migc.h
  include/xorg/miline.h
  include/xorg/mioverlay.h
  include/xorg/mipict.h
  include/xorg/mipointer.h
  include/xorg/mipointrst.h
  include/xorg/mistruct.h
  include/xorg/misync.h
  include/xorg/misyncfd.h
  include/xorg/misyncshm.h
  include/xorg/misyncstr.h
  include/xorg/mizerarc.h
  include/xorg/panoramiX.h
  include/xorg/panoramiXsrv.h
  include/xorg/picture.h
  include/xorg/picturestr.h
  include/xorg/present.h
  include/xorg/presentext.h
  include/xorg/randrstr.h
  include/xorg/rrtransform.h
  include/xorg/shadow.h
  include/xorg/shmint.h
  include/xorg/syncsdk.h
  include/xorg/vndserver.h
  include/xorg/wfbrename.h
  include/xorg/xace.h
  include/xorg/xacestr.h
  include/xorg/xorg-server.h
  include/xorg/xvdix.h
  include/xorg/xvmcext.h
  share/aclocal/xorg-server.m4

Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
2021-03-11 00:22:36 +00:00
Fabrice Fontaine
5d73a8b59e meson.build: KMS support also depends on dri2
Kernel modesettings support also depends on dri2, see
./hw/xfree86/drivers/modesetting/meson.build

So update meson.build to reflect the changes made in configure.ac by
commit 9c81b8f5b5

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
2020-12-14 11:06:09 +00:00
Jon Turney
06901e12c0 meson: Also ignore kms, kms_udev, hal options on Cygwin 2020-07-29 21:01:59 +01:00
Olivier Fourdan
5188603ff7 xwayland: Add a pkg-config file for Xwayland
Xwayland is usually spawned by the Wayland compositor which sets the
command line options.

If a command line option is not supported, Xwayland will fail to start.

That somehow makes the Xwayland command line option sort of ABI, the
Wayland compositor need to know if a particular option is supported by
Xwayland at build time.

Also, currently, Xwayland is being installed along with the rest of the
common executable programs that users may run, which is sub-optimal
because, well, Xwayland is not a common executable program, it's meant
to be a proxy between the Wayland compositor and the legacy X11 clients
which wouldn't be able to run on Wayland otherwise.

Xwayland would be better installed in `libexec` but that directory is
(purposedly) not in the user `PATH` and therefore the Wayland compositor
may not be able to find Xwayland in that case.

To solve both problems (which options are supported by Xwayland and
where to look for it), add a `pkg-config` file specifically for Xwayland
which gives the full path to Xwayland (`xwayland`) and which options it
supports (using `pkg-config` variables).

The `pkg-config` file also provides the `Version` so the build scripts
can check for a particular version if necessary.

Obviously, Wayland compositors are not required to use the `pkg-config`
file and can continue to use whatever mechanism they deem preferable.

Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
Reviewed-by: Michel Dänzer <mdaenzer@redhat.com>
2020-07-08 08:56:32 +00:00
Jan Beich
b5b529799a meson: split udev from udev_kms which requires systemd
DragonFly and FreeBSD can use xf86-input-libinput with config/udev.

ld: error: undefined symbol: xf86PlatformDeviceProbe
>>> referenced by xf86platformBus.c
>>>               xf86platformBus.c.o:(xf86platformProbe) in archive hw/xfree86/common/libxorg_common.a

ld: error: undefined symbol: xf86PlatformDeviceCheckBusID
>>> referenced by xf86platformBus.c
>>>               xf86platformBus.c.o:(xf86platformProbeDev) in archive hw/xfree86/common/libxorg_common.a

ld: error: undefined symbol: xf86PlatformReprobeDevice
>>> referenced by xf86platformBus.c
>>>               xf86platformBus.c.o:(xf86platformVTProbe) in archive hw/xfree86/common/libxorg_common.a

ld: error: undefined symbol: NewGPUDeviceRequest
>>> referenced by udev.c
>>>               udev.c.o:(device_added) in archive config/liblibxserver_config.a

ld: error: undefined symbol: DeleteGPUDeviceRequest
>>> referenced by udev.c
>>>               udev.c.o:(device_removed) in archive config/liblibxserver_config.a
2020-05-27 07:16:02 +00:00
Adam Jackson
ee9f6e20de meson: Add support for libunwind 2020-02-12 16:56:13 -05:00