summaryrefslogtreecommitdiffstats
path: root/support
Commit message (Collapse)AuthorAgeFilesLines
* fs: don't use an intermediate tarballYann E. MORIN2018-11-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since 118534fe54b (fs: use a common tarball as base for the other filesystems), the filesystem creation is split in two steps, using an intermediate tarball to carry the generic, common finalisations to the per-filesystem finalisation and image creation. However, this intermediate tarball causes an issue with capabilities: they are entirely missing in the generated filesystems. Capabilities are stored in the extended attribute security.capability, which tar by default will not store/restore, unless explicitly told to, e.g. with --xattrs-include='*', which we don't pass. Now, passing this option when creating and extracting the intermediate tarball, both done under fakeroot, will cause fakeroot to report an invalid filetype for files with capabilities. mksquashfs would report such unknown files as a warning, while mkfs.ext2 would fail (with a similar error message), e.g.: File [...]/usr/sbin/getcap has unrecognised filetype 0, ignoring This is due to a poor interaction between tar and fakeroot; running as root the exact same commands we run under fakeroot, works as expected. Unfortunately, short of fixing fakeroot (which would first require understanding the problem in there), we don't have much options. The intermediate tarball was made to avoid redoing the same actions over and over again for each filesystem to build. However, most of the time, only one or two such filesystems would be enabled [0], and those actions are usually pretty lightweight. So, using an intermediate tarball does not provide a big optimisation. The main reason to introduce the intermediate tarball, however, is that it allows to postpone per-filesystem finalisations to be applied only for the corresponding filesystem, not for all of them. So, we get rid of the intermediate tarball, and simply move all of the code to run under fakeroot to the per-filesystem fakeroot script. Instead of extracting the intermediate tarball, we just rsync the original target/ directory, and apply the filesystem finalisations on that copy. The only thing still done in the rootfs-common step is to generate the intermediate files (users file, devices file) that are used in the fakeroot script. Fixes: https://bugs.busybox.net/show_bug.cgi?id=11216 Note: an alternate solution would have been to keep the intermediate tarball to keep most of the common finalisations, and move only the permissions to each filesystem, but that was getting a bit more complex and changed the ordering of permissions and post-fakeroot scripts. Once we bite the bullet of having some common finalisation done in each filesystem, it's easier to just move all of them. [0] Most probsably, users would enable the real filesystem to put on their device, plus the 'tar' filesystem, to be able to easily inspect the content on their development machine. Reported-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Cc: Arnout Vandecappelle <arnout@mind.be> Cc: Peter Korsgaard <peter@korsgaard.com> Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
* support/testing/tests/fs/test_f2fs: fix flake8 warningThomas Petazzoni2018-11-081-2/+4
| | | | | | | | | | This commit fixes the following flake8 warnings: support/testing/tests/fs/test_f2fs.py:6:1: E302 expected 2 blank lines, found 1 support/testing/tests/fs/test_f2fs.py:12:1: E302 expected 2 blank lines, found 1 support/testing/tests/fs/test_f2fs.py:38:23: E225 missing whitespace around operator Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: add test for the f2fs filesystem supportGrzegorz Blach2018-11-082-0/+54
| | | | | Signed-off-by: Grzegorz Blach <grzegorz@blach.pl> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/scripts/mkmakefile: make wrapper silent by defaultSerj Kalichev2018-11-021-1/+8
| | | | | | | | | | | | | | | Suppose we use Makefile wrapper and build some project out of buildroot tree (O=...). A command like "make busybox-all-external-deps" will output the string "uname 022 && make ..." to stdout before the usefull information. It pollutes stdout. At the same time if we use the same command in the buildroot source-tree then we don't get the additional output. This patch makes wrapper silent by default. People who prefer to see more verbose output can use V=1. Signed-off-by: Serj Kalichev <serj.kalichev@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* kconfig: Refresh patchesPetr Vorel2018-10-303-15/+15
| | | | | Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* kconfig: Restore missing custom changes + add patchesPetr Vorel2018-10-304-2/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 6eacea5ae0 accidentally removed these changes in merge_config.sh: 0f56304521 ("merge_config.sh: create temporary files in /tmp") 28fac3973b ("merge_config.sh: add br2-external support") Changes were lost because commits just changed files, but didn't add patches. Therefore not only restore our changes, but also add (updated) patches. Missing 0f56304521 caused breaking merge_config.sh when used in out of tree build: $ make -C buildroot O=$PWD/output defconfig ... $ cd output $ echo 'BR2_TARGET_GENERIC_HOSTNAME="test"' > test.frag $ ../buildroot/support/kconfig/merge_config.sh .config test.frag Using .config as base Merging test.frag umask 0022 && make -C /home/test/buildroot O=/home/test/output/. alldefconfig GEN /home/test/output/Makefile *** Can't read seed configuration "./.tmp.config.qIcpASpUyh"! make[1]: *** [Makefile:925: alldefconfig] Error 1 make: *** [Makefile:16: _all] Error 2 Fixes: 6eacea5ae0 support/kconfig: bump to kconfig from Linux 4.17-rc2 Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Reported-by: Erico Nunes <nunes.erico@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* kconfig: Add missing patchPetr Vorel2018-10-301-0/+26
| | | | | | | | | which was specified, but not added during last update. Fixes: 6eacea5ae0 ("support/kconfig: bump to kconfig from Linux 4.17-rc2") Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/testing: test_hardening fix flake8 whitespaceMatt Weber2018-10-201-1/+1
| | | | | | | | Resolves: support/testing/tests/core/test_hardening.py:25:42: E231 missing whitespace after ',' Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/config-fragments/autobuild: test the ARM AArch64 toolchainThomas Petazzoni2018-10-202-0/+5
| | | | Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/config-fragments: add RISC-V 64-bit to autobuild configsMark Corbin2018-10-202-0/+3
| | | | | | | | Add a minimal RISC-V 64-bit autobuild configuration for the internal toolchain with glibc. Signed-off-by: Mark Corbin <mark.corbin@embecosm.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/testing/tests/core: SSP & hardening flagsMatt Weber2018-10-201-0/+110
| | | | | | | | | Catch the commonly used options of SSP, Relro, and fortify. Using the package targets of busybox and lighttpd. This can easily be expanded to a larger list. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/testing: fix TestATFMarvell test caseThomas Petazzoni2018-10-141-2/+2
| | | | | | | | | | | | | | | This test case uses a too old U-Boot version, which is affected by the infamous libfdt header conflict issue. We update U-Boot and ATF to what is used in the current version of solidrun_macchiatobin_mainline_defconfig, for which the problem no longer exists. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/107860312 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/testing: fix TestATFAllwinner test caseThomas Petazzoni2018-10-141-1/+1
| | | | | | | | | | | | | | This test case uses a too old U-Boot version, which is affected by the infamous libfdt header conflict issue. Let's update to U-Boot 2017.11, which is used by our current bananapi_m64_defconfig that was the inspiration for this test case. Fixes: https://gitlab.com/buildroot.org/buildroot/-/jobs/107860310 Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/testing: add python-twisted testsRicardo Martincoski2018-10-111-0/+54
| | | | | | | | | | | | Use a minimal script to listen to a port and check using netstat. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Asaf Kahlon <asafka7@gmail.com> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com> [Thomas: increase the delay after starting the Twisted server, as 5 seconds was not enough for Python 3.x configurations.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: add python-incremental testsRicardo Martincoski2018-10-111-0/+34
| | | | | | | | | | | Add a simple test case that imports the module and asserts a version string for a fake package is generated. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Asaf Kahlon <asafka7@gmail.com> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: add python-txtorcon testsRicardo Martincoski2018-10-111-0/+32
| | | | | | | | | | Add a simple test case that imports the module. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Asaf Kahlon <asafka7@gmail.com> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: add python-txaio testsRicardo Martincoski2018-10-111-0/+34
| | | | | | | | | | | Add a simple test case that imports the module to use with twisted in Python 2 and with asyncio in Python 3. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Asaf Kahlon <asafka7@gmail.com> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: add python-autobahn testsRicardo Martincoski2018-10-111-0/+32
| | | | | | | | | | Add a simple test case that imports the module. Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Asaf Kahlon <asafka7@gmail.com> Cc: Yegor Yefremov <yegorslists@googlemail.com> Reviewed-by: Yegor Yefremov <yegorslists@googlemail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* package/pkg-generic.mk: increase precision of timestampsThomas Petazzoni2018-10-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | Currently, the timestamps that we keep in build-time.log use a second-level precision. However, as we are going to introduce a new type of graph to draw the time line of a build, this precision is going to be insufficient, as a number of steps are so short that they are not even one second long, and generally the rounding to the second gives a not so great looking graph. Therefore, we add to the timestamps the nanoseconds using the %N date specifier. A milli-second precision would have been sufficient, but %N is all what date(1) provides at the sub-second level. Since this is changing the format of the build-time.log file, this commit adjusts the support/scripts/graph-build-time script accordingly, to account for the floating point numbers that we have as timestamps. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/scripts/pkg-stats: URL check using threadsMatt Weber2018-10-091-6/+19
| | | | | | | | | | | | | Adds a pool of worker threads to accelerate connection testing. ~7.5MB and 2% CPU per thread on a Intel i5-3230M CPU @ 2.60GHz. Runtime is ~3min in parallel vs ~15min. CC: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/scripts/pkg-stats: URL checking supportMatt Weber2018-10-091-0/+57
| | | | | | | | | | | | | | | | | | | - Adds support to check if a package has a URL and if that URL is valid by doing a header request. - Reports this information as part of the generated html output The URL data is currently gathered from the URL string provided in the Kconfig help sections for each package. This check helps ensure the URLs are valid and can be used for other scripting purposes as the product's home site/URL. CPE XML generation is an example of a case that could use this product URL as part of an automated update generation script. CC: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Matt Weber <matthew.weber@rockwellcollins.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/kconfig: bump to kconfig from Linux 4.17-rc2Petr Vorel2018-09-2047-3099/+3455
| | | | | Signed-off-by: Petr Vorel <petr.vorel@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/scripts/mkusers: preserve group membersJohan Oudinet2018-09-121-2/+11
| | | | | | | | | | | | When the function add_one_group is called on an existing group, make sure the members of this group are not removed in the process of deleting then re-adding the group. Signed-off-by: Johan Oudinet <johan.oudinet@gmail.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> [Thomas: add curly braces when referencing ${members}, as suggested by Yann.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* download/git: fix code-styleYann E. MORIN2018-09-101-1/+1
| | | | | | | | This file uses leading spaces, not TABs. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* dependencies: host-make version checkRomain Naour2018-09-082-0/+58
| | | | | | | | | | | | | | | | | | | | | | | | The host make program is already checked by dependencies.sh but we want to check the version number even if Buildroot is able to use GNU make >= 3.81 but some packages may require a more recent version. For example, since version 2.28 [1], glibc requires GNU Make >= 4.0. For packages requiring make >= 4.0, the package makefile must use: <PKG>_DEPENDENCIES = $(BR2_MAKE_HOST_DEPENDENCY) ... <PKG>_MAKE = $(BR2_MAKE) BR2_MAKE1 is also available if needed. [1] https://www.sourceware.org/ml/libc-alpha/2018-08/msg00003.html Signed-off-by: Romain Naour <romain.naour@gmail.com> Cc: Baruch Siach <baruch@tkos.co.il> Cc: Thomas Petazzoni <thomas.petazzoni@bootlin.com> Tested-by: Matt Weber <matthew.weber@rockwellcollins.com> [Thomas: remove extraction of "bugfix" part of the version, since it's not used anywhere.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Merge branch 'next'Peter Korsgaard2018-09-073-47/+7
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * support/misc: updating Vagrantfile to ubuntu 18.04Angelo Compagnucci2018-08-131-1/+1
| | | | | | | | | | | | | | | | | | This patch updates the vagrant box to ubuntu bionic 64 and switches back to the official ubuntu image cause the issues with the official image are now solved. Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
| * support/testing/infra: rm extra log flush in builder.pyMatt Weber2018-08-111-1/+0
| | | | | | | | | | | | | | | | While integrating proxy support in builder.py, a log flush was left in the code. This commit cleans/removes that code. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
| * support/testing: runtest proxy supportMatt Weber2018-08-101-0/+6
| | | | | | | | | | | | | | | | | | Allow builder.py to inherit the system proxy settings from the env if they are present. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
| * support/download: remove help from wrapperYann E. MORIN2018-08-091-46/+1
| | | | | | | | | | | | | | | | | | | | The download wrapper is a purely internal helper, and is not supposed to be callable manually. No need to offer some help. Besides, the help text was way out-dated. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | Update for 2018.08Peter Korsgaard2018-09-061-1/+1
| | | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | download: fix file:// BR2_PRIMARY_SITE (download cache)Hollis Blanchard2018-08-211-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | wget is the only downloader currently usable with BR2_PRIMARY_SITE, and that doesn't work at all for file:// URLs. The symptoms are these: support/download/dl-wrapper -c '2.4.47' -d '/PATH/build/sw/source/attr' -D '/PATH/build/sw/source' -f 'attr-2.4.47.src.tar.gz' -H 'package/attr//attr.hash' -n 'attr-2.4.47' -N 'attr' -o '/PATH/build/sw/source/attr/attr-2.4.47.src.tar.gz' -u file\|urlencode+file:///NFS/buildroot_dl_cache/attr -u file\|urlencode+file:///NFS/buildroot_dl_cache -u http+http://download.savannah.gnu.org/releases/attr -u http\|urlencode+http://sources.buildroot.net/attr -u http\|urlencode+http://sources.buildroot.net -- file:///NFS/buildroot_dl_cache/attr/attr-2.4.47.src.tar.gz: Unsupported scheme `file'. ERROR: attr-2.4.47.src.tar.gz has wrong sha256 hash: ERROR: expected: 25772f653ac5b2e3ceeb89df50e4688891e21f723c460636548971652af0a859 ERROR: got : e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 ERROR: Incomplete download, or man-in-the-middle (MITM) attack In the case of custom Linux kernel versions, this is fatal, because there isn't necessarily a hash file to indicate that wget's empty tarball is wrong. This seems to have been broken by commit c8ef0c03b0b, because: 1. BR2_PRIMARY_SITE always appends "urlencode" (package/pkg-download.mk) 2. Anything with the "|urlencode" suffix in $uri will end up using wget due to the backend case wildcarding. 3. The wget backend rejects file:/// URLs ("unsupported scheme"), and we end up with an empty .tar.gz file in the downloads directory. Fix that by shell-extracting the backend name from the left of "|". I'm not positive if all URLs will have a "|", so this code only looks for a "|" left of the "+". Signed-off-by: Hollis Blanchard <hollis_blanchard@mentor.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | support/dependencies: check for system-provided bison and flexYann E. MORIN2018-08-201-0/+10
| | | | | | | | | | | | | | 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: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | support/testing: add test for file capabilitiesRicardo Martincoski2018-08-103-0/+55
|/ | | | | Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* support/misc/toolchainfile.cmake.in: use TARGET_LDFLAGS for shared and ↵Damien Thébault2018-07-191-0/+2
| | | | | | | | | | | | | | module libraries With cmake packages, we are only using TARGET_LDFLAGS for executables and not for shared libraries. This patch adds CMAKE_SHARED_LINKER_FLAGS and CMAKE_MODULE_LINKER_FLAGS to the cmake toolchain file so that buildroot TARGET_LDFLAGS are used for shared and module libraries. Signed-off-by: Damien Thébault <damien.thebault@vitec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/dependencies/dependencies.sh: add details for Redhat/FedoraDavid De Grave (Essensium/Mind)2018-07-021-0/+2
| | | | | | | | | Add the i686 package list to install when using pre-built 32 bits binaries with a redhat/fedora host distribution (glibc.i686 and zlib.i686). Signed-off-by: David De Grave (Essensium/Mind) <david.degrave@mind.be> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/config-fragments/autobuild: update pre-built Buildroot toolchainsThomas Petazzoni2018-06-3028-28/+28
| | | | | | | | All pre-built Buildroot toolchains have been rebuilt with Buildroot 2018.05, so this commit updates the corresponding configuration fragments to make sure the autobuilders use the new toolchains. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/config-fragments/autobuild: add Linaro AArch64 BE supportOfer Heifetz2018-06-282-0/+4
| | | | | | Signed-off-by: Ofer Heifetz <oferh@marvell.com> Reviewed-by: Romain Naour <romain.naour@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/docker: use the distro-provided flake8Yann E. MORIN2018-06-171-9/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, we install flake8 and its dependencies via pip. We tried to be reproducible by pinning the version of those python packages, but we did forget quite a few of them, and thus some dependencies for flake8 are installed as uncontrolled versions. Furthermore, before we install flake8 and its dependencies, we forcibly update pip, setuptools, and wheels packages to their latest versions. This explicitly breaks reproducibility. While we could enforce a specific version of all those packages and still grab them from PyPI, we can simply grab them from the distribution-provided packages instead. Since we're using a pinned version of stretch, this already guarantees we'll reproducibly get the same versions over and over again. Besides, we just need to list flake8 as a package to install to automatically get all its dependencies (again, in a reproducible way). This has the slight unfortunate drawback of downgrading flake8 to version 3.2.1, from version 3.5.0, as well as downgrading a few of flake8's dependencies, as noticed by Ricardo: http://lists.busybox.net/pipermail/buildroot/2018-May/222376.html However, as Ricardo said, there isn't "any serious limitation of this old version, the release notes for a version in the between mentions 'Dramatically improve the performance' but we have a limited number of scripts and running on Gitlab for all of them still takes less than 5 minutes". Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> Acked-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/docker: sort the list of installed packagesYann E. MORIN2018-06-171-6/+23
| | | | | | | | | | | | | | | As suggested in the docker best practices [0], order the package list alphabetically, and list only one package per line. This will be much usefull later, we need to update the list of installed packages, like adding new ones for example. [0] https://docs.docker.com/develop/develop-images/dockerfile_best-practices/#sort-multi-line-arguments Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/testing: fix python syntaxYann E. MORIN2018-06-103-18/+18
| | | | | | | | | | | | Fix three issues with code style in our test infra: - 'print' is now a function, - exceptions need to be caught-assigned with the 'as' keyword, - old-style "%s"%() formatting is deprecated. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> [Thomas: drop indices in format strings.] Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* dependencies.sh: add perl autodie for whoisFabrice Fontaine2018-06-051-0/+4
| | | | | | | | | | Add dependency on perl autodie if whois package is selected Fixes: - http://autobuild.buildroot.net/results/4d2ca14580cbc73f94e86ee834fac6d2541298ec Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* dl-wrapper: Fix support for URIs containing '+'Robert Beckett2018-06-041-1/+1
| | | | | | | | | | | | | | | | | | | | | '+' is a valid character in a url. The current dl-wrapper gets the URI scheme by dropping everything after the last '+' character, with the intension of finding 'git' from e.g. 'git+https://uri'. If a uri has a '+' anywhere in it, it ends up using too much of the string as a scheme, and fails to match the handler properly. An example of where this form of URI is used is when using deploy tokens in gitlab. It uses a form like https://<username>:<password>@gitlab.com/<group>/<repo.git> where username for deploy token is of the form 'gitlab+deploy-token-<number>'. Use the %% operator to search backwards until the last '+' character when dropping the rest of the string as we know that the first '+' in the string should be the scheme. Signed-off-by: Robert Beckett <bbeckett@netvu.org.uk> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* support/docker: run apt-get update and apt-get install in two RUNsYann E. MORIN2018-06-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | In commit 7517aef4d (support/docker: limit the number of layers), we reduced the number of layers by coalescing multiple RUN commands into less commands. In doing so, we especially coalesced "apt-get update" with "apt-get install". However, the distribution we used is a pinned version of stretch, so we know that running apt-get update will always yield the same apt database. If we split the two apt-get commands, then we can re-use any local intermediate image when we need to update the list of packages to install; this helps quite a bit when testing the docker files over and over again, with just slight variants in the packages list. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Ricardo Martincoski <ricardo.martincoski@gmail.com> Cc: Peter Korsgaard <peter@korsgaard.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* Merge branch 'next'Peter Korsgaard2018-06-021-6/+6
|\ | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
| * support/scripts/pkg-stats: use parenthesis for printMatt Weber2018-05-191-6/+6
| | | | | | | | | | | | | | | | | | Use Python 3 style print calls, in order to make pkg-stats Python 3 compliant. Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Reviewed-by: Ricardo Martincoski <ricardo.martincoski@datacom.ind.br> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | Update for 2018.05Peter Korsgaard2018-06-011-1/+1
| | | | | | | | Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | download/cvs: add a 10 minute timeoutArnout Vandecappelle (Essensium/Mind)2018-05-311-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apparently, CVS servers can be deadlocked and in that case clients will retry connecting to them indefinitely. Cfr. http://autobuild.buildroot.net/results/23d/23d1034b33d0354de15de2ec4a8ccd0603e8db78/build-end.log Apparently, the sf.net CVS server got in such a deadlock on 2018-05-18, and almost 2 weeks later it is still not fixed. Instead of just hanging, we should fall back on BR2_SECONDARY_SITE. To achieve this, it's sufficient to add a timeout to the CVS command. The timeout value is of course arbitrary. However, we can assume that nobody will be putting large projects under CVS any more. So if the download takes more than 5 minutes, it's probably broken. Let's put the timeout at 10 minutes then. Fixes: http://autobuild.buildroot.net/results/db3/db33d4fa507fb3b4132423cd0a7e25a1fe6e4105 http://autobuild.buildroot.net/results/b6d/b6d927dcc73ac8d754422577dacefff4ff918a5c http://autobuild.buildroot.net/results/23d/23d1034b33d0354de15de2ec4a8ccd0603e8db78 http://autobuild.buildroot.net/results/127/1272a3aa3077e434c9805ec3034f35e6fcc330d4 Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
* | support/download/file: remove set -xAngelo Compagnucci2018-05-131-1/+0
| | | | | | | | | | | | Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
* | support/download/file: fix file:// protocol handlingAngelo Compagnucci2018-05-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since the rework of the download infrastructure, the "file" download helper gets passed an URL that starts with file://, but forgets to strip it before passing it to "cp", causing a failure as the "cp" program isn't prepared for file paths starting with file://. This is fixed by stripping the file:// at the beginning of the URL. In addition, the path passed to cp lacked a slash between the directory path and the filename part of the url. This is fixed by adding a slash at the appropriate places. Fixes the following build failure when the "file" download method is used: cp: cannot stat 'file:///home/angelo/DEV/TOOLCHAINSarmv7-eabihf--glibc--bleeding-edge-2017.11-1.tar.bz2': No such file or directory Signed-off-by: Angelo Compagnucci <angelo@amarulasolutions.com> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
OpenPOWER on IntegriCloud