Commit Graph

203 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
dda087c554 xfree86: parser: move public SDK headers into include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 20:00:11 +01:00
Enrico Weigelt, metux IT consult
a1081d7765 xfree86: common: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:51:51 +01:00
Enrico Weigelt, metux IT consult
1cc06b8d60 xfree86: i2c: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:50:11 +01:00
Enrico Weigelt, metux IT consult
45d2ba92d3 xfree86: ddc: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:18:54 +01:00
Enrico Weigelt, metux IT consult
1431b33caa xfree86: modes: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:03:56 +01:00
Enrico Weigelt, metux IT consult
69d57bcf52 Xext: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:00:42 +01:00
Enrico Weigelt, metux IT consult
9bd146a391 xfree86: dri: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 18:28:35 +01:00
Enrico Weigelt, metux IT consult
976e6cdd13 include: new header for fundamental pointer types
This header is holding forward declarations that are needed in many places.
It's for helping us to unclutter the include files a little bit.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 18:28:35 +01:00
Enrico Weigelt, metux IT consult
25fc1a02f5 render: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 17:43:44 +01:00
Enrico Weigelt, metux IT consult
0edeb0e34e xfree86: vgahw: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 17:08:29 +01:00
Enrico Weigelt, metux IT consult
e20767dd40 xfree86: fbdevhw: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:26:30 +01:00
Enrico Weigelt, metux IT consult
58e80dc78a mi: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:21:38 +01:00
Enrico Weigelt, metux IT consult
0272fcd55e present: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:21:20 +01:00
Enrico Weigelt, metux IT consult
65472d1964 xfree86: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:21:02 +01:00
Enrico Weigelt, metux IT consult
7275b5409f Xext: dri2: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 15:36:07 +01:00
Enrico Weigelt, metux IT consult
fbb0983e2b randr: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 15:35:58 +01:00
Enrico Weigelt, metux IT consult
91a93a8b2d miext: shadow: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:39:55 +01:00
Enrico Weigelt, metux IT consult
430d3b62c2 fb: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:39:31 +01:00
Enrico Weigelt, metux IT consult
82de39bc4e mi: sync: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:32:24 +01:00
Enrico Weigelt, metux IT consult
f3d2731684 damage: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:25:34 +01:00
Enrico Weigelt, metux IT consult
5862f31d18 glx: move over vndserver.h public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:25:12 +01:00
Enrico Weigelt, metux IT consult
6d15a62ea2 glamor: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:25:03 +01:00
Enrico Weigelt, metux IT consult
6e2dbc6c7d dri3: move public dri3.h sdk header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:24:36 +01:00
Enrico Weigelt, metux IT consult
5e0ab139d6 exa: move public exa.h SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 13:43:39 +01:00
Enrico Weigelt, metux IT consult
ecca8de15d composite: move public SDK header to include/
Simplify installation process.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 13:21:41 +01:00
Enrico Weigelt, metux IT consult
14f03de002 xwin: move winsock specific errno checks into ossock
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-11 12:02:44 +01:00
Enrico Weigelt, metux IT consult
673ad0822b meson: move strlcat() and strlcpy() detection into os/meson.build
That's OS specific, and the fallback implementations are in os/,
so it's better to also move the detection there.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 16:16:49 +01:00
stefan11111
b7bf58922f modesetting: Check for GLAMOR instead of GLAMOR_HAS_GBM
Now gbm required for the modesetting driver.
`GLAMOR_HAS_GBM` is defined even if glamor isn't built.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
b-aaz
7f7efe8195 Revert 9a82f5c, bring back Cygwin support.
Brought back the code removed in that commit so that we can bring back
Cygwin support.
Small changes are done in the process of resolving conflicts against the
current head.

Some checks have not been reverted, because they were not necessary
anymore.

Signed-off-by: b-aaz <b-aazbsd@proton.me>
2025-12-21 12:59:03 +01:00
Enrico Weigelt, metux IT consult
aefde94a2d meson: drop obsolete vendor information options
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-17 13:52:37 +01:00
stefan11111
63f2422475 glx: include: meson_options.txt: Allow disabling DRI glx backends
This allows building the X server with glx and without mesa.
This also makes the X server optionally no longer be a loader for dri drivers.

Fixes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1638
Fixes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1819

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-12-16 15:56:04 +01:00
Enrico Weigelt, metux IT consult
9a54f4b908 os: enable UNIX sockets on Mingw32
Mingw32 also supports unix sockets, so no need to disable them here.

Since it's now always enabled, follow-up commits can now drop all the
extra #ifdef's on UNIXCONN and so reduce complexity.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-14 11:03:00 +01:00
Enrico Weigelt, metux IT consult
16d4d44551 os: drop symbol TCPCONN
It's been always enabled for aeons, so no practical need to
disable it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-13 15:59:07 +01:00
Enrico Weigelt, metux IT consult
90c8af27bd include: move writing xorg-config.h to the end
This allows us to move around probing DDX specific logic out of the fat
include/meson.build to more appropriate places, eg. xfree86/meson.build.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-10 14:54:28 +01:00
Enrico Weigelt, metux IT consult
609ea42a62 include: don't install client.h anymore
not included by any drivers, so doesn't need to be in SDK anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-05 19:44:59 +01:00
Tautvis
8d90cd0060 Patch 2/5 xfree86: libseat support, wireup libseat
Refactor libseat code for Xlibre and add to meson.build:

* update meson for seat-libseat
* refactor code:
  * seatd-libseat.c - add aditional private include headers
  * add cast to libseat_set_log_handler argument 1 for (libseat_log_func),
  for warning silencing
  * make seatd_libseat_init to accept keeptty state as parameter
  * include xf86Events, xf86_priv - make visible xf86VTLeave for seatd code (it
    is neccesary because seatd can force console leave)

Signed-off-By: Tautvis <gtautvis@gmail.com>
2025-12-05 12:29:52 +01:00
Enrico Weigelt, metux IT consult
1c0a9399c8 meson.build: move creating conf_data object to toplevel
create it very early, so we're free to move around call sites
between subdirectories. preparation for untwisting the whole
probing logic.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-05 12:19:52 +01:00
Enrico Weigelt, metux IT consult
805dec1661 include: drop obsolete hotplug.h
Nobody's including it anymore, so no need to keep it around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-20 16:37:03 +01:00
Enrico Weigelt, metux IT consult
1ae9646936 pseudoramiX: unexport noPseudoramiXExtension
Not used by any driver (not even by xf86 at all), so no need to
keep it exported. Also disposing the now empty nonsdk_extinit.h,
which also isn't used by any drivers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-19 13:32:31 +01:00
stefan11111
4984b12967 modesetting: Use the same cursor mask interleave as other drivers
There is no explanation for these values, but the one we are
currently using doesn't work.

Use the values from vendor-speciffic drivers, which do work.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-10-02 18:49:40 +02:00
stefan11111
5943ca5a1d os: Fix builds with -Dxdmcp=false
Fixes: https://github.com/X11Libre/xserver/issues/239
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-09-22 12:00:14 +02:00
stefan11111
cef7cda851 include: modesetting: rename LIBDRM_PLANE_SIZE_HINTS to LIBDRM_HAS_PLANE_SIZE_HINTS
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-08-29 12:01:18 +02:00
notbabaisyou
e6c980f08e hw/modesetting: Fix up cursor size probing.
modesetting has a sort of broken concept of getting the cursor dimensions since 1f41320e1c, which causes issues on virtual machines and older AMD hardware. Our solution is to use SIZE_HINTS which is available in i915 since 2023 otherwise fallback to getting the cursor size provided by the driver, if a driver wants to have a more optimal cursor size, it is more than welcome to implement SIZE_HINTS in it's DRM interface.

Taken from my own fork of Xorg.

v2: Fix some bugs in the implemenation.
2025-08-28 16:56:25 +02:00
stefan11111
90846d49cc xfree86: add (optional) ScreenRec padding for legacy Nvidia driver
Commit 3cb3024fea removed pScratchPixmap field
in ScreenRec, which broke legacy Nvidia (proprietary) drivers (470.x), thus
we should add an empty/dummy field here, to ensure correct padding. But this
would break ABI again - can't do that within minor release line.

As compromise, adding a *build time* option CONFIG_LEGACY_NVIDIA_PADDING for
this, so operators/packagers can opt-in to this change.

As it breaks ABI, the option is disabled by default until the next major release
and intended for EXPERTS ONLY who need nvidia390 or nvidia470 drivers.

Note that ALL DRIVERS should be rebuild if it is applied!

This compile-time option, along with the hacks needed to support it
in a non-abi-breaking way, should be droppen in the next major release.

Co-authored-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>

Signed-off-by: Oleh Nykyforchyn <oleh.nyk@gmail.com>
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-08-22 17:02:12 +02:00
b-aaz
6574903366 include: meson.build: Fixed broken dependency on epoll-shim on FreeBSD.
The epoll-shim dependency did not get detected on FreeBSD,
because of missing prefix and dependency arguments in has_function()
call in include/meson.build.
Also added the path of epoll-shim headers include directory
(/usr/local/include/libepoll-shim/) to the compiler include search
paths for proper detection and build.

Signed-off-by: b-aaz <b-aazbsd@proton.me>
2025-08-05 14:04:05 +02:00
Enrico Weigelt, metux IT consult
bbabd96e6c meson: rename symbol MITSHM to CONFIG_MITSHM
some bit better naming for config symbols.
Yet leaving the old one defined, until all drivers have kept up.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-08-05 11:39:28 +02:00
Enrico Weigelt, metux IT consult
967ae609b6 dix: drop DDXBEFORERESET symbol
Reduce complexity for things that really don't matter much:

The ddxBeforeReset() function is called when the Xserver going to reset
(new server generation). Right now, the only DDX really needing that is
Xwin, on all the others it's just no-op.

We've got an extra complicated build logic, which ifdef's out this all when
Xwin isn't built at all. The saving is extremely minimal - just skipping
few stub functions, which in most sessions aren't even called.

Therefore, get rid of this extra complexity that isn't giving us any
notable gain.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-08-04 11:41:48 +02:00
Enrico Weigelt, metux IT consult
9986e17950 meson: move MAXCLIENTS and LIMITCLIENTS into dix-config.h
Both are potentially tunable variables, and MAXCLIENTS is (still) used by
intel-driver, but also by os specific parts that must not include misc.h

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-07-30 14:55:40 +02:00
Enrico Weigelt, metux IT consult
2bee97548e os: move X_NOTIFY_* defines to separate header
These defines are already public, used by consumers of SetNotifyFd(),
but also needed in places where os.h cannot be included.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-07-25 15:21:13 +02:00
Enrico Weigelt, metux IT consult
dcf7890076 Xace: always build xace
Xace callbacks are needed in many places, and the their overhead (when not
actually used) is really minimal. So it doesn't make much sense having
extra complexity for disabling it at build time.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-07-24 10:49:54 +02:00