Adam Duskett [Mon, 1 Jan 2018 13:09:44 +0000 (08:09 -0500)]
systemd: bump to 236, convert to meson
systemd is no longer an autotools package, as such, it has now been converted
over to meson.
Even though systemd234 has meson support, it is broken with gcc7, as such
the revision bump and conversion to meson must be in a single patch.
Changes include:
- Change systemd from an autotools package to a generic package
- Changing all the options from --enable/disable to -Doption=true/false
- Remove --without-python (no longer an option)
- Remove all of the ac_cv_path_ variables, and move them into CONF_OPTS
with the prefix -Doption-path=/path.
- Add sha256sum's for the license files.
- Remove 0002-build-check-for-ln-relative.patch and add
0002-install-dont-use-ln-relative.patch in its place, the old patch relied on autotools and is no longer relevant.
- Add 0004-add-false-option-for-tests.patch. With the conversion to meson,
systemd no longer has the option to disable unit tests from being built.
This patch re-adds the functionality. This prevents 381 files from being
built, and prevents gcrypt from becoming a dependency.
Signed-off-by: Adam Duskett <Adamduskett@outlook.com> Tested-by: Jérémy Rosen <jeremy.rosen@smile.fr> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: gitlab-ci https://gitlab.com/ymorin/buildroot-ci/pipelines/15857672/builds Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The lldpad package comes with utilities to manage an LLDP interface with
support for reading and configuring TLVs. TLVs and interfaces are individual
controlled allowing flexible configuration for TX only, RX only, or TX/RX
modes per TLV.
Marcus Folkesson [Tue, 16 Jan 2018 08:22:33 +0000 (09:22 +0100)]
libsemanage: add patch to make the build process more standard
Patch the Makefiles to make PREFIX and DESTDIR follow standard
semantics to get rid of DESTDIR during compile time in
libsemanage.mk and generate proper pkg-config files.
Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Marcus Folkesson [Tue, 16 Jan 2018 08:22:18 +0000 (09:22 +0100)]
libsepol: add patch to make the build process more standard
Patch the Makefiles to make PREFIX and DESTDIR follow standard
semantics to get rid of DESTDIR during compile time in
libsepol.mk and generate proper pkg-config files.
Signed-off-by: Marcus Folkesson <marcus.folkesson@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Marcus Folkesson [Tue, 16 Jan 2018 08:21:53 +0000 (09:21 +0100)]
libselinux: add patch to make the build process more standard
Patch the Makefiles to make PREFIX and DESTDIR follow standard
semantics to get rid of DESTDIR during compile time in
libselinux.mk and generate proper pkg-config files.
James Knight [Mon, 15 Jan 2018 20:54:37 +0000 (15:54 -0500)]
libpqxx: apply upstream compilation fix
Apply an upstream patch which addresses a compilation issue with respect
to an undefined 'timeval' structure. This issue exists in at least v6.0.
It is expected that this patch can be removed when libpqxx provides a
new releases (either v6.0.1 or v6.1).
Adam Duskett [Sun, 14 Jan 2018 19:56:44 +0000 (14:56 -0500)]
libcpprestsdk: new package
The C++ REST SDK is a Microsoft project for cloud-based client-server
communication in native code using a modern asynchronous C++ API design.
This project aims to help C++ developers connect to and interact with
services.
This package is licensed under the MIT package and depends on BOOST
and OpenSSL/LibreSSL.
Signed-off-by: Adam Duskett <aduskett@codeblue.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Fabrice Fontaine [Mon, 18 Dec 2017 21:10:39 +0000 (22:10 +0100)]
flatbuffers: new package
FlatBuffers is an efficient cross platform serialization
library for C++, C#, C, Go, Java, JavaScript, PHP, and
Python. It was originally created at Google for game
development and other performance-critical applications.
http://google.github.io/flatbuffers/
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Yann E. MORIN [Sun, 14 Jan 2018 14:16:58 +0000 (15:16 +0100)]
tests: add test for post-fakeroot script
Currently, only post-build and post-image scripts were tested, each with
their own test-script.
The two test-scripts only differ in the name of the log file they
create, and it is based on the name of the script, so it is easy to
share the script.
This allows us to easily re-use it for testing post-fakeroot scripts.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Tested-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Yann E. MORIN [Sun, 14 Jan 2018 14:16:57 +0000 (15:16 +0100)]
fs: pass EXTRA_ENV to post-fakeroot script
Like we do for post-build and post-image scripts, pass EXTRA_ENV to
post-fakeroot script.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Buildroot's "make nconfig" command stopped working a while ago on
Gentoo systems. Running the command would result in a crash.
The issue is caused by lxdialog's cflags which are also used to build
nconfig; It would detect *ncursesw* and turn on WIDECHAR support --
but the Makefile would still link to plain *ncurses* while building
nconfig (which was built without WIDECHAR support).
This would cause a crash after using *wattrset* on a WINDOW instance.
WIDECHAR *wattrset* would try to set the _color member in the WINDOW
struct which does not exist in the NON-WIDECHAR ncurses instance. It
would end up clobbering data outside the struct (usually _line entries).
An upstream patch fixes the issue, so we're applying it to Buildroot's
kconfig.
Signed-off-by: Guillermo A. Amaral <g@maral.me> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Jörg Krause [Sun, 14 Jan 2018 16:34:12 +0000 (17:34 +0100)]
augeas: bump to version 1.9.0
Add two patches from upstream to fix a build issue when building an
example. Ideally, the examples should not be build at all. However,
upstream disliked the idea of adding configure options like
`--disable-examples` [1]. So we'll make do with the patches and force a
autoreconf.
Additionaly, the signature was checked and a hash for the license file
is added.
When a file is listed to be installed but is missing from the package
source currently the first tar command exits with error code but it is
ignored and the build succeeds.
This issue by itself is minor because those listed files that are
present in the package source get installed to the target.
But the code is currently error prone, e.g. to a typo in the file list.
Fix this by first creating a tarball in the build directory and then
installing it, instead of using a pipe between the two tar invocations.
Also use && between the commands, so the first command that exits with
error code fails the build.
Since the two tar invocations remain in use, the desired behavior
remains the same:
- list of files can contain *;
- list of files can contain file inside path, and the path is then
replicated in the target;
- symlinks are not followed but are installed.
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Sergey Matyukevich <geomatsi@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
It's broken for the last 3 version bumps, since 1c9846ecc9 "linux-firmware: Bump to the latest version"
Fix it by updating the name of the file to install.
Do not use * since it would install also old versions that would take
1MB extra space in the target.
A comment to remember to update the file name when bumping the package
is not needed because a previous patch in the series makes the build
to fail for missing file.
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Fabio Estevam <festevam@gmail.com> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Peter Seiderer <ps.report@gmx.net> Cc: Yann E. MORIN <yann.morin.1998@free.fr> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
When a file is listed to be installed but is missing from the package
source currently the first tar command exits with error code but it is
ignored and the build succeeds.
This issue by itself is minor because those listed files that are
present in the package source get installed to the target.
But the code is currently error prone, e.g. to a typo in the file list.
Fix this by first creating a tarball in the build directory and then
installing it, instead of using a pipe between the two tar invocations.
Also use && between the commands, so the first command that exits with
error code fails the build.
Since the two tar invocations remain in use, the desired behavior
remains the same:
- list of files can contain *;
- list of files can contain file inside path, and the path is then
replicated in the target;
- symlinks are not followed but are installed.
Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Fabio Estevam <festevam@gmail.com> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Peter Seiderer <ps.report@gmx.net> Cc: Yann E. MORIN <yann.morin.1998@free.fr> Cc: Yegor Yefremov <yegorslists@googlemail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Joseph Kogut [Sun, 14 Jan 2018 21:16:57 +0000 (13:16 -0800)]
python-xlib: fix check-package warning
Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Matt Weber [Sat, 13 Jan 2018 02:21:11 +0000 (20:21 -0600)]
kvm-unit-tests: test for rdseed/rdrand
The build fails when the host binutils isn't at least 2.23
(2.22.x introduced RDSEED).
The host toolchain is used for x86_64 target builds where
we need to do a 32bit build. Most other buildroot builds
are using a much newer binutils unless it's a external
older toolchain.
Romain Naour [Sat, 13 Jan 2018 16:05:27 +0000 (17:05 +0100)]
package/bash: add /bin/bash to /etc/shells
When bash is selected, /bin/bash is not added to /etc/shells
(see man shells). So, login tools like dropbear reject the ssh
connexions for users using bash as shell in /etc/passwd.
buildroot authpriv.warn dropbear[853]: User 'kubu' has invalid shell, rejected
Reported-by: Jeremy Rosen <jeremy.rosen@smile.fr> Signed-off-by: Romain Naour <romain.naour@smile.fr> Cc: "Yann E. MORIN" <yann.morin.1998@free.fr> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Yann E. MORIN [Sat, 6 Jan 2018 15:28:33 +0000 (16:28 +0100)]
support/dockerfile: add directives to run as non-root
Currently, our jobs on the gitlab-ci infra are running as root, which is
problematic for two reasons:
- this is not the usual way Buildroot is built;
- it may miss issues where running as non-root is problematic.
So, complement our Dockerfile with directives to add a new user and run
everything as that user, as demonstrated by this build job:
https://gitlab.com/ymorin/buildroot-ci/-/jobs/46929562
Additional, enforce an UTF-8 locale while running.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Jörg Krause [Tue, 9 Jan 2018 08:58:31 +0000 (09:58 +0100)]
uboot-tools: bump to version 2018.01
Drop patch 0004-uboot-tools-disable-pylibfdt.patch. The issue addressed by
this patch has been fixed in upstream commit 15b97f5c5e6d88e0560c6928f3acd01c999a494d.
Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Tested-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a genimage.cfg to create a working sdcard.img for the ci20
hardware. We also need a uboot-env.txt to create the partition for
the uboot environment.
Update the board/ci20/readme.txt with the related information. Remove
the tftp netboot description from the readme as it is already to
complicated for a basic bootable example.
Signed-off-by: Johannes Schmitz <johannes.schmitz1@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Romain Naour [Tue, 9 Jan 2018 20:13:06 +0000 (21:13 +0100)]
package/ti-cgt-pru: bump to 2.2.1
See: http://www.ti.com/tool/download/PRU-CGT-2-2
The ti-cgt-pru v2.1.x installer are affected by a bug with recent
distribution (Fedora 27 and Ubuntu 17.10) using kernel 4.13 or 4.14
with a glibc 2.26.
The installer is stuck in a futex(wait) system call.
Signed-off-by: Romain Naour <romain.naour@gmail.com> Cc: Ash Charles <ash.charles@savoirfairelinux.com> Cc: Matthew Weber <matthew.weber@rockwellcollins.com> Tested-by: Matt Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Gary Bisson [Thu, 11 Jan 2018 18:07:02 +0000 (19:07 +0100)]
imx-gpu-viv: fix compiling issues with EGL_API_FB
Just like the previous commit did: c9ecdd2b96 gpu-viv-bin-mx6q: fix compiling issues with EGL_API_FB
Difference is that in latest package, eglvivante.h is included after
a EGL_API_FB check in eglplatform.h, giving the following error:
/.../sysroot/usr/include/EGL/eglplatform.h:146:10:
fatal error: X11/Xlib.h: No such file or directory
#include <X11/Xlib.h>
Also, this patch introduce IMX_GPU_VIV_FIXUP_PKGCONFIG which fixes
the pkgconfig files (for some reason default egl.pc file isn't the
same as the one for fb target).
Finally, this patch removes references to libVIVANTE which is now
replaced by libVDK.
Signed-off-by: Gary Bisson <gary.bisson@boundarydevices.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Re-enable support for Lua 5.1 and LuaJIT, which was removed in version 2017.09
because of compatibility issues [1]. Meanwhile, the issues have been resolved
upstream [2].
Note, that `CONFIG_HANDLER_IN_LUA` is now supported by Lua 5.1/LuaJIT, too.
Add a fixup command `SWUPDATE_SET_LUA_VERSION` to set the correct base name for
the Lua/LuaJIT pkg-config file used by the swupdates config option `LUAPKG`.
Fix a small type in the help text:
'in my mind' -> 'in mind'.
Regenerated the .config script by doing:
```
make swupdate-menuconfig
make swupdate-update-config
```
.. and removing the paths for the build options manually.
Thomas Petazzoni [Wed, 10 Jan 2018 22:14:02 +0000 (23:14 +0100)]
system: only expose getty options for busybox and sysvinit
Only busybox and sysvinit handle the BR2_TARGET_GENERIC_GETTY_TERM and
BR2_TARGET_GENERIC_GETTY_OPTIONS options; the other init systems do
not.
So, protect those options behind appropriate dependencies on busybox
or sysvinit.
Fixes #10301.
Reported-by: Michael Heinemann <posted@heine.so> Suggested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Peter Korsgaard [Wed, 10 Jan 2018 22:03:03 +0000 (23:03 +0100)]
mcookie: correct wrong memset argument
Fixes #10216
Building mcookie generates a warning about possible wrong arguments to
memset:
mcookie.c:207:26: warning: argument to ‘sizeof’ in ‘memset’ call is the same expression
as the destination; did you mean to dereference it? [-Wsizeof-pointer-memaccess]
memset(ctx, 0, sizeof(ctx)); /* In case it's sensitive */
ctx is a pointer to a structure, so the code should use the size of the
structure and not the size of the pointer when it tries to clear the
structure, similar to how it got fixed upstream back in 2009:
Thomas Petazzoni [Wed, 10 Jan 2018 22:40:52 +0000 (23:40 +0100)]
lz4: install programs as well as libraries
Prior to commit 8ad38a4fc2007df4bee9a941aed46c8771b6a84c
("package/lz4: bump version to r131"), the lz4 package was installing
both libraries and programs, but this commit changed the behavior to
only install libraries.
The contributor might have been confused by the fact that the build
command was "$(MAKE) ... -C $(@D) liblz4", suggesting that only the
library was built. But since the install command was "$(MAKE) ... -C
$(@D) install", the programs were effectively built as part of the
install step, and installed as well.
Since it makes sense for lz4 to also installs its programs, this
commit adjusts the package accordingly.
It is worth mentioning that using the "all" target during the build
step is important. Indeed, otherwise the programs/Makefile has a
"default" target that doesn't build everything (especially the lz4c
program) and it end up being built as part of the install step, due to
how the makefile dependencies are handled in the lz4 project. To make
sure that everything gets built during the build step, we explicitly
use the "all" target.
Fixes bug #9996
Reported-by: Jamin Collins <jamin.collins@gmail.com> Initial-analysis-by: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
As usual, https://github.com/kergoth/tslib/releases has the changelog
summary.
This release includes a new plugin "invert" that is being built by
default; so we add that to the list of statically compiled in plugins
for static builds.
Signed-off-by: Martin Kepplinger <martink@posteo.de> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Thomas Petazzoni [Wed, 10 Jan 2018 22:03:59 +0000 (23:03 +0100)]
busybox: don't remove S01logging when CONFIG_SYSLOGD is disabled
The current busybox.mk explicitly removes S01logging if CONFIG_SYSLOGD
is disabled in the Busybox configuration. However:
- This causes the removal of the S01logging script potentially
installed by another package (currently syslog-ng, rsyslog and
sysklogd can all install a S01logging script).
- We generally don't try to clean-up stuff that we may have installed
in a previous make invocation and that is no longer needed
following a configuration change.
Fixes bug #10176
Reported-by: Karl Krach <mail@kkrach.de> Fix-provided-by: Karl Krach <mail@kkrach.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas Petazzoni [Wed, 10 Jan 2018 21:19:14 +0000 (22:19 +0100)]
package/kmsxx: don't install static libraries when BR2_SHARED_STATIC_LIBS=y
The kmsxx build system can only build either shared libraries *or*
static libraries, not both. Therefore, the build currently fails when
BR2_SHARED_STATIC_LIBS=y because we try to install the static
libraries, that haven't been built.
We fix this by not installing the static libraries when
BR2_SHARED_STATIC_LIBS=y, making BR2_SHARED_STATIC_LIBS=y essentially
the same as BR2_SHARED_LIBS=y for this package.
Fixes bug #10331.
Reported-by: Frederic MATHIEU <frederic.mathieu@dualis.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This is a maintenance release of the current stable WebKitGTK+ version,
which contains mitigations for CVE-2017-5753 and CVE-2017-5715, the
vulnerabilities known as the "Spectre" attack. It also contains a fix
which allows building the reference documentation with newer gtk-doc
versions.
dependencies: correct dependencies for top-level parallel build
Commit 4932c8a7cc94277b3d53cecd935f725b91cfa9fe introduced the
core-dependencies target to make sure that the dependencies.sh script
runs before we attempt to compile any host tool, so that the absence of
a compiler is properly detected. However, this relied on the
left-to-right evaluation of dependencies. This will no longer be true
when we enable top-level parallel build.
Fix this by letting DEPENDENCIES_HOST_PREREQ depend on
core-dependencies.
Note that it is not possible to remove the
dependencies <- core-dependencies. Indeed, it is possible that
DEPENDENCIES_HOST_PREREQ is completely empty, and in that case we still
need to check core-dependencies.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
dependencies.sh uses HOSTCC_NOCCACHE directly, and this variable is
exported from the top-level Makefile, so there is no need to pass
HOSTCC to it. HOSTCC is not used at all in dependencies.sh.
Thus, we also no longer need to apply the HOSTCC override for
core-dependencies. The core-depencies rule doesn't use HOSTCC or
HOSTCXX.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Olivier Schonken [Mon, 23 Oct 2017 13:17:43 +0000 (15:17 +0200)]
libjpeg: add pkg-config file for libjpeg
Signed-off-by: Olivier Schonken <olivier.schonken@gmail.com>
[Thomas: change to automatically set the version in the generated .pc file.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This feature is not used by anyone in the core developpers and makes a
drastic simplification of the pkg-download infrastructure harder.
The future patch will move much of what's in the current pkg-download.mk
file into the dl-wrapper which is a shell script.
Signed-off-by: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Add a patch to avoid failing on a configure error if UI example can't be
built if libgtk3 is available but not gst1-plugins-base (gstreamer-video
is only needed for UI example, not for rygel UI)