wayland/src
Martin Lopatář 5bf30a3e7e build: Fix build and tests on macOS
This commit addresses several compatibility issues that prevented Wayland
from building and passing its test suite on macOS

Core and Compatibility changes:
- Emulate Linux behavior by explicitly setting O_NONBLOCK on connections
  (fixes blocking sendmsg issues on macOS).
- Fix compilation on platforms missing SOCK_CLOEXEC and MSG_CMSG_CLOEXEC.
- Implement wl_os_socket_peercred() using LOCAL_PEERPID for macOS.
- Ensure availability of struct itimerspec (required for POSIX Timers API).

Test suite fixes:
- Add socketpair_cloexec() wrapper to handle platforms without atomic
  SOCK_CLOEXEC support.
- Add implementation of memrchr() for platforms that do not provide it.
- Implement is_debugger_attached() for macOS to handle test timeouts.
- Fix tests to handle Mach-O binary format (instead of ELF).
- Update egl-symbols-check to support macOS *.dylib Mach-O libraries.

Build system:
- Add meson option 'xml_catalog' to allow specifying custom catalog paths.

Signed-off-by: Martin Lopatář <lopin@dataplex.cz>
2026-04-17 06:01:03 +02:00
..
.gitignore ignore: Add *.dtd.embed 2016-03-10 22:24:20 -08:00
connection.c build: Fix build and tests on macOS 2026-04-17 06:01:03 +02:00
embed.py build: replace assembly embedding with Python script 2021-05-10 22:08:45 +00:00
event-loop.c build: Fix build and tests on macOS 2026-04-17 06:01:03 +02:00
meson.build build: Bump to meson version 0.64.0 2025-11-27 17:39:11 +02:00
scanner.c scanner: Remove now unused arg_count 2026-04-14 15:11:51 +03:00
timespec-util.h timespec: Implement saturating timespec substraction 2025-02-04 14:09:51 +00:00
wayland-client-core.h client: add wl_display_dispatch_pending_single 2025-09-16 11:48:33 +03:00
wayland-client.c build: Fix build and tests on macOS 2026-04-17 06:01:03 +02:00
wayland-client.h doc: Formalize file comment in wayland-client.h, wayland-server.h 2016-05-11 11:03:27 -07:00
wayland-os.c build: Fix build and tests on macOS 2026-04-17 06:01:03 +02:00
wayland-os.h shm: Add mmap+memmove fallback if mremap() does not exist 2021-09-10 11:35:54 +00:00
wayland-private.h connection: Add a function to parse WAYLAND_DEBUG tokens 2025-09-15 14:45:53 +01:00
wayland-server-core.h Add wl_fixes.ack_global_remove() 2026-03-24 13:45:00 +02:00
wayland-server-private.h Move wl_priv_signal to wayland-server-private.h 2019-11-06 08:24:14 -06:00
wayland-server.c Send wl_registry.global_remove to global's offer list 2026-03-24 13:45:00 +02:00
wayland-server.h Put WL_DEPRECATED in front of the function declarations 2024-08-09 20:25:11 +00:00
wayland-shm.c shm: linkify function references in docs 2025-05-20 20:14:52 +00:00
wayland-util.c util: fix use-after-free in for_each_helper 2026-03-30 08:52:42 +08:00
wayland-util.h connection: Do not busy-loop if a message exceeds the buffer size 2025-06-21 11:29:04 +00:00
wayland-version.h.in src: Update boilerplate from MIT X11 license to MIT Expat license 2015-06-12 15:31:24 -07:00