aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* meson: make net.naming-scheme= default configurableZbigniew Jędrzejewski-Szmek2018-12-121-0/+3
| | | | | | | | | | | | | | | | This is useful for distributions, where the stability of interface names should be preseved after an upgrade of systemd. So when some specific release of the distro is made available, systemd defaults to the latest & greatest naming scheme, and subsequent updates set the same default. This default may still be overriden through the kernel and env var options. A special value "latest" is also allowed. Without a specific name, it is harder to verride from meson. In case of 'combo' options, meson reads the default during the initial configuration, and "remembers" this choice. When systemd is updated, old build/ directories could keep the old default, which would be annoying. Hence, "latest" is introduced to make it explicit, yet follow the upstream. This is actually useful for the user too, because it may be used as an override, without having to actually specify a version.
* meson: also add option for debugging siphashYu Watanabe2018-11-231-1/+1
|
* meson: add option for debugging udevYu Watanabe2018-11-231-1/+1
|
* main: bump fs.nr_open + fs.max-file to their largest possible valuesLennart Poettering2018-10-171-0/+4
| | | | | | | | | | After discussions with kernel folks, a system with memcg really shouldn't need extra hard limits on file descriptors anymore, as they are properly accounted for by memcg anyway. Hence, let's bump these values to their maximums. This also adds a build time option to turn thiss off, to cover those users who do not want to use memcg.
* meson: add -Dlog-trace to set LOG_TRACEZbigniew Jędrzejewski-Szmek2018-10-021-0/+2
| | | | | | The justification is the same as for -Dvalgrind: setting config in meson in this way is easier, because when the value is changed stuff that should be rebuilt is rebuilt.
* meson: use an array option for efi-ccMike Gilbert2018-09-301-1/+1
| | | | Fixes: https://github.com/systemd/systemd/issues/10211
* meson: use the host architecture compiler/linker for src/boot/efiHelmut Grohne2018-09-281-2/+2
| | | | | | | | | | cross building systemd to arm64 presently fails, because the build system uses plain gcc and plain ld (build architecture compiler and linker respectively) for building src/boot/efi. These values come from the efi-cc and efi-ld options respectively. It rather should be using host tools here. Fixes: b710072da441 ("add support for building efi modules")
* meson: rename -Ddebug to -Ddebug-extraZbigniew Jędrzejewski-Szmek2018-08-201-1/+1
| | | | | | | Meson added -Doptimization and -Ddebug options, which obviously causes a conflict with our -Ddebug options. Let's rename it. Fixes #9883.
* meson: actually honor pkgconfig*dir options (#9841)Benedikt Morbach2018-08-101-1/+1
| | | | both were silently ignored leading to some of the pkg-config files ending up in the wrong place
* resolved: basic OpenSSL support for DNS-over-TLSIwan Timmer2018-07-271-1/+3
| | | | | | This provides basic OpenSSL support without optimizations like TCP Fast Open and TLS Session Tickets. Notice only a single SSL library can be enabled at a time and therefore journald functions provided by GnuTLS will be disabled when using OpenSSL. Fixes #9531
* meson: use integer type in optionsYu Watanabe2018-07-241-20/+15
| | | | | | This bumps the minimum required version of meson to 0.45 and python to 3.5, as integer type option is supported since meson-0.45 and meson-0.45 requires python-3.5.
* meson: allow building resolved and machined without nss modulesYu Watanabe2018-07-231-4/+8
| | | | | | | | | | | This adds -Dnss-resolve= and -Dnss-mymachines= meson options. By using this option, e.g., resolved can be built without nss-resolve. When no nss modules are built, then test-nss is neither built. Also, This changes the option name -Dmyhostname= to -Dnss-myhostname= for consistency to other nss related options. Closes #9596.
* tree-wide: use "polkit" to refer to PolicyKit/polkitZbigniew Jędrzejewski-Szmek2018-07-161-1/+1
| | | | | | | | | | | Back in 2012 the project was renamed, see the release notes for v 0.105 [https://cgit.freedesktop.org/polkit/tree/NEWS#n754]. Let's update our documentation and comments to do the same. Referring to PolicyKit is confusing to users because at the time the polkit api changed too, and we support the new version. I updated NEWS too, since all the references to PolicyKit there were added after the rename. "PolicyKit" is unchanged in various URLs and method call names.
* meson: drop unused optionYu Watanabe2018-06-241-1/+0
| | | | Follow-up for add384dd4d2b96db6ace5ad9c52b1dd7553ebec2.
* meson: make DNS-over-TLS support optionalYu Watanabe2018-06-201-0/+2
| | | | | This adds dns-over-tls option to meson. If set to 'false', systemd-resolved is not linked with libgnutls.
* Drop my copyright headersZbigniew Jędrzejewski-Szmek2018-06-141-2/+0
| | | | | | | perl -i -0pe 's/\s*Copyright © .... Zbigniew Jędrzejewski.*?\n/\n/gms' man/*xml git grep -e 'Copyright.*Jędrzejewski' -l | xargs perl -i -0pe 's/(#\n)?# +Copyright © [0-9, -]+ Zbigniew Jędrzejewski.*?\n//gms' git grep -e 'Copyright.*Jędrzejewski' -l | xargs perl -i -0pe 's/\s*\/\*\*\*\s+Copyright © [0-9, -]+ Zbigniew Jędrzejewski[^\n]*?\s*\*\*\*\/\s*/\n\n/gms' git grep -e 'Copyright.*Jędrzejewski' -l | xargs perl -i -0pe 's/\s+Copyright © [0-9, -]+ Zbigniew Jędrzejewski[^\n]*//gms'
* tree-wide: beautify remaining copyright statementsLennart Poettering2018-06-141-1/+1
| | | | | | Let's unify an beautify our remaining copyright statements, with a unicode ©. This means our copyright statements are now always formatted the same way. Yay.
* resolve: rename PrivateDNS to DNSOverTLSIwan Timmer2018-06-141-2/+2
| | | PrivateDNS is not considered a good name for this option, so rename it to DNSOverTLS
* resolved: support for DNS-over-TLSIwan Timmer2018-06-111-0/+4
| | | | Add support for DNS-over-TLS using GnuTLS. To reduce latency also TLS False Start and TLS session resumption is supported.
* build-sys: Add option to link systemctl staticallyFelipe Sateler2018-05-311-0/+2
| | | | | | | | | | | | | | | | | Systemctl is special because it is required for many tasks that may need to be performed when the system is not fully configured and/or partially broken: 1. Installing/Uninstalling services during OS installs and upgrades 2. Shutting down the system Therefore reduce the number of dependencies that systemctl pulls in, by not linking to systemd-shared. This brings a bit of resilience to systemctl (and its aliases shutdown, reboot, etc), by linking against less external libraries. Because this extra resilience comes at a cost of approximately 580 KB extra space, this is done behind a meson build option.
* add new portable service frameworkLennart Poettering2018-05-241-0/+2
| | | | | | | | | | | This adds a small service "systemd-portabled" and a matching client "portablectl", which implement the "portable service" concept. The daemon implements the actual operations, is PolicyKit-enabled and is activated on demand with exit-on-idle. Both the daemon and the client are an optional build artifact, enabled by default rhough.
* Turn VALGRIND variable into a meson configuration switchZbigniew Jędrzejewski-Szmek2018-05-171-0/+2
| | | | | | | | | | Configuration through environment variable is inconvenient with meson, because they cannot be convieniently changed and/or are not preserved during reconfiguration (https://github.com/mesonbuild/meson/issues/1503). This adds -Dvalgrind=true/false, which has the advantage that it can be set at any time with meson configure -Dvalgrind=... and ninja will rebuild targets as necessary. Additional minor advantages are better consistency with the options for hashmap debugging, and typo avoidance with '#if' instead of '#ifdef'.
* meson: use array type optionYu Watanabe2018-05-101-2/+2
| | | | Array type option is supported since 0.44.0.
* meson: add support for building static libsystemd and libudevDavide Cavalca2018-05-081-0/+6
|
* tree-wide: drop license boilerplateZbigniew Jędrzejewski-Szmek2018-04-061-13/+0
| | | | | | | | | | Files which are installed as-is (any .service and other unit files, .conf files, .policy files, etc), are left as is. My assumption is that SPDX identifiers are not yet that well known, so it's better to retain the extended header to avoid any doubt. I also kept any copyright lines. We can probably remove them, but it'd nice to obtain explicit acks from all involved authors before doing that.
* Merge pull request #8323 from xyproto/ok_colorZbigniew Jędrzejewski-Szmek2018-03-021-0/+8
|\ | | | | Make the color of the status OK configurable at build-time
| * meson: use dashes in colour namesZbigniew Jędrzejewski-Szmek2018-03-021-3/+3
| |
| * Add build-time option to change the color of the "OK" status textAlexander F Rødseth2018-03-021-0/+8
| |
* | meson: support both separate and merged sbin-bin directoriesZbigniew Jędrzejewski-Szmek2018-03-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow-up for ba7f4ae6178309dc937e10cf7dce0eca9dafb8de. By default, we detect if the real root has a separate /usr/sbin directory, but this can be overrides with -Dsplit-bin=true|false. The check assumes that /usr/sbin is split if it is not a symlink, so it'll return a false negative with some more complicated setups. But that's OK, in those cases this should be configured explicitly. This will copy the structure of the directories in the root file system to $DESTDIR. If a directory is a directory in $DESTDIR but a symlink in the root file system, this script will fail. This means that it's not possible to reuse a $DESTDIR from between ba7f4ae61 and this patch.
* | meson: autodetect split-usrZbigniew Jędrzejewski-Szmek2018-03-011-2/+2
|/ | | | | Also move the status from "features" to the paths section. This is more of an anti-feature.
* meson: add -Dmemory-accounting-default=true|falseZbigniew Jędrzejewski-Szmek2018-02-151-0/+2
| | | | | This makes it easy to set the default for distributions and users which want to default to off because they primarily use older kernels.
* meson.build: make docdir configurable (#8068)tblume2018-02-021-0/+2
| | | SUSE is using a different docdir, so the path should be configurable
* Merge pull request #7881 from keszybz/pcreLennart Poettering2018-01-281-0/+2
|\ | | | | Add new --grep option to journalctl
| * meson: detect pcre2 depZbigniew Jędrzejewski-Szmek2018-01-121-0/+2
| |
* | fuzz: allow building fuzzers outside of oss-fuzzJonathan Rudenberg2018-01-171-0/+2
| | | | | | | | | | | | Add a new -Dllvm-fuzz=true option that can be used to build against libFuzzer and update the oss-fuzz script to work outside of the oss-fuzz build environment.
* | fuzz: add initial fuzzing infrastructureJonathan Rudenberg2018-01-171-0/+3
| | | | | | | | | | | | | | | | The fuzzers will be used by oss-fuzz to automatically and continuously fuzz systemd. This commit includes the build tooling necessary to build fuzz targets, and a fuzzer for the DNS packet parser.
* | add false option for tests (#7778)Adam Duskett2018-01-151-1/+1
|/ | | | | | | | | | | | Currently there is no way to prevent tests from building using meson. This introduces two problems: 1) It adds a extra 381 files to compile. 2) One of these tests explicitly requires libgcrypt to be built even if systemd is not using it. 3) It adds C++ to the requirements to build systemd. When cross-compiling, this is uneccessary.
* meson: don't search PATH for telinit (#7770)Mike Gilbert2018-01-041-1/+2
| | | | | | | | | | | | | | | | On a typical system running systemd, the telinit in PATH is very likely to be a symlink to systemctl. Setting TELINIT to this may result in an infinite recursion if telinit is called and sd_booted() == 0. This may commonly occur in a chroot environment. Bug: https://bugs.gentoo.org/642724 [zj: The path was originally hardcoded as "/lib/upstart/telinit", but was made configurable without changing the default in 4ad61fd1806dde23d2c99043b4bed91a196d2c82. Then the default was changed to `/lib/sysvinit/telinit` in abaaabf40a9891014ed4c402d7beb5a67ac256b1. Then it started being autodetected when meson support was added in 5c23128daba7236a6080383b2a5649033cfef85c. This patch restores the behaviour that was implemented in configure.ac at the time of its removal.]
* build-sys: make the dynamic UID range, and the container UID range configurableLennart Poettering2017-12-061-0/+12
| | | | Also, export these ranges in our pkg-config files.
* sysusers: Provide meson argument to set gid for 'users' group (#7533)Ikey Doherty2017-12-031-0/+2
| | | | | | | | | | To allow better integration with distributions requiring an explicitly set gid for the `users` group, provide the new `-Dusers-gid` option to set to a new numeric value. In the absence of a specified gid, we'll fallback to the default existing behaviour of `-` as the gid value, to automatically assign the next available gid on the system.
* Revert "meson: drop rootprefix option"Zbigniew Jędrzejewski-Szmek2017-11-281-0/+2
| | | | | | | | This reverts commit ee4bfa21f62dbf4d8f2be27d3c763c3c16743bfd. Also add comment so that this doesn't get deleted again by mistake. Replaces #7461.
* Merge pull request #7376 from keszybz/simplify-root-optionsLennart Poettering2017-11-191-2/+0
|\ | | | | Simplify root configuration options
| * meson: drop rootprefix optionZbigniew Jędrzejewski-Szmek2017-11-171-2/+0
| | | | | | | | | | | | | | rootprefixdir is now always set to /usr or /, based on the split-usr setting. Anything else does not work anyway. C.f. #7375.
* | Add license headers and SPDX identifiers to meson.build filesZbigniew Jędrzejewski-Szmek2017-11-191-0/+16
|/ | | | | | | So far I avoided adding license headers to meson files, but they are pretty big and important and should carry license headers like everything else. I added my own copyright, even though other people modified those files too. But this is mostly symbolic, so I hope that's OK.
* udev-rules: Permission changes for /dev/dri/renderD*Tom Stellard2017-11-081-0/+2
| | | | | | | | - Remove the uaccess tag from /dev/dri/renderD*. - Change the owning group from video to render. - Change default mode to 0666. - Add an option to allow users to set the access mode for these devices at compile time.
* udev-rules: Permission changes for /dev/kvmTom Stellard2017-11-081-1/+1
| | | | | - Remove uaccess tag from /dev/kvm. - Change the default mode for /dev/kvm to 0666.
* Merge pull request #6420 from keszybz/gateway-nameLennart Poettering2017-08-011-0/+2
|\ | | | | Rename "gateway" to "_gateway" and other resolved changes
| * resolved,nss-myhostname: use _gateway for the gatewayZbigniew Jędrzejewski-Szmek2017-07-311-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This changes the symbolic name for the default gateway from "gateway" to "_gateway". A new configuration option -Dcompat-gateway-hostname=true|false is added. If it is set, the old name is also supported, but the new name is used as the canonical name in either case. This is intended as a temporary measure to make the transition easier, and the option should be removed after a few releases, at which point only the new name will be used. The old "gateway" name mostly works OK, but hasn't gained widespread acceptance because of the following (potential) conflicts: - it is completely legal to have a host called "gateway" - there is no guarantee that "gateway" will not be registered as a TLD, even though this currently seems unlikely. (Even then, there would be no conflict except for the case when the top-level domain itself was being resolved. The "gateway" or "_gateway" labels have only special meaning when the whole name consists of a single label, so resolution of any subdomain of the hypothetical gateway. TLD would still work OK. ) Moving to "_gateway" avoids those issues because underscores are not allowed in host names (RFC 1123, §2.1) and avoids potential conflicts with local or global names. v2: - simplify the logic to hardcode "_gateway" and allow -Dcompat-gateway-hostname=true as a temporary measure.
* | Merge pull request #6365 from keszybz/fast-testsMartin Pitt2017-07-281-0/+2
|\ \ | | | | | | Make tests faster by default
| * | meson: add option to configure "slow" tests on/offZbigniew Jędrzejewski-Szmek2017-07-131-0/+2
| | | | | | | | | | | | | | | | | | | | | This is just the meson part, no functional change. Use meson -D slow-tests=yes to set the default, or SYSTEMD_SLOW_TESTS=yes build/test-foobar for just one test. Setting the default is more useful for installed tests.