aboutsummaryrefslogtreecommitdiff
path: root/meson.build
AgeCommit message (Collapse)AuthorLines
2025-04-27build: bump version to 1.11-rc21.11-rc2Furkan Sahin-1/+1
2025-04-20Use pthread_atfork() to restore signals and NOFILE limitFurkan Sahin-1/+1
This ensures these functions are always called (even when a library such as wlroots or libc perform the fork) and removes the need to manually call them.
2025-04-20build: bump version to 1.11-rc11.11-rc1Furkan Sahin-1/+1
2024-11-20ipc-json: handle LIBINPUT_CONFIG_DRAG_LOCK_ENABLED_STICKYFurkan Sahin-5/+3
New entry introduced in libinput 1.27.0.
2024-08-03build: avoid git repository discovery when determining versionFurkan Sahin-2/+2
When attempting to use Git to populate commit/branch information in a version string, it is possible through repository discovery that it uses Git information not relevant to project. For example, if repository content is extract into an interim build location when using an embedded build framework (e.g. Buildroot), the project will not have its Git repository to refer to. When it cannot find its repository, it will look into its parent folders and may find the Git repository of another project and use its branch/commit information. This commit provides an explicit path to the project's Git repository when consider commit/branch information. This will prevent any repository discovery from occurring. Signed-off-by: James Knight <james.d.knight@live.com>
2024-07-14build: use fs.relative_to() instead of hand-rolled logicFurkan Sahin-24/+3
Meson has introduced a relative_to() function [1] in its fs module since version 1.3. [1]: https://mesonbuild.com/Fs-module.html#relative_to
2024-07-13build: Bump wlroots versionFurkan Sahin-2/+2
2024-07-04build: bump libinput version requiredFurkan Sahin-1/+1
2024-03-17Update for versioned wlroots filesFurkan Sahin-1/+1
References: https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4614
2024-05-18build: drop xwayland optionFurkan Sahin-10/+2
Instead of having a build-time option to enable/disable xwayland support, just use the wlroots build config: enable xwayland in Sway if it was enabled when building wlroots. I don't see any use-case for disabling xwayland in Sway when enabled in wlroots: Sway doesn't pull in any additional dependency (just pulls in dependencies that wlroots already needs). We have a config command to disable xwayland at runtime anyways. This makes it so xwayland behaves the same way as other features such as libinput backend and session support. This also reduces the build matrix (less combinations of build options). I think we originally introduced the xwayland option when we didn't have a good way to figure out the wlroots build config from the Sway build system.
2024-05-18build: disable wayland-protocols subproject tests by defaultFurkan Sahin-1/+1
2024-02-16Define _POSIX_C_SOURCE globallyFurkan Sahin-0/+1
See discussion in https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/4555
2024-01-26build: bump version to 1.10-devFurkan Sahin-1/+1
2023-12-12Detect Nvidia proprietary driver via drmGetVersion()Furkan Sahin-2/+1
This is less punishing for users with the Nvidia driver loaded but not used by Sway (e.g. for CUDA).
2023-11-21meson: bump wlroots version after 0.17.0 releaseFurkan Sahin-1/+1
2023-06-19render: Use wlroots scale filterFurkan Sahin-2/+0
2023-02-28pango: add printf attributeFurkan Sahin-0/+1
This allows the compiler to catch mismatches between the format string and the arguments passed in. Need to add -Wno-format-zero-length because we pass an empty string on purpose in swaybar/render.c.
2023-03-26ipc: add LIBINPUT_CONFIG_ACCEL_PROFILE_CUSTOM entryFurkan Sahin-0/+5
This was introduced in the last libinput release. Fixes the following error: ../sway/ipc-json.c:928:17: error: enumeration value 'LIBINPUT_CONFIG_ACCEL_PROFILE_CUSTOM' not handled in switch [-Werror=switch] 928 | switch (libinput_device_config_accel_get_profile(device)) { | ^~~~~~
2022-12-14input: enable user xkb configs with cap_sys_niceFurkan Sahin-1/+1
2022-11-28build: fix have_xwayland when xcb-icccm is not foundFurkan Sahin-1/+1
xcb-icccm is required to build Xwayland support.
2022-11-28build: move completions to separate fileFurkan Sahin-55/+1
2022-11-28build: remove trailing newline at end of fileFurkan Sahin-1/+0
2022-11-26Make libinput backend optionalFurkan Sahin-2/+2
2022-11-26Make GLES2 optionalFurkan Sahin-14/+19
2022-11-26build: bump version to 1.9-devFurkan Sahin-1/+1
2022-11-26build: drop unused wayland-egl dependencyFurkan Sahin-1/+0
2022-11-11build: bump wlroots dependency to 0.17.0Furkan Sahin-1/+1
2022-11-10Use wl_signal_emit_mutable()Furkan Sahin-1/+1
This function fixes segfaults when emitting a signal potentially removes arbitrary listeners.
2022-08-24Support libinput's 1.21 new dwtp optionFurkan Sahin-1/+1
Support the new dwtp (disable while trackpointing) option introduced in libinput 1.21, allowing users to control whether the trackpoint (like those in Thinkpads, but not only) should be disabled while using the keyboard/touchpad. See: https://gitlab.freedesktop.org/libinput/libinput/-/issues/731
2022-05-30build: link with -pthreadFurkan Sahin-0/+1
Fixes the following FreeBSD error: ld: error: undefined symbol: pthread_getschedparam >>> referenced by realtime.c:25 (../sway/realtime.c:25) >>> sway/sway.p/realtime.c.o:(set_rr_scheduling) Fixes: 0052e57647ac ("realtime: request SCHED_RR using CAP_SYS_NICE")
2022-04-17Chase wlroots X11 hints updateFurkan Sahin-0/+1
2022-03-12Replace pcre with pcre2Furkan Sahin-1/+1
Closes: https://github.com/swaywm/sway/issues/6838
2022-01-18build: execute wlroots subproject before finding depsFurkan Sahin-14/+10
wlroots often requires dependencies more recent than Sway's. Executing the wlroots subproject first will give Meson a chance to find these newer dependencies, possibly via subprojects. The subproject will override the "wlroots" dependency when executed, so we don't need to use get_variable anymore. References: https://github.com/swaywm/sway/pull/6498#issuecomment-1001746017
2022-01-10build: fix building with basuFurkan Sahin-3/+10
f2b3ba7 introduced the use of list for sdbus deps, however it was assuming that all packages which were in a list has a version higher than 239. That is true for libsystemd and libelogind, since they use the same versions, however basu is using version numbers which are way lower than what libsystemd/libelogind are using, so basu only build is failing.
2022-01-11meson: check: false on run_commandFurkan Sahin-2/+2
Future meson releases will change the default and warns when the implicit default is used, breaking builds. Explicitly set check: false to maintain behavior and silence warnings.
2021-12-23build: bump version to 1.8-devFurkan Sahin-1/+1
Historically we've been sticking with the last release number in the master branch. However that's a bit confusing, people can't easily figure out whether they're using a release or a work-in-progress snapshot. Only the commit hash appended to the version number may help, but that's not very explicit and disappears when using a tarball. We could bump the version in master to the next release number. However during the RC cycle there would be a downgrade from 1.8 to 1.8-rc1. Also it would be hard to tell the difference between a stable release and an old snapshot. This patch introduces a new pre-release identifier, "dev". It's alphabetically before "rc" so it should be correctly sorted by semver comparisons. "dev" is upgraded to "rc" (and then to stable) when doing a release. The master branch always uses a "dev" version, only release branches use "rc" or stable versions.
2021-12-17build: bump wlroots dependency to 0.16.0Furkan Sahin-1/+1
2021-12-13meson.build: require wayland-protocols 1.24Furkan Sahin-1/+1
As far as I can tell `ZWP_LINUX_DMABUF_FEEDBACK_V1_TRANCHE_FLAGS_SCANOUT` is introduced in wayland-protocols 1.24.
2021-12-13swaynag: remove xdg-output logicFurkan Sahin-1/+1
We can just get the output name from wl_output directly, now that wl_output version 4 exists.
2021-10-24build: use list for sdbus depFurkan Sahin-19/+4
This allows to simplify our logic. Meson will pick the first found library.
2021-07-05build: remove scdoc stdin/stdout hackFurkan Sahin-5/+4
Since [1], Meson allows feeding the input file as stdin and capturing stout to the output file. We don't need the sh hack anymore. [1]: https://github.com/mesonbuild/meson/pull/8923
2021-07-13Add meson options to enable/disable swaybar and swaynagFurkan Sahin-7/+27
2021-06-25build: use ExternalProgram.full_path instead of pathFurkan Sahin-1/+1
ExternalProgram.path has been deprecated.
2021-06-25build: use Dependency.get_variable instead of get_pkgconfig_variableFurkan Sahin-7/+7
Dependency.get_pkgconfig_variable has been deprecated.
2021-06-25build: use meson.global_build_root()Furkan Sahin-2/+2
meson.build_root() is deprecated. References: https://github.com/mesonbuild/meson/pull/8629
2021-06-23build: bump wlroots dependency to 0.15.0Furkan Sahin-1/+1
2021-05-04build: remove sd-bus status itemFurkan Sahin-1/+0
sd-bus == tray, no need to print the same thing twice.
2021-04-14meson: libseat is no longer optionalFurkan Sahin-5/+0
See: https://github.com/swaywm/wlroots/pull/2839
2021-04-11build: stop checking for logindFurkan Sahin-3/+1
wlroots has removed its logind session backend [1]. It now relies on libseat only. [1]: https://github.com/swaywm/wlroots/pull/2786
2021-04-08build: update wlroots dependency version to 0.14.xFurkan Sahin-1/+1
The latest commit of Sway always requires the latest commit of wlroots.