summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* meson: fix error when restorecon unavailableFabrice Fontaine2018-03-311-0/+31
| | | | | | | | | | | | host-meson is used by some packages such as libmpdclient. If selinuxenabled is installed on host but restorecon is unavailable (for an "unknwown" reason), install will crash. Fixes: - http://autobuild.buildroot.net/results/d5dcdfdfab3503fdc387f99e68267972a38c417d Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/libbsd: enable for non-glibc toolchainsJörg Krause2018-03-312-3/+82
| | | | | | | | | | | | | | | | | | | | | | | | | libbsd builds now almost fine with a musl or uClibc toolchain, except for one issue introduced in the latest version bump. Upstream commit 22fbd62368c39de8ac5e249d1502d5ac0ffdef30 [1] uses the glibc-only macro `__GLIBC_PREREQ`. The issue is fixed by the attached patch from upstream, which fixes the use of `__GLIBC_PREREQ` on non-glibc toolchains. Backported from: https://cgit.freedesktop.org/libbsd/patch/?id=1f8a3f7bccfc84b195218ad0086ebd57049c3490 netcat-openbsd is the only package selecting libbsd. However, building it still needs a glibc toolchain, as it uses `b64_ntop` which is not available in musl or uClibc. Build has been successfully tested with: * armv7-eabihf--glibc--bleeding-edge-2017.11-1 * armv7-eabihf--musl--bleeding-edge-2018.02-1 * armv7-eabihf--uclibc--bleeding-edge-2018.02-1 [1] https://cgit.freedesktop.org/libbsd/commit/?id=22fbd62368c39de8ac5e249d1502d5ac0ffdef30 Signed-off-by: Jörg Krause <joerg.krause@embedded.rocks> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* .gitlab-ci.yml: check flake8Ricardo Martincoski2018-03-312-0/+22
| | | | | | | | | | | | | | | | | | | | | | Add a test to check Python code style in the whole buildroot tree. Search files by type in order to help flake8 to find the Python scripts without .py extension. But don't rely only in the output of 'file' as it uses heuristics and sometimes it is wrong (specially identifying Python files as C++ source for the 'file' version currently in the Docker image). Include in the output: - the list of Python files processed; - statistics for each kind of warning; - the total number of warnings; - the number of Python files processed. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: 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@bootlin.com>
* .gitlab-ci.yml: use image with flake8Ricardo Martincoski2018-03-312-2/+2
| | | | | | | | | | | | Bump the docker image to the latest tag to have flake8 pre-installed. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Peter Korsgaard <peter@korsgaard.com> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> 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@bootlin.com>
* wine: depend on shared librariesAndré Hentschel2018-03-311-2/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even if --enable-static --disable-shared is passed, wine tries to build a shared library, causing a build failure in a BR2_STATIC_LIBS=y configuration: /home/test/buildroot/output/host/i686-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(__uClibc_main.os): In function `__uClibc_fini': __uClibc_main.c:(.text.__uClibc_fini+0x10): undefined reference to `__fini_array_start' /home/test/buildroot/output/host/lib/gcc/i686-buildroot-linux-uclibc/6.4.0/../../../../i686-buildroot-linux-uclibc/bin/ld: /home/test/buildroot/output/host/i686-buildroot-linux-uclibc/sysroot/usr/lib/libc.a(__uClibc_main.os): relocation R_386_GOTOFF again st undefined hidden symbol `__fini_array_start' can not be used when making a shared object /home/test/buildroot/output/host/lib/gcc/i686-buildroot-linux-uclibc/6.4.0/../../../../i686-buildroot-linux-uclibc/bin/ld: final link failed: Bad value collect2: error: ld returned 1 exit status make[2]: *** [libwine.so.1.0] Error 1 make[2]: Leaving directory `/home/test/buildroot/output/build/wine-3.0/libs/wine' make[1]: *** [libs/wine] Error 2 Since using wine in a static linking environment is fairly unlikely, we simply mark the wine package unavailable on static-only configurations. Since we need to add a Config.in comment, we also introduced a BR2_PACKAGE_WINE_ARCH_SUPPORTS hidden boolean, to share the architecture dependencies definition between the wine config option and the comment. Signed-off-by: André Hentschel <nerv@dawncrow.de> [Thomas: - add a comment in the Config.in file about the dependency - add BR2_PACKAGE_WINE_ARCH_SUPPORTS - extend the commit log] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* infra/pkg-kconfig: do not update-(def)config to a directoryYann E. MORIN2018-03-311-0/+5
| | | | | | | | | | | | | | | | | | | | | | | Currently, if the user specifies the path to an existing directory as the path to the custom (def)config file (FOO_KCONFIG_FILE), then we happily create a file in there, either 'defconfig' or '.config' (or whatever the .config is named for that package), depending on whether we're saving a defconfig or a full config. So, we could save the file, but then the Buildroot defconfig file that contains that path would no longer be reusable as-is, because we interpret that path as a path to a file. Furthermore, if the directory-portion of FOO_KCONFIG_FILE does not exist yet, the update would fail, because cp does not create missing directory components. So we fix that by adding an explicit test for the directory-ness of the target file, and then an explicit mkdir to create missing directory components. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* infra/pkg-config: hide away non-critical commandsYann E. MORIN2018-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | When updating back the (def)config file, the touch command is not very useful by default, so hide it away. We do not hide away the cp command, as that could confuse the user under some circunmstances. For example, when the toolchain does not yet exist, the uClibc buildsystem will complain multiple times about gcc not being found, like so: make[2]: /home/ymorin/dev/buildroot/O/host/bin/i686-buildroot-linux-uclibc-gcc: Command not found (Note that we can not suppress those warnings, as they are on stderr, and we still want to see stderr in case of real errors). So, if we were to hide the cp command, the user could be left confused, even though we were sucessful in updating back the (def)config file. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* infra/pkg-kconfig: commonalise update-(def)config codeYann E. MORIN2018-03-311-12/+15
| | | | | | | | | | | | Except for the nice human-friendly reminder of the command that the user was just running, and the name of the file to copy from, those two rules are exactly the same. Make that a common macro that is shared, so that it's easier to add more checks, and to simplify maintenance. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Makefile: Ensure BASE_TARGET_DIR exists, not TARGET_DIRPeter Korsgaard2018-03-311-1/+1
| | | | | | | | This was present in Yann's original patch, but got dropped when I rebased commit 7e9870ce32 (core: introduce intermediate BASE_TARGET_DIR variable) to fix the Makefile conflicts. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* lua: always use host-lua for host-luainterpreterPeter Korsgaard2018-03-314-8/+8
| | | | | | | | | | | | | | | | | | Similar to how we do for openssl. host-luainterpreter is only used by the luarocks infrastructure, and there is afaik no specific reason why the host lua variant must match the target one. Luajit only supports a limited number of architectures, so building it for the host limits the architectures Buildroot can be used on (E.G. powerpc64 autobuilders). To fix this, always use host-lua. Slightly rework lua.mk to ensure host-lua-5.1 is used when luajit is selected, and drop the logic for using host-luajit. Signed-off-by: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* ktap: bump version for linux-4.8 supportPeter Korsgaard2018-03-312-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #10776 The upstream git repo contains a number of fixes for building against newer kernel versions, so bump the version. git shortlog eb66d40310c93dc82bc8eac889744c1ed1f01f7b.. Alain Kalker (2): uprobe: Print the symbol, not the matching pattern uprobe: Blacklist uretprobes on _start Aleksa Sarai (2): runtime: update GFP_WAIT to GFP_RECLAIM userspace: fix up argument parsing NULL dereference Alexey Makhalov (1): Fix building for v4.8 kernel Azat Khuzhin (12): Use get_unused_fd_flags(0) instead of get_unused_fd() Support trace_seq::seq Ignore separate debug files (*.dwo) Use trace_seq_has_overflowed() makefile: split vim plugins installing into separate target makefile: use DESTDIR for install (allow to change install dir) makefile: install: create dirs makefile: use ldflags for linking ktap makefile: add CPPFLAGS to KTAPC_CFLAGS, to allow change default flags ignore: exclude /debian Support compilation for 4.2 (ftrace_events cleanup) runtime: fix building on 4.3 Jovi Zhangwei (11): Merge pull request #84 from azat/linux-3.19-fixes-v3 Merge pull request #85 from azat/debian-preparations-v2 Merge pull request #88 from NanXiao/master Merge pull request #89 from NanXiao/patch-1 Merge pull request #91 from NanXiao/patch-1 Merge pull request #90 from azat/linux-4.2-compilation-fixes Merge pull request #99 from cyphar/fix-null-deref Merge pull request #98 from cyphar/fix-gfp-reclaim Merge pull request #97 from azat/fix-building-4.3-__GFP_RECLAIM Merge pull request #103 from ackalker/blacklist Merge pull request #104 from YustasSwamp/master Nan Xiao (3): Update tutorial.md Update Makefile Fix memory leak issue in main function. WEI ZHANG (1): ktap: Change the copyright to Huawei Technologies While we are at it, also add a hash for the license file. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* DEVELOPERS: add myself for a number of unmaintained boardsPeter Korsgaard2018-03-311-0/+12
| | | | | | These boards I own and currently have no entries in DEVELOPERS, so add them. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: remove intermediate artefactsYann E. MORIN2018-03-312-0/+3
| | | | | | | | | | | | | | | | | | | | Each of the intermediate, per-rootfs target directories, as well as the intermediate tarball, can take quite some place, and is mostly a duplication of what's already in target/. The only delta, if any, would be the tweaks made by the filesystem image generations, but those tweaks are most probably only meaningful when seen as root. We normally do not remove intermediate files, but those can be quite large, and are not directly usable by, nor accessible to the user. So, get rid of them once the filesystem has been generated. This does not need to be done in fakeroot. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Tested-by: Matt Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: get rid of package-provided post-fs hooksYann E. MORIN2018-03-313-10/+0
| | | | | | | | | | | | | | | | | Now that the pre-fs ones are run on a transient copy of target/, the post-fs hooks are no longer needed because we no longer need to restore the target/ directory as it is only a internal copy. Remove support for the post-fs hooks, and update the sole package using them. We do not add a legacy check because this was mostly a purely-internal detail that was never really exposed nor documented. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: run packages' filesystem hooks in a copy of target/Yann E. MORIN2018-03-312-12/+18
| | | | | | | | | | | | | | | | | | | | Currently, some packages may register hooks to be run just before and just after the generic tarball image is generated, because they need to prepare the filesystem for read-only or read-write operation. However, this means that, if any of the hooks or the image generation fails, the target directory is left in a dangling, inconsistent state. We fix that by doing a copy of target/, run the hooks on that copy, generate the generic tarball image out of that, and get rid of the copy. This way, we can guarantee consistency of the target directory, and we can even ditch support for post-fs hooks (those that restore target/). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: use a common tarball as base for the other filesystemsYann E. MORIN2018-03-311-28/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, some filesystems may want to tweak the content of the target directory, create special device nodes etc... This all means that: - the content of the target directory for a specific filesystems may depend on whether another filesystem is enabled or not; for example, cpio will create a /init script or symlink and a /dev/console node; - the filesystems can not be built in parallel, because they may change the content of the target directory while another is being assembled. Furthermore, the same fakeroot script is executed over-and-over-again for each filesystem, to create the device nodes, the users and their homes and files, and setting permissions... We introduce an intermediate tarball, for which we do the full fakeroot shebang. That tarball then serves as the base for the other filesystems, with a very simple fakeroot script that untars the common tarball, and calls the actual filesystem image generator on that. Note that we use a very simple tar command to generate the intermediate tarball, because we are not concerned with reproducibility of the archive itself (only of the archived files). Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: introduce a macro for reproducible commandYann E. MORIN2018-03-311-3/+7
| | | | | | | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: new intermediate rootfs-common to gather common dependenciesYann E. MORIN2018-03-311-4/+19
| | | | | | | | | | | | | | | Before we can create an intermediate tarball for all filesystems, we nedd to move the common dependencies needed to generate that intermediate tarball, rather than leave those dependencies to each filesystem. So, we introduce rootfs-common, which gathers all those common dependencies. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: introduce per-rootfs TARGET_DIR variableYann E. MORIN2018-03-312-1/+4
| | | | | | | | | | ... which for now still points to the base target directory, but this is a step forward. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: split per-rootfs dependency lineYann E. MORIN2018-03-311-1/+2
| | | | | | | Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: use a per-rootfs fakeroot scriptYann E. MORIN2018-03-311-3/+3
| | | | | | | | | | | | | | ... and locate that script in a per-rootfs directory. Just like for ROOTFS, this variable will leak down the dependency tree to target-finalize and packages - But it doesn't matter as it isn't used outside fs/. [Peter: extend commit message] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: define per-rootfs directoryYann E. MORIN2018-03-311-0/+2
| | | | | | | | | | This will serve in future commits to store pre-rootfs files, like fakeroot script... Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: set per-rootfs variable nameYann E. MORIN2018-03-313-0/+8
| | | | | | | | | | | | | | | | | | | | Like we do for packages with the PKG variable, set ROOTFS to contain the upper-case name of the rootfs currently being generated. This will be useful in later patches, when we need more per-rootfs variables, like a per-rootfs TARGET_DIR for example. In Makefiles, per-rule variables trickle down the dependency chain, to all dependencies of that rule, so we have to stop ROOTFS as soon as we're not in a rootfs. This means we have to stop it at target-finalize (which is a dependency of all filesystems), and for each package individually, since some packages (host or target) can be direct dependencies of filesystems as well. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* core: introduce intermediate BASE_TARGET_DIR variableYann E. MORIN2018-03-311-4/+5
| | | | | | | | | | | | | | | | | | | | | This new BASE_TARGET_DIR variable is set in stone to point to the real location where packages will be installed. Its name is modelled after its definition: it is located in $(BASE_DIR), and it is named 'target/', hence BASE_TARGET_DIR. The already-existing TARGET_DIR variable now simply points to the same location, except that it is recursively expanded, so that we can later change it depending on the context. All locations that really need to reference the existing target/ directory, are changed to use BASE_TARGET_DIR; surprinsigly enough, they all seem to be located in the main Makefile. :-) The rest is left with using good-old TARGET_DIR. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs/iso9660: rename internal variableYann E. MORIN2018-03-311-15/+15
| | | | | | | | | | | | | We're soon to introduce a generic variable with that name, i.e. $(FS_NAME)_TARGET_DIR, so our internal, temporary variable would clash with it. Just rename it. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs/cpio: don't extend packages' permissions tableYann E. MORIN2018-03-311-2/+4
| | | | | | | | | | | | | | | | | | | | | | | Currently, when we build a cpio filesystem without static devices, we shoehorn the /dev/console node as if it were specified by a package. This means that this device is added for all filesystems as well, not just the cpio. But if we disable cpio, that device is not created for other filesystems. This is not very clean, and may break expectations. Instead, use an explicit mknod as part of the _CMD, as we know it's going to run under fakeroot. This is still visible to all filesystems built after cpio, and not to those built before it, though. [Peter: ensure /dev exists, simplify comment] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* fs: run filesystem hooks under fakerootYann E. MORIN2018-03-311-1/+2
| | | | | | | | | | | | | | | | | | Currently, the pre-gen hooks of the various filesystems are run before we enter the fakeroot. However, this precludes those hooks from doing actions that require root, like creating a pseudo-device or the likes. So, move those pre-gen hooks under fakeroot. This has currently no side-effect, as they are still called before everything else in the fakeroot script, even the system-wide chown call. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/dovecot: add optional support for libsodiumBernd Kuhls2018-03-311-0/+7
| | | | | Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* linux-headers: bump 4.{4, 9, 14, 15}.x seriesFabio Estevam2018-03-311-4/+4
| | | | | Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* linux: bump default to version 4.15.15Fabio Estevam2018-03-311-1/+1
| | | | | Signed-off-by: Fabio Estevam <festevam@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/docker-engine: convert to golang infrastructureAngelo Compagnucci2018-03-311-47/+18
| | | | | | | | Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> [Thomas: - adapt to the changes in the golang-package infrastructure - keep the logic to support BR2_PACKAGE_DOCKER_ENGINE_STATIC_CLIENT] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/apache: add optional support for luaBernd Kuhls2018-03-311-1/+9
| | | | | Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/docker-proxy: convert to golang infrastructureThomas Petazzoni2018-03-311-28/+5
| | | | | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> [Arnout: remove automatically added host-go dependency] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/docker-containerd: convert to golang infrastructureAngelo Compagnucci2018-03-311-25/+8
| | | | | | | Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/runc: convert to golang infrastructureAngelo Compagnucci2018-03-311-32/+5
| | | | | | | Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/flannel: convert to golang infrastructureAngelo Compagnucci2018-03-311-28/+4
| | | | | | | Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* docs/manual: add documentation for the golang infrastructureAngelo Compagnucci2018-03-312-0/+110
| | | | | | | | | | This patch adds the documentation for the golang infrastructure. Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* package/pkg-golang: new package infrastructureAngelo Compagnucci2018-03-312-0/+131
| | | | | | | | | | | | | | | This patch adds a new infrastructure for golang based packages. Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> [Arnout: - Rewrap comments to 80 columns. - Create a global definition of GO_TARGET_ENV. - <PKG>_GO_ENV is appended to the default env instead of replacing it. - Add a note to inner-golang-package that only target is supported. ] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* docker-containerd: remove symlink to $(RUNC_SRCDIR)Thomas Petazzoni2018-03-311-2/+0
| | | | | | | | | | | | | | | | | The DOCKER_CONTAINERD_CONFIGURE_CMDS creates a symlink to runc's source directory, but it does not build depend on runc, which means that the runc package may not have been extracted/built before docker-containerd. Therefore, when doing a build with "make docker-containerd", this symbolic link is broken, but it doesn't prevent docker-containerd from building. Therefore, this symlink is not necessary and can be dropped. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* Makefile: create symlink to non-default HOST_DIRArnout Vandecappelle (Essensium/Mind)2018-03-311-2/+8
| | | | | | | | | | | | | | | | | | | If BR2_HOST_DIR is not the default, it can be difficult to find the host directory (i.e., HOST_DIR always has to be passed explicitly in addition to the output directory). For example, the Eclipse plugin assumes that HOST_DIR=BASE_DIR/host. Create a symlink from $(BASE_DIR)/host to $(HOST_DIR) if it is not the default. Also remove it in the clean target. When BR2_HOST_DIR is the default, HOST_DIR_SYMLINK will be empty so there will be no additional dependency to dirs and nothing to remove in clean. Fixes https://bugs.busybox.net/show_bug.cgi?id=10151 Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Makefile: move mkdir rule to after HOST_DIR is definedArnout Vandecappelle (Essensium/Mind)2018-03-311-9/+5
| | | | | | | | | | | | | | | | | HOST_DIR is defined twice: once to its default value before .config is included, and once more to BR2_HOST_DIR after .config is included. However, the rule that defines the mkdir for HOST_DIR comes between these two, so it will always use the default definition. Therefore, if a non-default BR2_HOST_DIR is used, there will be no rule to create that directory, while the dirs target depends on it. This happens to work at the moment, because in the dirs target, $(STAGING_DIR) comes before $(HOST_DIR), so $(HOST_DIR) will be created implicitly. However, this will fail in top-level parallel builds where both will be created in parallel. Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* python-libusb1: new packageJaap Crezee2018-03-314-0/+31
| | | | | | | | | | License info from PyPI is wrong: it is LGPL-2.1+, not GPL-2.0. The package includes a COPYING file with GPL-2.0, but since it is really LGPL-2.1+ only the COPYING.LESSER file is relevant. Signed-off-by: Jaap Crezee <jaap@jcz.nl> [Arnout: regenerate with scanpypi, fix legal info] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* utils/genrandconfig: use --no-check-certificate in wget by defaultThomas Petazzoni2018-03-311-0/+3
| | | | | | | | | | | | | | | | A number of autobuilder failures are due to the fact that autobuilder instances use old distributions, with old SSL certificates, and therefore wget aborts with an error "The certificate of `xyz.org' is not trusted.". In order to avoid such failures that are not very interesting in the context of the autobuilders, we pass --no-check-certificate to wget. The integrity of the downloaded files is anyway verified by the hashes, and this is only meant to be used in the context of testing/CI, not in production. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* nodejs: security bump to version 8.11.1Peter Korsgaard2018-03-312-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes the following security issues: - Fix for inspector DNS rebinding vulnerability (CVE-2018-7160): A malicious website could use a DNS rebinding attack to trick a web browser to bypass same-origin-policy checks and allow HTTP connections to localhost or to hosts on the local network, potentially to an open inspector port as a debugger, therefore gaining full code execution access. The inspector now only allows connections that have a browser Host value of localhost or localhost6. - Fix for 'path' module regular expression denial of service (CVE-2018-7158): A regular expression used for parsing POSIX paths could be used to cause a denial of service if an attacker were able to have a specially crafted path string passed through one of the impacted 'path' module functions. - Reject spaces in HTTP Content-Length header values (CVE-2018-7159): The Node.js HTTP parser allowed for spaces inside Content-Length header values. Such values now lead to rejected connections in the same way as non-numeric values. While we are at it, also add a hash for the license file. Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/zsh: remove busybox show others dependencyRomain Naour2018-03-311-1/+0
| | | | | | | | | | | | | | | Back in 2013, zsh was added to Buildroot [1] with the dependency on BR2_PACKAGE_BUSYBOX_SHOW_OTHERS. This dependency was keept with the refactoring [2]. But Busybox doesn't provide a zsh shell in the firt place. This dependency can be removed. [1] 3d19b7ef598f3534b46cf0746a81bc437579127c [2] 1dbd7b991025a8bf39ab5d25c2fd97f47f084bac Signed-off-by: Romain Naour <romain.naour@smile.fr> Cc: Phil Eichinger <phil.eichinger@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* squid: add optional dependency on libkrb5André Hentschel2018-03-311-1/+7
| | | | | Signed-off-by: André Hentschel <nerv@dawncrow.de> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* libkrb5: new packageAndré Hentschel2018-03-315-0/+72
| | | | | | | | Signed-off-by: André Hentschel <nerv@dawncrow.de> [Thomas: - remove LIBKRB5_VERSION_MAJOR - minor tweaks to commit title and Config.in help text] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* board: add support for ARC HS Development Kit (HSDK)Evgeniy Didin2018-03-316-0/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synopsys DesignWare HSDK (which stands for ARC HS Development Kit) is the latest and greatest development platform that sports quad-core ARC HS38 in real silicon. Most noticeable features of the board are: * Quad-core ARC HS38 CPU running at 1GHz * 4Gb of DDR * Built-in Vivante GPU (well supported via open source Etnaviv drivers) * Built-in Wi-Fi/Bluetooth module (RedPine RS-9113) And as usual we have: * [micro] SD-card slot * 2 USB 2.0 ports * 1Gbit Ethernet port * Built-in Digilent JTAG probe * Serial port accessible via micro-USB port Writing sdcard.img on SDcard creates two partitions: * FAT32 with uImage and uboot.env * EXT4 with root filesystem We modify kernel config because in default hsdk kernel config CONFIG_INITRAMFS_SOURCE parameter is set and when we build rootfs separately (BR2_TARGET_ROOTFS_INITRAMFS is not set) error appears. Also we set up CONFIG_ARC_UBOOT_SUPPORT which enables usage of uboot variables in the boot process. [Peter: Fix comments and rename defconfig to snps_archs38_hsdk_defconfig, Add defconfig to DEVELOPERS and fixup board/synopsys entry, Drop postimage script, rename env file in genimage.cfg and drop size setting for rootfs partition, Add "" for CONFIG_INITRAMFS_SOURCE in linux fragment] Signed-off-by: Evgeniy Didin <didin@synopsys.com> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Cc: Alexey Brodkin <abrodkin@synopsys.com> Cc: arc-buildroot@synopsys.com Reviewed-by: Romain Naour <romain.naour@smile.fr> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* package/x11r7/xserver_xorg-server: add sysv init scriptBernd Kuhls2018-03-312-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | We need ":0.0 vt01" to make sure Xorg finds the correct terminal. Quoting https://www.x.org/archive/X11R6.8.0/doc/Xorg.1.html -allowMouseOpenFail Allow the server to start up even if the mouse device can't be opened or initialised. We need this option in case BR2_PACKAGE_XDRIVER_XF86_INPUT_MOUSE was not enabled. -noreset prevents a server reset when the last client connection is closed. We need this option to prevent auto-close of Xorg. Tested with a qemu image and Kodi. Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de> [Arnout: copy an abbreviate version of the explanation above to the script.] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* support/check-uniq-files: support weird locales and filenamesYann E. MORIN2018-03-311-6/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, when a filename contains characters not representable in the user's locale, we fail hard, especially when the host python is python3. This is because python2 and python3 handle encoding/decoding strings differently, with python3 presumable doing the right thing, but it breaks on some systems, while python2 presumable does the wrong thing, but it works everywhere. (Just joking, obviously...) Part of the issue being that the csv reader in python2 is broken with UTF8. We fix the issue by ditching the csv reader, and simply read the file in binary mode, manually partitioning the lines on the first comma. Then, we use the binary-encoded (really, un-encoded) package names and filenames as values and keys, respectively. Finally, for each filename or package we need to print, we try to decode them with the defaults for the user settings, but catch any decoding exception and fall back to dumping the raw, binary values. Which codec is used by default differs between Python version, but in all cases something sane is printed at least. Thanks a lot to Arnout for the live help doing this patch. :-) Reported-by: Jaap Crezee <jaap@jcz.nl> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Jaap Crezee <jaap@jcz.nl> [Arnout: commit log improvement] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
OpenPOWER on IntegriCloud