1
1
mirror of https://github.com/systemd/systemd-stable.git synced 2024-12-24 21:34:08 +03:00
Commit Graph

564 Commits

Author SHA1 Message Date
Zbigniew Jędrzejewski-Szmek
ab6f56debf build-sys: allow building man pages even if disabled in ./configure
This is purely for developer convenience: building man pages is slow
so people tend to disable them when not working on documentation. But
sometimes it is useful to build the man page to look something up,
especially when working on an older machine which has outdated
documentation, or to test some change to documentation. The rules to build
man pages are now outside of the ENABLE_MANPAGES conditional, but they
are not used unless manually invoked, and only the inclusion of man
pages in build and install targets is affected by the conditional.

Also, more generated files are removed in clean, which seems to be
good thing, and Makefile.am is simplified.
2016-01-18 16:19:13 -05:00
Evgeny Vereshchagin
c0957da3f4 build-sys: refactor have_smack detection 2015-12-12 06:08:25 +00:00
Evgeny Vereshchagin
566c9f5ad5 build-sys: fix ./configure --enable-smack
Fixes:

$ ./configure ... --enable-smack
$ make src/core/load-fragment-gperf.c
$ grep -i smack src/core/load-fragment-gperf.c
{"Swap.SmackProcessLabel", config_parse_warn_compat, DISABLED_CONFIGURATION, 0},
...

should be
{"Swap.SmackProcessLabel", config_parse_exec_smack_process_label, 0, offsetof(Swap, exec_context)},
...
2015-12-12 03:53:22 +00:00
Lennart Poettering
b43d75c378 importd: drop dkr support
The current code is not compatible with current dkr protocols anyway,
and dkr has a different focus ("microservices") than nspawn anyway
("whole machine containers"), hence drop support for it, we cannot
reasonably keep this up to date, and it creates the impression we'd
actually care for the microservices usecase.
2015-12-10 16:54:41 +01:00
Tom Gundersen
553947b77c Merge pull request #2129 from poettering/dnssec3
Third DNSSEC patch series
2015-12-10 15:22:18 +01:00
Lennart Poettering
d28ac939c1 build-sys: libgcrypt error messages make no sense without libgpg-error
Hence, pull in this library too, if we need libgcrypt.
2015-12-10 11:28:02 +01:00
Evgeny Vereshchagin
e400d4b3f5 build: fix systemd-journal-upload installation
Fixes:

$ ./configure ... --disable-microhttpd --enable-libcurl
--enable-sysusers
$ make && make install DESTDIR=$(pwd)/INST
$ ls INST/usr/lib/sysusers.d/
basic.conf  systemd.conf

There is no a file with `systemd-journald-upload`
2015-12-09 03:48:56 +00:00
David Herrmann
dd050decb6 build: bump version numbers
Prepare for v228 release and bump version numbers.
2015-11-18 08:59:06 +01:00
Martin Pitt
8218743e1e build-sys: temporarily lower libmount version check
util-linux 2.27.1's configure.ac still claims to be 2.27.0, which breaks our
version check. Lower it back to 2.27.0 until util-linux gets a fixed tarball.

See #1754
2015-11-03 07:25:34 -06:00
Martin Pitt
1d40ddbfd3 core: drop check for /etc/mtab
util-linux 2.27.1 now entirely stops looking at /etc/mtab, so we don't need to
verify /etc/mtab during early boot any more. Later on, tmpfiles.d/etc.conf will
fix /etc/mtab anyway, so there's not even a point in warning about it.

Drop test_mtab() and bump the util-linux dependency to >= 2.17.1.

Fixes #1495
2015-11-02 10:05:20 -06:00
Lennart Poettering
cb181af9b6 Merge pull request #1527 from keszybz/lz4
Using lz4 frame api for coredump files
2015-10-15 13:37:11 +02:00
Zbigniew Jędrzejewski-Szmek
1a2a0ac53b build-sys: enable lz4 by default if available
--enable-lz4 can be used to force lz4 requirement,
--disable-lz4 can be used to skip lz4 support even if available.

Also, make surrounding checks for bzip2, xz, and zlib similar in structure.
This fixes the check for requested but missing bzip2.
2015-10-14 23:16:50 -04:00
Michal Schmidt
e97379dea2 build: libdl is needed only for libnss_resolve
Not everything needs to link to libdl. dlopen+dlsym are used only by
libnss_resolve.
2015-10-14 14:49:18 +02:00
Michal Schmidt
5fd2e22843 build: don't link everything to libcap
The intent of the assignments around the check for libcap was obviously
to avoid polluting LIBS. To work properly, LIBS must be restored from
the save_LIBS variable.

The practical effect is small though, because pretty much everything
links with libbasic, which links with CAP_LIBS.
2015-10-14 14:49:18 +02:00
Michal Schmidt
7f7bfcf3cf build: fix overlinking to libdw
We have two AC_CHECK_LIB checks for libdw. The first one has an empty
action-if-found, so it defaults to adding "-ldw" to LIBS. LIBS are
applied to everything we build. But only systemd-coredump needs libdw.
It already links to ELFUTILS_LIBS correctly in Makefile.am.

Drop the first AC_CHECK_LIB check. The second check is sufficient.

Q: Don't we already use "-Wl,--as-needed" to eliminate overlinking?
A: We do, but it is effective only for executables, not for shared
   libraries. This is due to a libtool bug:
   https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=347650
2015-10-14 14:43:38 +02:00
Zbigniew Jędrzejewski-Szmek
2fd385c670 build-sys: check for xsltproc when building manpages
Only check for xsltproc if it will be used.
If not found, complain.

https://github.com/systemd/systemd/issues/1521
2015-10-12 13:53:55 -04:00
Zbigniew Jędrzejewski-Szmek
898d5660eb build-sys: use pkgconfig and lz4 and bump version
The new frame api was released in v. 125.
2015-10-10 23:00:15 -04:00
Daniel Mack
44f169accf configure.ac: bump version number 2015-10-07 16:39:59 +02:00
Lennart Poettering
e287086b8a ask-password: add support for caching passwords in the kernel keyring
This adds support for caching harddisk passwords in the kernel keyring
if it is available, thus supporting caching without Plymouth being
around.

This is also useful for hooking up "gdm-auto-login" with the collected
boot-time harddisk password, in order to support gnome keyring
passphrase unlocking via the HDD password, if it is the same.

Any passwords added to the kernel keyring this way have a timeout of
2.5min at which time they are purged from the kernel.
2015-10-07 12:26:14 +02:00
Susant Sahani
c3eae485bb missing.h : add bridge params 2015-10-05 09:43:29 +05:30
Lennart Poettering
ae4566a67f Merge pull request #1374 from olof/autoconf_gcrypt_dep
build-sys: only use AM_PATH_LIBGCRYPT macro if it exists
2015-09-24 16:31:49 +02:00
Olof Johansson
79e8bde40d build-sys: only use AM_PATH_LIBGCRYPT macro if it exists
If gcrypt's m4 macro files aren't installed, with this change, gcrypt
will be disabled --- unless gcrypt support was explicitly requested by
passing --enable-gcrypt to configure, in which case it will fail.
Without this change, autoconf would fail either way with not being able
to resolve AM_PATH_LIBGCRYPT.
2015-09-24 14:30:30 +02:00
Jan Engelhardt
e71fadd4dc build: remove AC_FUNC_MALLOC
What is the rationale to have AC_FUNC_MALLOC? It does not actually
abort the configure run if an "unsuitable" malloc was found, and
instead just replaces malloc by rpl_malloc, for which systemd however
has no definition, either.

Remove the call.
2015-09-23 16:25:37 +02:00
Filipe Brandenburger
a01a4517e1 build-sys: Check behavior of -Werror=shadow before deciding to use it
gcc versions 4.6 and earlier used to complain when a local variable
shadows a global function, 4.7 and above only complain if a local
variable shadows a global variable.

Fix this by checking whether gcc 4.7+ behavior is in place before
deciding to use -Werror=shadow in $(CFLAGS), by using a custom test
program source that shadows a global function with a local variable and
confirming that -Werror=shadow does not make the compile to break.

Tested:
- On gcc 4.7 and 4.8, confirmed nothing changed (other than the order of
  the -Werror=shadow argument, going to the end of CFLAGS.)
- On gcc 4.6, confirmed by looking at the config.log output that the
  check for -Werror=shadow failed and it was not included in CFLAGS.
- Ran `make V=1` to confirm -Werror=shadow was still in use, introduced
  a bogus shadowing issue and confirmed it was caught when building with
  a recent gcc.
2015-09-22 09:54:33 -07:00
Karel Zak
d379d44255 mount: use libmount to monitor mountinfo & utab
The current implementation directly monitor /proc/self/mountinfo and
/run/mount/utab files. It's really not optimal because utab file is
private libmount stuff without any official guaranteed semantic.

The libmount since v2.26 provides API to monitor mount kernel &
userspace changes and since v2.27 the monitor is usable for
non-root users too.

This patch replaces the current implementation with libmount based
solution.

Signed-off-by: Karel Zak <kzak@redhat.com>
2015-09-14 09:12:31 +02:00
Sangjung Woo
1fab0cbafc smack: label /etc/mtab as "_" when '--with-smack-run-label' is enabled.
/etc/mtab should be labeled as "_", even though systemd has its own
smack label using '--with-smack-run-label' configuration. This is mainly
because all processes could read that file and the origin of this file
(i.e. /proc/mounts) is labeled as "_". This labels /etc/mtab as "_" when
'--with-smack-run-label' is enabled.
2015-09-10 21:52:39 +09:00
David Herrmann
23d08d1b2b build: prepare for v226
Bump version info and update NEWS for the upcoming release.
2015-09-08 13:31:57 +02:00
Michael Biebl
d6629e64f8 build-sys: remove sphinx binary from configure summary
We no longer use sphinx as part of the build process so remove it from
the configure summary as well.
This is a leftover from commit 2799e519ca.
2015-09-06 19:08:13 +02:00
Jan Alexander Steffens (heftig)
0e3b0a95cc build-sys: Look for gcc-* binutils wrappers only if we're using GCC
If we don't look for them, LT_INIT will and default to the unprefixed
tools.

Apparently clang doesn't like the wrappers being used. Should fix #1077.
2015-09-01 13:27:42 +02:00
Kay Sievers
1aa28c9521 build-sys: bump versions 2015-08-26 16:09:17 +02:00
Zbigniew Jędrzejewski-Szmek
b32545ff19 build-sys: line-wrap message about google servers
This way it is more readable in a wall of configure output.
2015-08-06 21:43:22 -04:00
Zbigniew Jędrzejewski-Szmek
a5ba84b7f2 build-sys: allow skipping installation of completions
./configure --with-bashcompletiondir=no or --without-bashcompletiondir
now works as expected. Similarly for zsh.

https://github.com/systemd/systemd/issues/533
2015-08-05 20:16:34 -04:00
David Herrmann
11811e856b build: bump version to 224
Prepare for bug-fix release and bump versions.
2015-07-31 18:13:57 +02:00
Johannes Nixdorf
182247ea92 build-sys: use 'test -f' instead of AC_CHECK_FILE
AC_CHECK_FILE fails when cross-compiling. It is intended to be used to
check for files that are used at runtime during build time (e.g.
/etc/passwd, /dev/*) [1]. For files which are only used at build time
'test -f' is sufficient.

[1]: https://lists.gnu.org/archive/html/autoconf/2000-10/msg00018.html
2015-07-31 13:38:49 +02:00
David Herrmann
39d1a2d05d build: bump version info
Bump version to 223 and increase libsystemd libtool-info as we added a
structure-member (without increasing structure size) to sd-bus-vtable.
2015-07-29 12:44:55 +02:00
David Herrmann
d537694a98 terminal: drop unfinished code
This drops the libsystemd-terminal and systemd-consoled code for various
reasons:

 * It's been sitting there unfinished for over a year now and won't get
   finished any time soon.

 * Since its initial creation, several parts need significant rework: The
   input handling should be replaced with the now commonly used libinput,
   the drm accessors should coordinate the handling of mode-object
   hotplugging (including split connectors) with other DRM users, and the
   internal library users should be converted to sd-device and friends.

 * There is still significant kernel work required before sd-console is
   really useful. This includes, but is not limited to, simpledrm and
   drmlog.

 * The authority daemon is needed before all this code can be used for
   real. And this will definitely take a lot more time to get done as
   no-one else is currently working on this, but me.

 * kdbus maintenance has taken up way more time than I thought and it has
   much higher priority. I don't see me spending much time on the
   terminal code in the near future.

If anyone intends to hack on this, please feel free to contact me. I'll
gladly help you out with any issues. Once kdbus and authorityd are
finished (whenever that will be..) I'll definitely pick this up again. But
until then, lets reduce compile times and maintenance efforts on this code
and drop it for now.
2015-07-27 20:15:34 +02:00
Lennart Poettering
28a5679cdc Merge pull request #682 from ssahani/bridge
networkd: add bridge link properties
2015-07-23 21:07:57 +02:00
Lennart Poettering
3964118f5a Merge pull request #604 from heftig/master
build-sys: Use slim LTO objects if possible
2015-07-23 19:02:34 +02:00
Susant Sahani
38a0245fb2 Add bridge NL params to missing.h 2015-07-23 15:06:03 +05:30
Susant Sahani
66f4bc7795 Tunnel NL params: Add to missing.h 2015-07-22 15:01:58 +05:30
Susant Sahani
56bf3853b4 add NL parameters to missing.h 2015-07-20 10:17:50 +05:30
Jan Alexander Steffens (heftig)
4fecbe59da build-sys: Use slim LTO objects if possible
While 235c6e6 gets LTO builds running again, it goes back to using fat
LTO objects instead of using gcc-{ar,nm,ranlib}. Building these fat
objects takes significantly more time.

Use the suggested solution and look for gcc-{ar,nm,ranlib}, which launch
the binutils tools with the appropriate --plugin parameter. GCC versions
that do not ship these should either default to -ffat-lto-objects or do
not support LTO at all.

On another note, nm from binutils 2.25 seems to be smart enough to load
the LTO plugin when needed without having to specify --plugin.
2015-07-16 16:17:08 +02:00
Lennart Poettering
2ed3de9cc4 build-sys: warn if people don't change the default NTP servers when building systemd
Also, explain the situation in the docs.

Relates to #437
2015-07-11 14:24:29 -03:00
Daniel Mack
b9fd7bb60a Merge pull request #501 from keszybz/remove-python-systemd
Remove python-systemd
2015-07-08 09:38:38 -04:00
David Herrmann
2d1ca11270 Bump version to 222 2015-07-07 17:13:39 +02:00
Zbigniew Jędrzejewski-Szmek
2799e519ca Remove python-systemd
python-system has moved to it's own repository:
https://github.com/systemd/python-systemd
2015-07-06 20:32:12 -04:00
WaLyong Cho
e174dce271 smack: add default smack process label config
Similar to SmackProcessLabel=, if this configuration is set, systemd
executes processes with given SMACK label. If unit has
SmackProcessLabel=, this config is overwritten.
But, do NOT be confused with SMACK64EXEC of execute file. This default
execute process label(and also label which is set by
SmackProcessLabel=) is set fork-ed process SMACK subject label and
used to access the execute file.
If the execution file has also SMACK64EXEC, finally executed process
has SMACK64EXEC subject.
While if the execution file has no SMACK64EXEC, the executed process
has label of this config(or label which is set by
SmackProcessLabel=). Because if execution file has no SMACK64EXEC then
excuted process inherits label from caller process(in this case, the
caller is systemd).
2015-06-22 23:44:09 +09:00
Daniel Mack
06528e8fdd build-sys: bring back an intltool-update workaround
Currently, 'make distcheck' fails with an error such as this:

    srcdir=../../po /usr/bin/intltool-update -m
    The following files contain translations and are currently not in use.
    Please consider adding these to the POTFILES.in file, located in the po/ directory.

    build2/src/core/org.freedesktop.systemd1.policy.in
    build3/src/core/org.freedesktop.systemd1.policy.in

    [...]

This is caused by a new behavior of autmake 1.15 which changed the
location of the build tree during 'make distcheck', and the fact that
intltool doesn't yet ignore that paths.

We used to have a workaround in configure.ac that makes the failing call
a no-op, but it was accidentially removed in 23756070
("remove gudev and gtk-doc").

Bring back that snipet for now, until intltool and automake sorted out
their issues and like each other again.

Also see

  https://bugs.launchpad.net/intltool/+bug/1117944
2015-06-19 10:58:49 +02:00
Lennart Poettering
561471314c build-sys: bump versions and sonames 2015-06-18 00:28:41 +02:00
Kay Sievers
1b09f548c7 turn kdbus support into a runtime option
./configure --enable/disable-kdbus can be used to set the default
behavior regarding kdbus.

If no kdbus kernel support is available, dbus-dameon will be used.

With --enable-kdbus, the kernel command line option "kdbus=0" can
be used to disable kdbus.

With --disable-kdbus, the kernel command line option "kdbus=1" is
required to enable kdbus support.
2015-06-17 18:01:49 +02:00