Commit Graph

39 Commits

Author SHA1 Message Date
Jörg Krause ffa33dc552 package/.mk files: remove --localstatedir=/var from autotools packages
Remove --localstatedir=/var from all autotools packages where it is no longer
needed.

Also remove --localstatedir=/var/lib/dhcp from package dhcp. localstatedir is
used by dhcp to set the default directory for the leases files. This can also
be done by setting --with-*-lease-file=/var/lib/dhcp/*, which is done in
dhcp.mk.

A custom --localstatedir is left in:
* proftpd.mk
* mysql.mk

This is safe to do:
One of the good thing with autoconf is that if you pass:
        --localstatedir=/var ... --localstatedir=/var/something
Then /var/something will be used. So, we can set --localstatedir=/var
by default in the infrastructure, and still have certain packages doing
weird things override it. [Thanks to Thomas Petazzoni]

Signed-off-by: Jörg Krause <jkrause@posteo.de>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-18 19:27:42 +02:00
André Erdmann 2a8ceecd80 package/systemd: check BR2_TARGET_GENERIC_GETTY
Do not create a [serial-]getty link if BR2_TARGET_GENERIC_GETTY is not set.
Might be useful for custom setups (rootfs overlay).

[Peter: use BR2_TARGET_GENERIC_GETTY_PORT to match the code below]
Signed-off-by: André Erdmann <dywi@mailerd.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-12 15:43:55 +02:00
André Erdmann c95bf441a6 package/systemd: fix getty setup
When trying to run a buildroot system configured with
BR2_TARGET_GENERIC_GETTY_PORT="tty1" (x86_64), the boot process hangs
with the following message:
  "A start job is running for dev-tty1.device (<time> / 1min 30s)"

Replacing /etc/systemd/system/getty.target.wants/serial-getty@tty1.service
(linking to serial-getty@) with getty@tty1.service (-> getty@) fixes the issue.

This patch adds a check that "detects" the tty type by removing digits at the
end of BR2_TARGET_GENERIC_GETTY_PORT and comparing the resulting base name.
An instance of getty@service gets created if the name matches "tty",
otherwise serial-getty@ gets instantiated (as before).

So, tty1,tty2,... are created as links getty@tty1.service -> getty@,
while ttyS0, ttyAMA0, ... are created as instances of serial-getty@.

[Peter: simplify logic]
Signed-off-by: André Erdmann <dywi@mailerd.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-10-12 15:37:01 +02:00
Thomas De Schampheleire aaffd209fa packages: rename FOO_CONF_OPT into FOO_CONF_OPTS
To be consistent with the recent change of FOO_MAKE_OPT into FOO_MAKE_OPTS,
make the same change for FOO_CONF_OPT.

Sed command used:
   find * -type f | xargs sed -i 's#_CONF_OPT\>#&S#g'

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-04 18:54:16 +02:00
Thomas De Schampheleire 0518a98ac3 packages: rename FOO_MAKE_OPT into FOO_MAKE_OPTS
While the autotools infrastructure was using FOO_MAKE_OPT, generic packages
were typically using FOO_MAKE_OPTS. This inconsistency becomes a problem
when a new infrastructure is introduced that wants to make use of
FOO_MAKE_OPT(S), and can live alongside either generic-package or
autotools-package. The new infrastructure will have to choose between either
OPT or OPTS, and thus rule out transparent usage by respectively generic
packages or generic packages. An example of such an infrastructure is
kconfig-package, which provides kconfig-related make targets.

The OPTS variant is more logical, as there are typically multiple options.

This patch renames all occurrences of FOO_MAKE_OPT in FOO_MAKE_OPTS.
Sed command used:
    find * -type f | xargs sed -i 's#_MAKE_OPT\>#&S#g'

Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-10-04 15:07:23 +02:00
Jérôme Pouiller 6653f58a57 systemd: make libseccomp usage deterministic
[Thomas: fix minor typo in commit title.]

Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-09-23 20:20:28 +02:00
Eric Le Bihan 1bf55a8e1c systemd: bump to version 216
Bump systemd to version 216. This new version provides two new tools to
manage the journal (systemd-journal-upload and systemd-journal-remote)
which resulted in the addition of new users.

Also remove backported patches.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Tested-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-09-16 22:19:32 +02:00
Eric Le Bihan d9054017cf systemd: disable link time optimization
As reported in https://bugs.busybox.net/show_bug.cgi?id=7286,
systemd fails to build with BR2_OPTIMIZE_2=y. This mode activates the GCC
options -flto and -ffat-lto-objects, which do not mix well with the GCC
tricks used in src/compat-libs/linkwarning.h to build the compatibility
libraries.

As a temporary workaround, this patch disables link time optimization for
systemd.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-08-15 22:31:25 +02:00
Jerzy Grzegorek c7f4b96471 package: remove the trailing slash sign from <PKG>_SITE variable
Since the trailing slash is stripped from $($(PKG)_SITE) by pkg-generic.mk:

$(call DOWNLOAD,$($(PKG)_SITE:/=)/$($(PKG)_SOURCE))

so it is redundant.
This patch removes it from $(PKG)_SITE variable for BR consistency.

Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-31 23:17:46 +02:00
Eric Le Bihan 2a86ff3bbd systemd: add hook to disable ldconfig.service
Since version 215, systemd installs a service to execute /sbin/ldconfig
when the sysinit target is reached.

Unfortunately, /sbin/ldconfig is not installed on a target built using a
glibc-based toolchain.

As this service is not mandatory, it is now disabled, thus avoiding a
warning in the journal.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-26 09:15:23 +02:00
Eric Le Bihan d1d119c271 systemd: bump to version 215
Bump systemd to version 215.

Also refresh the patch reverting the use of `ln --relative`.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-26 09:08:39 +02:00
Eric Le Bihan e1433ad992 systemd: install timesync service if selected
If support for systemd-timesyncd is selected, install the associated
service.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-18 21:28:11 +02:00
Eric Le Bihan 2b799ee17b systemd: bump to version 214
This patch bumps systemd to version 214.

Changes:

- add new users: systemd-bus-proxy, systemd-network and systemd-resolve.
- remove gtk-doc patch, as it is no longer needed.
- remove attr dependency (extended attributes functions are provided by
  glibc).
- enable nss-myhostname, so local hostname changes are properly handled.
- add hook to install symlink to resolv.conf when using
  systemd-networkd.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-18 21:27:48 +02:00
Eric Le Bihan 64b38f03a7 systemd: fix path for kmod in service files
The path for kmod used in kmod-static-nodes.service is the one found by
the ./configure script, which ends up being the path to the host kmod
program.

This patch forces the path to the target kmod program.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-07-15 23:24:00 +02:00
Eric Le Bihan a8139d5442 systemd: rework network/tty units installation
The installation of the network.service and serial-getty.service unit
files are now performed via the <pkg>_INIT_SYSTEMD mechanism instead of
an installation hook.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-29 10:54:57 +02:00
Ivan Sergeev eb981cf80b systemd: add network unit file
Add and enable a systemd unit file to bring up or down network with ifup /
ifdown, analogous to the skeleton/etc/init.d/S40network init script.

Signed-off-by: Ivan Sergeev <vsergeev@kumunetworks.com>
[eric.le.bihan.dev@free.fr:
  - rebase
  - install service only if systemd-networkd is not selected]
Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-14 18:41:08 +02:00
Eric Le Bihan f0fd391744 systemd: add SMACK support option.
A new configuration option is available in systemd menu, to enable
support for SMACK.

For this feature to properly work, systemd requires attr (build
dependency, also used for other features) and smack (runtime dependency).

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-08 16:31:15 +02:00
Eric Le Bihan 7144f2f04b systemd: bump to v213
This patch bumps systemd to v213.

This new version introduces systemd-timesyncd, a SNTP daemon. This
feature can be enabled if systemd-networkd is selected via the
configuration menu. It is a simple alternative to ntpd, useful for
machines without a RTC.

The patch for reverting the use of --relative option when calling `ln`
has been refreshed, as the configure script now checks if `ln` supports
the --relative option and fails if it does not.

Another patch for the proper deactivation of gtk-doc has been added.

All these steps now require an autoreconf.

Signed-off-by: Eric Le Bihan <eric.le.bihan.dev@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2014-06-08 15:24:12 +02:00
Yann E. MORIN 6d3336a2b0 packages: make providers declare what they provide
Fixes:
    http://autobuild.buildroot.org/results/285/2851069d6964aa46d26b4aabe7d84e8c0c6c72ce
    http://autobuild.buildroot.net/results/9b7/9b7870354d70e27e42d3d9c1f131ab54706bf20e
    [...]

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2014-05-21 00:21:14 +02:00
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 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
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
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
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
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
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