summaryrefslogtreecommitdiff
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Merge pull request #23542 from medhefgo/attributesYu Watanabe2022-05-301-0/+3
|\ \ \ | | | | | | | | meson: Document why -Wimplicit-fallthrough is not used with clang
| * | | meson: Document why -Wimplicit-fallthrough is not used with clangJan Janssen2022-05-281-0/+3
| | | | | | | | | | | | | | | | | | | | This changes the macro to ensure proper fallthrough attributes are used with clang in case this option is added in the future.
* | | | meson: exclude pcre2 when dependencies are skippedEvgeny Vereshchagin2022-05-291-1/+1
| | | |
* | | | Move homectl and userdbctl to bindirMichael Biebl2022-05-281-4/+2
|/ / / | | | | | | | | | Those binaries aren't needed during early boot.
* | | Merge pull request #23414 from keszybz/analyze-vercmpZbigniew Jędrzejewski-Szmek2022-05-231-1/+8
|\ \ \ | | | | | | | | systemd-analyze compare-versions
| * | | test-compare-versions: basic test for systemd-analyze compare-versionsZbigniew Jędrzejewski-Szmek2022-05-191-1/+8
| | | |
* | | | resolved: default to OpenSSLLuca Boccassi2022-05-211-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If both gnutls and openssl are available, prefer openssl. We are gradually moving toward supporting openssl only as the crypto library, and the resolved gnutls backend will be dropped at some point, so start nudging users toward the openssl one.
* | | | tree-wide: Update homepage to systemd.ioBenjamin Franzke2022-05-211-1/+1
|/ / /
* | | meson: add 'pam' install_tag to pam modulesMike Gilbert2022-05-161-0/+2
| | |
* | | meson: use fs.name() and fs.parent()Yu Watanabe2022-05-161-16/+2
| | | | | | | | | | | | Follow-up for 1bd0cc452ce1cbfb330db6b0855e178b4814e7de.
* | | meson: always use ExternalProgram.path()Yu Watanabe2022-05-161-5/+1
| | | | | | | | | | | | | | | | | | | | | Even if we use meson >= 0.55, using path() does not produce any error or warning if the required version is below 0.55. Let's convert path() with full_path() when we requires meson >= 0.55.
* | | meson: disable bpf if skip-deps is enabledYu Watanabe2022-05-161-1/+1
| | |
* | | meson: use boolean for configuration_data.set10()Yu Watanabe2022-05-161-1/+1
| | | | | | | | | | | | | | | | | | | | | Setting with number is deprecated: ``` meson.build:1008: DEPRECATION: configuration_data.set10 with number. the `set10` method should only be used with booleans ```
* | | meson: use better shellscript argument passingEli Schwartz2022-05-161-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing potentially arbitrary data into a shellscript is potentially very broken if you do not correctly quote it for use. This quoting must be done as part of the interpretation of the data itself, e.g. python's shlex.quote; simply formatting it into a string with double quotes is NOT sufficient. An alternative is to communicate the data reliably via argv to the shell process, and allow the shell to internally handle it via `"$1"`, which is quote-safe and will expand the data from argv as a single tokenized word.
* | | meson: add 'nss' install_tag to nss modulesMike Gilbert2022-05-141-1/+4
|/ /
* | fuzzers: ignore size limits when compiled standaloneZbigniew Jędrzejewski-Szmek2022-05-121-0/+5
| | | | | | | | | | This way we can still call fuzzers on old samples, but oss-fuzz will not waste its and our time finding overly large inputs.
* | meson: turn on log-message-verification by default in developer buildsZbigniew Jędrzejewski-Szmek2022-05-111-1/+7
| | | | | | | | | | I'm not _quite_ convinced that this a good idea… I'm at least keeping it separate to make it easy to revert ;)
* | Optionally call printf on LOG_MESSAGE() argumentsZbigniew Jędrzejewski-Szmek2022-05-111-0/+1
| | | | | | | | | | | | | | | | | | With an intentional mistake: ../src/login/logind-dbus.c: In function ‘bus_manager_log_shutdown’: ../src/login/logind-dbus.c:1542:39: error: format ‘%s’ expects a matching ‘char *’ argument [-Werror=format=] 1542 | LOG_MESSAGE("%s %s", message), | ^~~~~~~
* | Merge pull request #23272 from keszybz/logind-man-and-rulesYu Watanabe2022-05-071-1/+0
|\ \ | | | | | | Logind man and rules
| * | meson: move vconsole rules to rules.d/Zbigniew Jędrzejewski-Szmek2022-05-051-1/+0
| |/
* | meson: Use meson test suite featureJan Janssen2022-05-041-0/+7
| | | | | | | | | | | | This makes it easier to only test a subset of tests without having to specify them all on the command line: meson test -C build --suite headers
* | meson: Remove check-compilation.shJan Janssen2022-05-041-1/+0
|/ | | | | | | | | No need to involve a trivial shell script for this. We could call the compiler directly, but test() expects arguments to be passed separately and cc.cmd_array() can contain arguments itself. Using env is easier than manually slicing the array because meson has no builtins for that.
* meson: also check c_args to maybe add -Wno-maybe-uninitializedZbigniew Jędrzejewski-Szmek2022-04-291-2/+8
| | | | | | People (and build systems) sometimes set flags through -Dc_args=… or $CFLAGS. Let's catch this common case too. meson will set c_args from $CFLAGS, so we only need to check the former.
* meson: add install_tag to sd-boot, libsystemd and libudevLuca Boccassi2022-04-271-0/+4
| | | | | | | | | | | | | | | | | Allows to 'meson install --tags systemd-boot --no-rebuild' to install only the EFI binaries, skipping the rest, for a very quick build: $ ninja src/boot/efi/linuxx64.efi.stub [21/21] Generating src/boot/efi/linuxx64.efi.stub with a custom command $ ninja src/boot/efi/systemd-bootx64.efi [10/10] Generating src/boot/efi/systemd-bootx64.efi with a custom command $ DESTDIR=/tmp/foo meson install --tags systemd-boot --no-rebuild Installing src/boot/efi/systemd-bootx64.efi to /tmp/foo/usr/lib/systemd/boot/efi Requires Meson 0.60 to be used, prints a warning for unknown keyword in earlier versions, but there's no failure https://mesonbuild.com/Installing.html#installation-tags
* meson: also use COMPRESSION_NONE for default compressionYu Watanabe2022-04-271-3/+1
|
* meson: show default compression method in summaryYu Watanabe2022-04-271-0/+1
|
* basic: move compress.[ch] → src/basic/Lennart Poettering2022-04-261-8/+9
| | | | | | | | | | | | The compression helpers are used both in journal code and in coredump code, and there's a good chance we'll use them later for other stuff. Let's hence move them into src/basic/, to make them a proper internal API we can use from everywhere where that's desirable. (pstore might be a candidate, for example) No real code changes, just some moving around, build system rearrangements, and stripping of journal-def.h inclusion.
* meson: use a single constant for default compression settingZbigniew Jędrzejewski-Szmek2022-04-221-3/+3
| | | | | | | | | | Suggested by Daniele Nicolodi: https://github.com/systemd/systemd/pull/23160#discussion_r855853716 This is possible only if the macro is never used in #if, but only in C code. This means that all places that use #if have to be refactored into C, but we reduce the duplication a bit, and C is nicer to read than preprocessor conditionals.
* meson: simplify setting of default compressionZbigniew Jędrzejewski-Szmek2022-04-221-8/+3
| | | | | | | | | | | | | | | | | Follow-up for da13d2ca0731b413841663052f2cc6832a855334. Instead of having separate definitions of the bitmask flags, just define DEFAULT_COMPRESSION_FOO=0|1 directly. (It *should* be possible to do this more simply, but the problem is that anything that is used in #if cannot refer to C constants or enums. This is the simplest I could come up with that preserves the property that we don't use #ifdef.) The return value from compress_blob() is changed to propagate the error instead of always returning -EOPNOTSUPP. The callers don't care about the specific error value. compress_blob_*() are changed to return the compression method on success, so that compress_blob() can be simplified. compress_stream_*() and compress_stream() are changed in the same way for consistency, even though the callers do not currently use this information (outside of tests).
* compression: add separate pre-processor definitionsLuca Boccassi2022-04-191-5/+8
| | | | | | | | | Follow-up for https://github.com/systemd/systemd/commit/cd3c6322dbc6370448bafc216ee4e19e32a79d9e journal-def.h should be self-contained too, as it represents the journal object ABI. Duplicate the enums, as they also need to be in config.h for it to be self-contained, and enums are not available to the preprocessor. Use an assert to ensure they don't diverge.
* compression: add build-time option to select defaultLuca Boccassi2022-04-181-0/+24
| | | | | | | | | Compression and decompression are controlled by the same build flag, so if one wants to use, say, LZ4 to compress, ZSTD has to be disabled, which means one loses the ability to read zstd-compressed journals. Add a default-compression meson option, that allows to select any of the available compression algorithms as the default.
* Add test support for systemd-tmpfiles.standaloneMike Gilbert2022-04-181-1/+9
|
* meson: explicitly include coverage tweaks when built w/ --coverageFrantisek Sumsal2022-04-091-3/+7
| | | | | | | | | To make sure we don't miss any _exit() calls let's move the coverage-related tweaks into a separate header file and include it explicitly on the compiler command line using -include when a coverage build is requested. Follow-up to c6552ad381003a23cde7c3228e7071f30465df35.
* Merge pull request #23000 from mrc0mmand/coverage__exitFrantisek Sumsal2022-04-071-0/+3
|\ | | | | macro: call __gcov_dump() before _exit() w/ coverage enabled
| * macro: call __gcov_dump() before _exit() w/ coverage enabledFrantisek Sumsal2022-04-071-0/+3
| | | | | | | | | | | | | | _exit() skips at-exit hooks, causing lost coverage from processes utilizing it. Hopefully resolves systemd/systemd-centos-ci#482
* | meson: make kernel-install a template file, add --version, add to testsZbigniew Jędrzejewski-Szmek2022-04-051-0/+9
| | | | | | | | | | | | | | In --help output, change "$0" → "kernel-install". We generally don't include the full path in --help output, and let's not do this here either. kernel-install is now in build/ directly, not in the subdirectory.
* | meson: also allow setting GIT_VERSION via templatesZbigniew Jędrzejewski-Szmek2022-04-051-0/+2
| | | | | | | | | | | | | | | | | | GIT_VERSION is not available as a config.h variable, because it's rendered into version.h during builds. Let's rework jinja2 rendering to also parse version.h. No functional change, the new variable is so far unused. I guess this will make partial rebuilds a bit slower, but it's useful to be able to use the full version string.
* | test: do --help/--version checks for systemd, firstboot, cryptenroll, s-n-w-oZbigniew Jędrzejewski-Szmek2022-04-051-4/+6
| | | | | | | | | | I basically went by the list in systemd.directives for --help/-h. kernel-install is also listed there, but will be added in a later commit.
* | tests: add a smoke test for --version option in binariesZbigniew Jędrzejewski-Szmek2022-04-051-0/+7
|/ | | | | | | This is very similar to (and directly based on) the test for --help. I think it's nice to do this: the test is very quick, but it'll catch cases where we forgot to hook up the option, or forgot to exit after printing --version, and it'll also increase our test coverage a bit.
* partition: use `udevadm wait`Frantisek Sumsal2022-04-041-22/+23
|
* meson: build kernel-install man page when necessaryFranck Bui2022-03-311-1/+4
|
* Merge pull request #22649 from ↵Zbigniew Jędrzejewski-Szmek2022-03-291-2/+12
|\ | | | | | | | | keszybz/symlink-enablement-yet-again-punish-me-harder Fixups to the unit enablement logic
| * test-systemctl-enable: also use freshly-built systemd-id128Zbigniew Jędrzejewski-Szmek2022-03-291-9/+12
| | | | | | | | Tests were failing on centos7 because systemd-id128 is not in path.
| * test: add test for systemctl link & enableZbigniew Jędrzejewski-Szmek2022-03-291-1/+8
| | | | | | | | | | | | This test has overlap with test-install-root, but it tests things at a different level, so I think it's useful to add. It immediately shows various bugs which will be fixed in later patches.
* | meson: bump numbers for v251-rc1Zbigniew Jędrzejewski-Szmek2022-03-291-3/+3
| |
* | Use new default-user-shell option instead of hard-coding bash in nspawn and ↵наб2022-03-281-0/+4
|/ | | | | | | | | | | user-record Defaults to /bin/bash, no changes in the default configuration The fallback shell for non-root users is as-specified, and the interactive shell for nspawn sessions is started as exec(default-user-shell, "-" + basename(default-user-shell), ...) before falling through to bash and sh
* meson: Detect python instead of hard-coding python3Heiko Becker2022-03-231-1/+2
| | | | | It allows to specify the desired python executable (and version) via meson's native file if there are multiple versions available.
* meson: replace sh+find with an internal glob in the python helperZbigniew Jędrzejewski-Szmek2022-03-231-0/+1
| | | | | | | | As suggested in https://github.com/systemd/systemd/pull/22810#discussion_r831708052 This makes the whole thing simpler. A glob is passed to helper which then resolves it on its own. This way it's trivial to call the helper with a different set of files for testing.
* sysupdate: add new component "sysupdate"Lennart Poettering2022-03-191-0/+30
|
* meson: move to c_std=gnu11Yu Watanabe2022-03-111-1/+1
| | | | | | | | | Recently, the kernel communitiy started to discuss to move C11 (gnu11) [1], and it seems to come near future. Let's also move to c_std=gnu11. Unlike the kernel, we already uses gnu99, hence hopefully we can move to C11 without changing anything. [1] https://lore.kernel.org/lkml/CAHk-=wiyCH7xeHcmiFJ-YgXUy2Jaj7pnkdKpcovt8fYbVFW3TA@mail.gmail.com/