At run time, /run and /tmp get overmounted with a tmpfs, so anything
that is there becomes inaccessible.
Scripts in the fakeroot environment could call tools preparing the early
environment, leaving traces in /run or /tmp. For example, mkusers might
create home directories in /run: openssh sets the sshd home directory to
/run/sshd, so mkusers creates it. But since a tmpfs is mounted over it,
it doesn't exist at runtime, so the openssh service creates it at
startup (and deletes it when the service is stopped).
In addition, packages or rootfs overlay may leave things there as well.
Those may actually pose a runtime problem because the created file or
directory is missing - or it may not be a problem because the package
creates the missing files/directories on startup. In this situation,
it's better not to have them in the rootfs image (because they're not
functional anyway), but it's good to leave them in TARGET_DIR to make it
easier to debug the situation.
Therefore, remove the contents of /run and /tmp in the fakeroot
environment after ROOTFS_PRE_GEN_HOOKS, so they are still left in
TARGET_DIR.
Signed-off-by: Norbert Lange <nolange79@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Zoltan Gyarmati <zgyarmati@zgyarmati.de>
[Thomas:
- bump to 2.3.0
- don't build demos, they need QtWidgets]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This patch is a complete rewrite of the Inadyn start script, based on
the BusyBox S01syslogd template. Additional features, compared to the
template, are limited to the ability to:
- Check if enabled, using an ENABLED="yes" from /etc/default/inadyn,
this for compatibility with the previous version of the script
- Override INADYN_ARGS from /etc/default/inadyn
- A reload command that sends SIGHUP, since that works and is both
quicker and a less resource intensive operation
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
journald supports catalog files, or rather a binary database of
those.
Functionality added includes:
- A config option allows enabling the binary database.
- If BR2_ENABLE_LOCALE_PURGE is enabled, the catalogs not in the
language whitelist are deleted first. This is done independently
of the new option, since the catalogs are removed later anyway.
- If the option is enabled, the database is built and moved to
/usr/share/factory. This makes sure that /usr contains the entire
system. A symlink is created in /var pointing to that file.
- The catalog source files are deleted. They serve no purpose on the
target once the database exists.
- All of the above is done in a ROOTFS_PRE_CMD_HOOK rather than in the
build/install step, because other packages than systemd itself may
also install catalogs. This also makes sure that it is possible to
do a re-build, because the catalog files are not removed in
$(TARGET_DIR) itself, only in the temporary copy for rootfs creation.
- The service normally used for creating the DB during boot is
deleted. If the DB is not enabled, we also don't want to waste time
and space on re-generating every boot. Conversely, if the DB is
enabled, it is already there so doesn't need to be re-done on every
boot either.
The new option depends on !BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW because
if the rootfs is not RW, /var is overmounted with a tmpfs. The factory
should handle this, but this only half-works [1].
[1] http://lists.busybox.net/pipermail/buildroot/2020-July/287016.html
Signed-off-by: Norbert Lange <nolange79@gmail.com>
Reviewed-by: Jérémy Rosen <jeremy.rosen@smile.fr>
Reviewed-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This appears to have been incorrectly removed in:
03aa3e6ac7
Fixes:
package/pkg-utils.mk:212: *** unterminated call to function 'foreach': missing ')'. Stop.
make: *** [Makefile:84: _all] Error 2
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
This library provides message digest functions found on BSD systems
either on their libc (NetBSD, OpenBSD) or libmd (FreeBSD, DragonflyBSD,
macOS, Solaris) libraries and lacking on others like GNU systems.
https://www.hadrons.org/software/libmd/
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Add new host-python-packaging and host-python-tomli dependencies.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This will be required by host-python-packaging.
Signed-off-by: James Hilliard <james.hilliard1@gmail.com>
Reviewed-by: Marcin Niestroj <m.niestroj@grinn-global.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The host variant of python-packaging was added in commit
4cc445fd5f, but has two missing things:
- It's a python3 only package, so it should have
HOST_PYTHON_PACKAGING_NEEDS_HOST_PYTHON = python3
- It depends on the pyparsing module, so it should have a dependency
on it.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
- Add upstream status (rejected) to first and second patches
- Drop third patch (already in version)
https://github.com/meetecho/janus-gateway/blob/v0.11.6/CHANGELOG.md
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
bat is a cat(1) clone with syntax highlighting and Git integration.
Signed-off-by: David Pierret <david.pierret@smile.fr>
Signed-off-by: Romain Naour <romain.naour@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Adds the gocryptfs encrypted FUSE filesystem.
Currently uses without_openssl build tag, to use the native Go cryptography.
However, the package could be improved by conditionally enabling openssl if it
is also configured to be built by Buildroot.
Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
embiggen-disk is a tool to automatically resize disks to fill available space.
Patch submitted upstream: https://github.com/bradfitz/embiggen-disk/pull/13
Adds support for /dev/mmcblk0pN type paths.
Signed-off-by: Christian Stewart <christian@paral.in>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This is a Go package that needs vendor modules to be downloaded at
build time.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Reviewed-by: Christian Stewart <christian@paral.in>
This reverts commit d19077677f, but the
package now uses the cargo-package infrastructure with its vendoring
mechanism, which allows us to avoid the problems that caused the
package to be removed in d19077677f.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit converts the ripgrep package to the cargo
infrastructure. This causes the vendoring mechanism to kick in, which
changes the contents of the tarball. To avoid a clash on the hash, we
change the version of ripgrep to the Git commit hash matching the
13.0.0 tag, so there are no functional changes, but the tarball name
is different.
Signed-off-by: Patrick Havelange <patrick.havelange@essensium.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
The Buildroot manual was already providing some details on how to
integrate Cargo packages, and those details now need to be updated
with a proper documentation for the cargo-package infrastructure, as
well as updates related to vendoring support, which affects how
dependencies are handled.
In addition, now that we have vendoring support for Cargo packages,
let's rewrite the dependency management section in a more accurate
way.
We drop the part about the local cache of the registry, because
+CARGO_HOME+ in Buildroot points to $(HOST_DIR)/share/cargo, which is
not shared between builds nor preserved accross builds, so its effect
as a cache is limited.
Signed-off-by: Patrick Havelange <patrick.havelange@essensium.com>
[Thomas: numerous updates and extensions.]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
In order to be package agnostic, the install phase is now using cargo
instead of install. TARGET_CONFIGURE_OPTS is now also set when running
cargo in order to support cross compiling C code within cargo.
This commit also adds support/download/cargo-post-process to perform
the vendoring on Cargo packages.
The <pkg>_LICENSE variable of cargo packages is expanded with ",
vendored dependencies licenses probably not listed" as currently for
all packages, the licenses of the vendored dependencies are not taken
into account.
Signed-off-by: Patrick Havelange <patrick.havelange@essensium.com>
[Thomas: add support for host-cargo-package and vendoring]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit introduces the download post-process script
support/download/go-post-process, and hooks it into the Go package
infrastructure.
The -modcacherw flag is added to ensure that the Go cache is
read/write, and can be deleted properly upon "make clean".
The <pkg>_LICENSE variable of golang packages is expanded with ",
vendored dependencies licenses probably not listed" as currently for
all packages, the licenses of the vendored dependencies are not taken
into account.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
For now, the download post-process logic uses mk_tar_gz, which repacks
a tarball compressed with gzip. So we can only accept as input a
tarball also compressed with gzip. To enforce that, this commit
changes post_process_unpack() to use tar xzf. This makes sure that if
a tarball compressed with something else than gzip gets used, it will
bail out and we will notice.
Support for other compression schemes can be added later on.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
zstd is supported since version 4.13.1 and
717a8b1e5d
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Fix the following build failure without stack-protector raised since
bump to version 02092020 in commit
ebe808ac40 and
caa4408eb4:
/home/buildroot/autobuild/instance-3/output-1/host/opt/ext-toolchain/m68k-buildroot-uclinux-uclibc/bin/ld.real: ../src/.libs/libsafec-3.6.0.a(safe_mem_constraint.o): in function `handle_mem_bos_chk_warn':
safe_mem_constraint.c:(.text+0x40): undefined reference to `__stack_chk_guard'
If stack-protector is enabled in the Buildroot config, the toolchain
wrapper will make sure it is used, so there's no need for the safeclib
configure to handle it.
Fixes:
- http://autobuild.buildroot.org/results/a481ee2d26a094358b0298617cce691be3077f22
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Peter: add comment explaining why this is done]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
file-5.41 uses AC_PROG_CC, and was generated with autoconf 2.69. That
oldish version of autoconf does not check the C standard when AC_PROG_CC
is called, and standard-specific macros must be called instead:
AC_PROG_CC_C89, AC_PROG_CC_C99, or AC_PROG_CC_STDC.
So we would need to patch configure.ac to call either of those options,
and then we'd have to autoreocnf.
However, that would autoreconf with our autoconf, version 2.71. In that
version, AC_PROG_CC always check what C standards are available and sets
the appropriate ac_cv_XXX variables, and the previous macros,
AC_PROG_CC_C89, AC_PROG_CC_C99, and AC_PROG_CC_STDC are deprecated.
So it turns out that we just need to autoreconf.
Fixes:
- http://autobuild.buildroot.org/results/9e7868be00f2cd18205b2ce664be95f8b9e2b063
- http://autobuild.buildroot.org/results/31cbc313fceb84c0cbb1969fca5ac44244871dbc
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Fabrice Fontaine <fontaine.fabrice@gmail.com>
sdbus-c++ is a high-level C++ D-Bus library for Linux.
Signed-off-by: Sergey Bobrenok <bobrofon@gmail.com>
[Peter: add host-pkgconf, drop host package]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Since on olinuxino_lime/lime2 we have a Linux version >= 4.20 we need to
pass drm_kms_helper.drm_leak_fbdev_smem=1 to kernel command-line that
really enables DRM_FBDEV_LEAK_PHYS_SMEM. CONFIG_DRM_FBDEV_LEAK_PHYS_SMEM
only adds the code for this, but drm_leak_fbdev_smem is 0 by default, so we
need to override it with 1. Same goes for drm_fbdev_overalloc that
must be at least 200 for having a double buffer that is required by
Mali. This fixes both olimex_a20_olinuxino_lime and lime2 that use
extlinux.conf.
Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This package adds the rtl8189es WiFi driver.
repo: https://github.com/jwrdegoede/rtl8189ES_linux.git
branch: master
Driver is known to support Realtek RTL8189ES-VB-CG chip.
Signed-off-by: Louis Aussedat <aussedat.louis@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
host-libcap was added as a dependency of libcap in commit
efae605c88 because back then at
installation time, the setcap utility was called.
However, since commit 57155c6b6a, we use
RAISE_SETFCAP=no, which disables calling setcap at install
time. Therefore, having host-libcap built before libcap is no longer
needed.
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
legacy.conf no longer exists, it's now legacy.conf.in that has to be
preprocessed. The preprocessing is only done if sysv-compat is enabled.
This reverts commit 0e71f51119.
Disable zoned on host variant to avoid the following build failure since
bump to version 5.15.1 in commit
20181c3f1b and
7953f4357b:
checking linux/blkzoned.h usability... yes
checking linux/blkzoned.h presence... yes
checking for linux/blkzoned.h... yes
checking for struct blk_zone.capacity... no
checking for BLKGETZONESZ defined in linux/blkzoned.h... no
configure: error: linux/blkzoned.h does not provide blk_zone.capacity
Fixes:
- http://autobuild.buildroot.org/results/03235edd829436d784a9b214050cc97584f372fb
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Drop BR2_PACKAGE_CIVETWEB_WITH_LUA and enable Lua support depending on
BR2_PACKAGE_LUA and BR2_PACKAGE_LUAJIT
It should be noted that civetweb will still use its embedded version of
sqlite
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
[Peter: add !BR2_STATIC_LIBS, pass LUA_SHARED_LIB_FLAG, explicitly link with
-ldl, rework order]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Systemd doesn't install tmpfiles.d/legacy.conf when sysv compatiblity
isn't enabled. This config sets up /var/lock, which many programs such
as uboot's fw_printenv/setenv still depend on by default.
Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
5.x is the latest stable version, 4.x is provided for archival purpose
only and is not intended for general use in new installations.
http://www.squid-cache.org/Versions/v5/squid-5.3-RELEASENOTES.html
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Fix the following build failure raised on uclibc and musl since the
addition of libexecinfo package in commit
eea8ba446c:
/home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/bin/../lib/gcc/mipsel-buildroot-linux-uclibc/10.3.0/../../../../mipsel-buildroot-linux-uclibc/bin/ld: debug.o: in function `__show_backtrace':
debug.c:(.text+0x10): undefined reference to `backtrace'
Fixes:
- http://autobuild.buildroot.org/results/bf78e4be9b9d9ca7d32f922d72ea6cd39a78d3d8
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
various services need directories in /var when they are started,
and create them if necessary. Creating those before, allows
those services to start even if /var is read-only.
Signed-off-by: Norbert Lange <nolange79@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
In order to be able to use OpenGL with QT5 with a Rockchip Mali
Bifrost GPU, a device integration provider has to be selected. We are
interested in the KMS integration that works well with Mali Bifrost,
make sure it gets build when using rockchip-mali-bifrost as OpenGL
provider.
Signed-off-by: Maxime Chevallier <maxime.chevallier@bootlin.com>
Signed-off-by: Miquel Raynal <miquel.raynal@bootlin.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Now that we have a libgbm virtual package, it makes sense to use it to
replace the open-coded list of gbm providers in qt5base. All of
mesa3d, gcnano-binaries, ti-sgx-um and imx-gpu-viv are libgbm
providers now.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Interestingly, only the aarch64 blobs provide libgbm support. This
will help in fixing an issue that exists today, where ARM32 +
imx-gpu-viv + wayland + qt5 fails to build, because qt5 is told that
libgbm is available, i.e the following configuration:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_QT5=y
BR2_PACKAGE_QT5BASE_GUI=y
BR2_PACKAGE_QT5BASE_EGLFS=y
BR2_PACKAGE_FREESCALE_IMX=y
BR2_PACKAGE_FREESCALE_IMX_PLATFORM_IMX6Q=y
BR2_PACKAGE_IMX_GPU_VIV=y
BR2_PACKAGE_IMX_GPU_VIV_OUTPUT_WL=y
# BR2_TARGET_ROOTFS_TAR is not set
fails to build during the qt5base configure step with:
ERROR: Feature 'gbm' was enabled, but the pre-condition 'libs.gbm' failed.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>