Commit graph

1094 commits

Author SHA1 Message Date
Jan Janssen 40e9c4e45d meson: Convert options to meson features (require)
These options use requre() to conveniently express their dependency
requirements.
2023-08-23 14:45:02 +02:00
Jan Janssen 101b59433b meson: Convert dbus to meson feature
Also, there is no need to conditionalize the get_variable() calls
because not-found dependencies will just return the passed default value
if provided.
2023-08-23 14:45:02 +02:00
Jan Janssen a0c9ac9ae4 meson: Convert options to meson features (find_library fallback)
This uses a two-step approach to make sure we can fall back to
find_library(), while also skipping the detection if the features are
explicitly disabled.
2023-08-23 14:45:02 +02:00
Jan Janssen 9ee80846f8 meson: Convert fidsk to meson feature
By making this a disabler dependency, we can slightly simplify the code
and it als fixes the build for -Dfdisk=disabled as we failed to create a
fallback empty libshared_fdisk variable.
2023-08-23 14:45:02 +02:00
Jan Janssen 43abc59a27 meson: Use feature options
By using meson features we can replace the handcrafted dependency
auto-detection by just passing the value from get_option directly to the
required arg for dependency, find_library etc.
'auto' features make the dependency optional, 'enabled' requires it
while 'disabled' features will skip detection entirely.

Any skipped or not found dependency will just be a no-op when passed to
build steps and therefore we can also skip the creation of empty vars.

The use of skip_deps for these is dropped here as meson provides a way
to disable all optional features in one go by passing
'-Dauto_features=disabled'.
2023-08-23 14:45:02 +02:00
Lennart Poettering bf77d59772 vconsole-setup: use "@kernel" rather than "kernel" as special string to leave keymap untouched
This is a magic string, and we should avoid stepping into the territory
of normal keymap names with that, given that users can pick names
otherwise freely.

Hence, prefix the name with a special char to avoid any namespace
issues.

Follow-up for: #28660
2023-08-11 04:17:57 +09:00
Yu Watanabe 9289e093ae meson: use install_emptydir() and drop meson-make-symlink.sh
The script is mostly equivalent to 'mkdir -p' and 'ln -sfr'.
Let's replace it with install_emptydir() builtin function and
inline meson call.
2023-08-08 22:11:34 +01:00
Mike Yuan ef7f5baae8 vconsole: support KEYMAP=kernel for preserving kernel keymap
Follow-up for #26089 and #28505

Currently, if default-keymap is not empty, there's no way
to ask vconsole-setup to retain the kernel keymap. Let's
accept a special value "kernel" for that purpose.

Addresses the problem mentioned in https://github.com/systemd/systemd/pull/28505#issuecomment-1663681665
2023-08-04 02:20:39 +09:00
Yu Watanabe dc4a00555a meson: set suite for all tests, and adjust suite for some tests 2023-08-03 20:37:16 +09:00
Yu Watanabe cbc55c4cce meson: also merge declarations of fuzzers with other executables 2023-08-03 20:37:16 +09:00
Yu Watanabe 130c87b16a meson: merge declarations of normal and test executables 2023-08-03 20:37:16 +09:00
Yu Watanabe 09fa0a0721 test: rename udev-rule-runner -> test-udev-rule-runner
This partially revert 0454cf05d3.
The executable actually does not work with itself, but needs to be
combined with test-udev.py. But, even so, the executable is for testing.

In the next commit, test and normal executables are declared in the same
way, and naming of the executable becomes essential to classify them.
Let's rename the executable and prefix with 'test-'.
2023-08-03 20:37:16 +09:00
Yu Watanabe 12b4cffdae meson: introduce HAVE_DMI flag
The condition is used at several places. Let's introduce a simple flag
for that.
2023-08-03 20:37:16 +09:00
Yu Watanabe e5cc6d107c meson: move several test declarations
One of the notable change is that previously test-sysusers.sh was installed
unconditionally, but now it is installed only when sysusers is enabled.

Another change is that test-sysv-generator is now re-introduced which
was mistakenly dropped by 6c713961ab.
2023-08-03 20:33:52 +09:00
Yu Watanabe 87e7979de4 meson: move declarations of kernel-install and sulogin-shell 2023-08-01 21:37:31 +09:00
Yu Watanabe 7be6a143da meson: move declarations of networkd and friends 2023-08-01 21:37:31 +09:00
Yu Watanabe eb51c09d13 meson: move declarations of modules-load, nspawn, update-done, and update-utmp 2023-08-01 21:37:31 +09:00
Yu Watanabe 5371c26933 meson: move declarations of socket-proxy, udevadm, quotacheck, and shutdown 2023-08-01 21:37:31 +09:00
Yu Watanabe 6fab49e4ff meson: move declarations of hwdb, sysusers, and tmpfiles 2023-08-01 21:37:31 +09:00
Yu Watanabe 5c707c8cdb meson: move declarations of busctl, stdio-bridge, and run 2023-08-01 21:37:31 +09:00
Yu Watanabe 9f907d305f meson: move declarations of cgls, cgtop, initctl, and systemd-mount 2023-08-01 21:37:31 +09:00
Yu Watanabe cb9356254a meson: move declarations of ask-password and friends 2023-08-01 21:37:31 +09:00
Yu Watanabe e2bdf00a22 meson: move declarations of cgroups-agent, id128, volatile-root, and path 2023-08-01 15:54:45 +09:00
Yu Watanabe 98e39a5561 meson: move declarations of delta, escape, notify, creds, and battery-check 2023-08-01 15:54:45 +09:00
Yu Watanabe 16b081d6ac meson: move declarations of ac-power, detect-virt, sysctl, and sleep 2023-08-01 15:54:45 +09:00
Yu Watanabe 0d6b90b95e meson: move declarations of repart and friends 2023-08-01 15:54:45 +09:00
Yu Watanabe df490fc79b meson: move declarations of fsck, firstboot, machine-id-setup, and remount-fs 2023-08-01 15:54:45 +09:00
Yu Watanabe c8c7877167 meson: move declarations of random-seed, vconsole, and sysupdate 2023-08-01 15:54:45 +09:00
Yu Watanabe 2c2c3daa1a meson: move declarations of pstore, oomd, and binfmt 2023-08-01 15:54:45 +09:00
Yu Watanabe 6872ee2a2c meson: move declarations of coredumpd and friends 2023-08-01 15:54:45 +09:00
Yu Watanabe c26c97af26 meson: move declarations of journal-remote and friends 2023-08-01 15:54:45 +09:00
Yu Watanabe 19361deaea meson: move declarations of machined and friends 2023-08-01 15:54:45 +09:00
Yu Watanabe 269ab341e6 meson: move declarations of timedated and friends 2023-08-01 05:52:50 +09:00
Yu Watanabe 069e7e04ec meson: move declarations of localed and hostnamed 2023-08-01 05:52:50 +09:00
Yu Watanabe 6c713961ab meson: move declarations of several generators 2023-08-01 05:52:50 +09:00
Yu Watanabe 81fe141ba3 meson: move declarations of cryptsetup and friends 2023-08-01 05:52:50 +09:00
Yu Watanabe 7e6ca26fe5 meson: move declarations of backlight, rfkill, and sysupdate-generator 2023-08-01 05:52:50 +09:00
Yu Watanabe bab54d1fde meson: move declarations of homed and friends 2023-08-01 05:52:50 +09:00
Yu Watanabe 250e597fe7 meson: move declarations of userdbd and friends 2023-08-01 05:52:50 +09:00
Yu Watanabe 8c75dfdd40 meson: move declaration of sysext 2023-08-01 05:52:50 +09:00
Yu Watanabe f1d95540ef meson: move declarations of portabled and friends 2023-08-01 05:52:50 +09:00
Yu Watanabe c212163086 meson: move declaration of systemctl 2023-08-01 05:52:50 +09:00
Yu Watanabe 22f37744ca meson: move declaration of socket-activate 2023-08-01 02:31:36 +09:00
Yu Watanabe bd31a348bf meson: move declarations of bootctl and friends
This also drops unnecessary dependency on libblkid from
systemd-boot-check-no-failures.
2023-08-01 02:31:36 +09:00
Yu Watanabe dbab4fb9e5 meson: move declaration of user-sessions 2023-08-01 02:31:36 +09:00
Yu Watanabe b8ed1bf8ee meson: move declarations of logind and friends 2023-08-01 02:31:36 +09:00
Yu Watanabe c19cd86542 meson: move declarations of resolved and friends 2023-08-01 02:31:36 +09:00
Yu Watanabe ec57a4ea49 meson: move declarations of dissect and friends 2023-08-01 02:31:36 +09:00
Yu Watanabe 7409342236 meson: move declarations of hibernate-resume 2023-08-01 02:31:36 +09:00
Yu Watanabe 2a4566203e meson: move declarations of several generators 2023-08-01 02:31:36 +09:00