Commit Graph

30 Commits

Author SHA1 Message Date
Eric Le Bihan
596b42f7d6 systemd: add option to enable compatibility libs
Since systemd 209, some libraries have been merged into libsystemd.so:

 - libsystemd-daemon.so
 - libsystemd-id128.so
 - libsystemd-journal.so
 - libsystemd-login.so

A new configuration menu entry has been added to enable the installation
of compatibility pkg-config files, so that programs that depend on them
can still be built.

[Thomas: as suggested by Yann during the review, add an else clause
with --disable-compat-libs.]

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-16 19:55:23 +02:00
Eric Le Bihan
9ac29d7de8 systemd: revert use of ln relative option.
Systemd build system now uses the `--relative` option from `ln(1)`.
This option was added to GNU coreutils 8.16, which is not widely
deployed yet by GNU/Linux distributions (not available in Debian Wheezy
for example).

Fixes: http://autobuild.buildroot.net/results/354/3546c003a8fcbb36ef5ba29c00a96e473b927ecb/

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-04-04 23:34:03 +02:00
Eric Le Bihan
db7ad00586 systemd: enable build for supported architectures.
Systemd only supports the architectures defined in
src/shared/architecture.h. So via a new parameter named
BR2_PACKAGE_SYSTEMD_ARCH_SUPPORTS, we enable the build of this package
only for those architectures.

Fixes http://autobuild.buildroot.net/results/bcc/bcce95eb0748505c0d62db21a6e420aae3c3181b/

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-29 10:22:52 +01:00
Eric Le Bihan
bf4812c3f4 systemd: bump to version 212.
Also adjust the license details and refresh patches.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-03-27 16:56:44 +01:00
Eric Le Bihan
c0e8ff6b27 systemd: bump to version 210.
This patch bumps systemd to version 210. Systemd 209 introduced some majors
changes, which generated a lot of feedback and bugfixes. This lead to
version 210 a few days later.

Notable changes in 210:

- dropped dependency on libdbus in favor of internal sd-bus library.
- experimental support for kdbus.
- introduction of systemd-networkd, a simple network configuration manager.
- merge of libsystemd-*.so libraries into libsystemd.so.
- changes in Gudev API.

See NEWS file in the tarball for an exhaustive list.

Changes introduced by this bump:

- new configuration menu entry to enable systemd-networkd, which is an
  alternative to ISC dhcp and dhcpcd.
- remove EFI patch for version 208.
- update of the getty unit patch.
- new patch to remove the *.service files accidentally shipped in the
  official tarball (contain some invalid hardcoded paths) and force
  their re-generation.

[Peter: add a note that dbus is only a runtime dependency now]
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-03-17 22:57:47 +01:00
Eric Le Bihan
f1f71aa722 systemd: bump to v208.
This version bump comes with a patch, backported from v209, to fix
a linker error when EFI support is disabled.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-03-12 22:24:26 +01:00
Gustavo Zacarias
1862463829 systemd: fix license info
File is LICENSE.GPL2, not LICENSE.GPLV2, fixes:
http://autobuild.buildroot.net/results/e6c/e6c4dc22c014e62ce35273945a2a2307315ec3f7/

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-02 20:58:43 +01:00
Thomas Petazzoni
f07c6c483c systemd: add missing host-gperf dependency
Fixes:

  http://autobuild.buildroot.org/results/910/91010b43e63b82e050046b8f10c2c42f31a8a620/

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-02 16:14:21 +01:00
Gustavo Zacarias
34291708d0 systemd: ditch autoreconf
It needs AM_PATH_LIBGCRYPT and will bail out if ALL_EXTRAS (libgcrypt)
isn't around - and it doesn't seem to be used at all.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-03-01 15:28:16 +01:00
Peter Korsgaard
b108fdcb83 Merge branch 'next'
Conflicts:
	Makefile
	package/dmraid/Config.in
	package/gdb/Config.in.host
	package/linux-headers/linux-headers.mk
	package/python/python.mk
	package/python3/python3.mk
	package/rt-tests/Config.in
	package/sdl/sdl.mk
	package/systemd/systemd-01-fix-getty-unit.patch
	package/systemd/systemd-02-fix-page-size.patch
	package/systemd/systemd-03-uclibc-fix.patch
	package/udev/Config.in
	package/udisks/Config.in
	package/vlc/vlc.mk
	system/Config.in

Quite some merge conflicts, hopefully I didn't screw up anything.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-28 14:30:23 +01:00
eric.le.bihan.dev@free.fr
4c10eedc10 systemd: enable required kernel features.
When systemd is chosen as init system, the required kernel features are
enabled.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-25 21:28:05 +01:00
eric.le.bihan.dev@free.fr
5e35c1bedd udev: update udev to new virtual package infra.
The udev virtual package and its current providers (eudev and systemd)
have been updated to use the latest version of virtual package
infrastructure.

A provider should now select BR2_PACKAGE_HAS_UDEV and well as set a
value for BR2_PACKAGE_PROVIDES_UDEV.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-25 21:27:11 +01:00
Ivan Sergeev
fc07556408 systemd: fix sed line in "sanitize path in units" hook
The expanded SED variable already contains -e, so the extra -e was being
interpreted as the sed command and causing sed to fail.

Signed-off-by: Ivan Sergeev <vsergeev@kumunetworks.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-15 08:21:50 +01:00
Thomas Petazzoni
55ad3cfd3f systemd: fix build with uClibc toolchains
Currently, the build of systemd is broken with the internal toolchain
backend, because we have uClibc patches that add support for
execvpe(), but we also have a patch for systemd that adds execvpe(),
which was added when the internal uClibc didn't support execvpe().

However, simply dropping the patch is not a solution, as it would
break the build of systemd with any other uClibc than the ones built
with Buildroot. For example, a Crosstool-NG uClibc toolchain would
fail.

Beyond this execvpe() problem, there are also other problems that
prevented systemd from being built with unpatched uClibc.

This patch does the following:

 * Add sequence numbers of systemd patches.
 * Regenerate them to avoid fuzz.
 * Improve the uClibc compatibility patch so that it:
   - Detects whether execvpe() is available or not, and if not
     available provide an implementation.
   - Detects if dup3() is available or not, and if not available
     provide an implementation.
   - Detects if MSG_CMSG_CLOEXEC is defined or not, and if not, define
     it to the appropriate value.

This has been tested with uClibc internal toolchain, uClibc external
toolchain built with Buildroot, uClibc external toolchain built with
Crosstool-NG, and glibc external toolchain.

Fixes bug #6776.

Fixes:

  http://autobuild.buildroot.org/results/591/591c6055430da334bd1e46e7d01497add45da837/build-end.log
  http://autobuild.buildroot.org/results/e58/e5851939d2837d4e35a4c1d9ca6df3c93ed5a34b/build-end.log
  http://autobuild.buildroot.org/results/92e/92e4c40c69a3feb4046b2fe5a0d8c69d5a44a157/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-13 21:51:08 +01:00
eric.le.bihan.dev@free.fr
2c66e4429d systemd: bump to v207
This patch bumps systemd to v207 but also declares it as a provider for the
udev virtual package.

Starting with systemd 183, udev has been merged into
systemd. The udev daemon is now installed as /lib/systemd/systemd-udevd.
This means that /dev management using udev is only available if systemd
is chosen as init system.

When configuring systemd, the following options are available:

- activation of systemd-journal-gatewayd, to access the journal via
  HTTP.
- activation of extra features like journal compression and sealing.

Support for uClibc has also been removed because:

- upstream has no interest in supporting uClibc.
- using a shrinked libc brings no advantage, given the size of all the
  programs included in Systemd. So using glibc does not matter.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-12 22:14:36 +01:00
eric.le.bihan.dev@free.fr
fabcb119b9 udev: convert to virtual package
This patch converts udev to a virtual package. For the moment, there is only
one provider for the udev features: eudev.

Packages meant to provide udev-like features must select the symbol
BR2_PACKAGE_HAS_UDEV.

Packages depending on BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_UDEV or
BR2_PACKAGE_UDEV have been converted to use the new symbol.

[Peter: move legacy symbols under 2014.05]
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-02-12 22:14:19 +01:00
Thomas De Schampheleire
71bdf4c40b Config.in files: unify comment dependency on udev /dev management
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-19 21:53:46 +01:00
Paul Cercueil
b1e4bf079d systemd: Replace busybox' binaries only if applicable
Previously, the package would overwrite busybox' binaries even
if Busybox was set in the config as the default init system.

Signed-Off-By: Paul Cercueil <paul@crapouillou.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-12-17 17:01:53 +01:00
Thomas De Schampheleire
be084204eb Config.in files: add missing dependencies to toolchain option comments
When a package A depends on config option B and toolchain option C, then
the comment that is given when C is not fulfilled should also depend on B.
For example:

config BR2_PACKAGE_A
	depends on BR2_B
	depends on BR2_LARGEFILE
	depends on BR2_WCHAR

comment "A needs a toolchain w/ largefile, wchar"
	depends on !BR2_LARGEFILE || !BR2_WCHAR

This comment should actually be:

comment "A needs a toolchain w/ largefile, wchar"
	depends on BR2_B
	depends on !BR2_LARGEFILE || !BR2_WCHAR

or if possible (typically when B is a package config option declared in that
same Config.in file):

if BR2_B

comment "A needs a toolchain w/ largefile, wchar"
	depends on !BR2_LARGEFILE || !BR2_WCHAR

[other config options depending on B]

endif

Otherwise, the comment would be visible even though the other dependencies
are not met.

This patch adds such missing dependencies, and changes existing such
dependencies from
  depends on BR2_BASE_DEP && !BR2_TOOLCHAIN_USES_GLIBC
to
  depends on BR2_BASE_DEP
  depends on !BR2_TOOLCHAIN_USES_GLIBC
so that (positive) base dependencies are separate from the (negative)
toolchain dependencies. This strategy makes it easier to write such comments
(because one can simply copy the base dependency from the actual package
config option), but also avoids complex and long boolean expressions.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
 (untested)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-11-10 23:59:57 +01:00
Phil Eichinger
418b062f69 systemd: add license information
Signed-off-by: Phil Eichinger <phil@zankapfel.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-22 15:51:22 +02:00
Thomas De Schampheleire
66bb10b7b0 Config.in files: unify comments of toolchain option dependencies
This patch lines up the comments in Config.in files that clarify which
toolchain options the package depends on.

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2013-10-14 22:45:57 +02:00
Alexandre Belloni
8dfd59d114 Normalize separator size to 80
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 22:30:24 +02:00
Alexandre Belloni
702704014d Fix package headers to comply with coding style
Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2013-06-06 17:26:35 +02:00
Thomas Petazzoni
3845a93b30 dbus: uses fork(), requires MMU
In order to solve
http://autobuild.buildroot.org/results/34f6843137efda20626af72714c110280ec577d7/build-end.log,
this patch makes the D-Bus package as well as all the packages that
select the D-Bus package 'depends on BR2_USE_MMU'.

In addition, for the specific case of gvfs, the missing
BR2_TOOLCHAIN_HAS_THREADS dependency is added (threads are required by
D-Bus, so they are also required by gvfs which selects D-Bus).

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-11-17 23:49:26 +01:00
Thomas Petazzoni
e6ce0f5bfb dbus: requires thread support
As can be seen on the build result at
http://autobuild.buildroot.org/results/20f1078ef7dc5f187b04c63ef70e8b43acf9bb3a/build-end.log,
D-Bus requires thread support in the toolchain.

This commit adjusts the Kconfig dependencies of D-Bus and all its
reverse dependencies to depend on thread support in the toolchain.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-25 18:25:43 +02:00
Arnout Vandecappelle (Essensium/Mind)
e1502ebc0c all packages: rename XXXTARGETS to xxx-package
Also remove the redundant $(call ...).

This is a purely mechanical change, performed with
find package linux toolchain boot -name \*.mk | \
  xargs sed -i -e 's/$(eval $(call GENTARGETS))/$(eval $(generic-package))/' \
               -e 's/$(eval $(call AUTOTARGETS))/$(eval $(autotools-package))/' \
               -e 's/$(eval $(call CMAKETARGETS))/$(eval $(cmake-package))/'

Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2012-07-17 20:23:05 +02:00
Peter Korsgaard
df89af836c systemd: install into staging
systemd provides a number of libraries, so install into staging.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-05-20 12:52:49 +02:00
Maxime Ripard
1cba5cf918 Bump systemd to version 44
[Peter: handle missing posix_fallocate in uClibc patch]
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-04-05 13:15:22 +02:00
Peter Korsgaard
575d4712e1 systemd: fix build on uClibc
Patch based on similar patch in openembedded.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-31 23:57:35 +02:00
Maxime Ripard
f4a5eed474 Add the systemd package
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
2012-03-31 23:41:49 +02:00