Commit Graph

1976 Commits

Author SHA1 Message Date
Peter Korsgaard
c7618236c1 Update for 2024.08.1
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-20 15:41:51 +02:00
86c4680beb support/testing: add new test for dtc
Add a test that runs the dtc commandline tools. To test devicetree
compilation, we use an example devicetree from the dtc project. The
example source is GPL-2.0+ licensed.

Signed-off-by: Brandon Maier <brandon.maier@gmail.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
(cherry picked from commit 9b69034160)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-19 22:10:23 +02:00
Peter Korsgaard
c0a0849e72 support/testing/tests/package/test_weston/overlay/etc/weston.ini: fix 'independent' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 0ab62e5d25)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:24 +02:00
Peter Korsgaard
c6c872f494 support/testing/tests/package/test_mtools.py: fix 'unformatted' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 064f879d96)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:23 +02:00
Peter Korsgaard
b347b51250 support/testing/tests/package/test_micropython.py: fix 'returned' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 4a8aafecf0)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:22 +02:00
Peter Korsgaard
aaabe7720f support/testing/tests/package/test_iptables.py: fix 'OUTPUT' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 1772ad2f5f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:21 +02:00
Peter Korsgaard
f0a248e16c support/testing/tests/package/test_ddrescue.py: fix 'normally' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 98f7a32d05)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:21 +02:00
Peter Korsgaard
07222174fd support/testing/tests/package/test_cryptsetup.py: fix 'encrypted' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 28c56bc26f)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:20 +02:00
Peter Korsgaard
557d2e0e56 support/testing/tests/package/test_compressor_base.py: fix 'extension' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 68316831e4)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:19 +02:00
Peter Korsgaard
de55528c6e support/testing/tests/package/test_bash.py: fix 'running' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c62de54852)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:18 +02:00
Peter Korsgaard
ade2368fae support/testing/tests/package/test_acpica.py: fix typos in comments
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 670f6a4bf5)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:18 +02:00
Peter Korsgaard
b4cae331e8 support/testing/tests/init/test_systemd.py: fix 'on top' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit c89a111f06)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:17 +02:00
Peter Korsgaard
917a81b342 support/scripts/pkg-stats: fix 'dictionary' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit db6a029a50)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:16 +02:00
Peter Korsgaard
04557874c1 support/scripts/graph-build-time: fix 'auxiliary' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 9c9aa7ffba)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:15 +02:00
Peter Korsgaard
a24532ff04 support/scripts/cve.py: fix 'useful' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit da0d6d5834)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:14 +02:00
Peter Korsgaard
3d5595d8f7 support/misc/utils.mk: fix typos
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 146c1d38de)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:13 +02:00
Peter Korsgaard
03824b9a6d support/misc/Buildroot.cmake: fix 'after all' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit 8f0872fee3)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:13 +02:00
Peter Korsgaard
4809708664 support/kconfig: fix 'multiple' typo in patch description
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit b0a9bc9ce7)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:12 +02:00
Peter Korsgaard
4ca5d89653 support/dependencies/dependencies.sh: fix 'mimic' typo
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
(cherry picked from commit ca4eca4bfa)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:59:11 +02:00
Yann E. MORIN
3b15f7defb support/scripts: fix RPATH fixups
Commit a87abcf6da (Makefile: run PPD and RPATH fixup in host-fialize)
(sic) moved the fixups peviously done in prepare-sdk, to host-finalize.

This exposed a bug in fix-rpath, when RPATH contains multiple entries,
like:  /PPD/host-foo/host/lib:/PPD/host-foo/host/lib/foo

In that situation, we want to get rid of /PPD/host-foo and replace it
with the finale HOST_DIR, so we mangle the RPATH with a sed expression.

However, that sed expression only ever replaces the first match, as it
is missing the 'g' option. Thus, the second (and following) parts of
RPATH are still referring to the PPD, and thus patchelf does not find it
relative to the final HOST_DIR, amd rops it. This eventually lead to a
final RPATH set as $ORIGIN/../lib instead of the expected
$ORIGIN/../lib:$ORIGIN/../lib/foo

This is the case for host-systemd, which installs some of its libraries
in $PREFIX/lib/systemd/ and adds an RPATH set appropriately to
/PPD/host-systemd/host/lib:/PPD/host-systemd/host/lib/systemd and that
gets incorrectly mangled.

Fixes: https://gitlab.com/buildroot.org/buildroot/-/issues/39

Also fix a typo in the comment just above.

Reported-by: José Luis Salvador Rufo @jlsalvador
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Tested-by: José Luis Salvador Rufo <salvador.joseluis@gmail.com>
Reviewed-by: José Luis Salvador Rufo <salvador.joseluis@gmail.com>
Tested-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Reviewed-by: Adam Duskett <adam.duskett@amarulasolutions.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 2100a76d9e)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-12 15:54:35 +02:00
Julien Olivain
d9b36ca5f1 support/testing: fs: new erofs runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
(cherry picked from commit 21e9bb0967)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-11 16:12:31 +02:00
Julien Olivain
df341bd347 support/testing: add pv runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8c5e4be97c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-03 16:57:17 +02:00
Julien Olivain
0746a50e01 support/testing: add exfatprogs runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit f366528987)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-10-03 16:57:13 +02:00
Peter Korsgaard
30f9e284d9 support/misc/Vagrantfile: support libvirt provider
And configure memory/CPU like for the other providers.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 75b543880c)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-09-19 10:33:12 +02:00
Peter Korsgaard
bd83efd288 support/misc/Vagrantfile: move to Debian bullseye (12)
Ubuntu Bionic (18.04) was EOL'ed in June 2023:

https://ubuntu.com//blog/18-04-end-of-standard-support

And the VM image is only available in virtualbox format:

https://app.vagrantup.com/ubuntu/boxes/bionic64

So move to Debian bullseye (12), matching what we do for the docker image.
This is available in virtualbox and libvirt (qemu) format:

https://app.vagrantup.com/debian/boxes/bullseye64

Bullseye does not come with rsync out of the box, so install it.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 6cedd92744)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-09-19 10:33:00 +02:00
Peter Korsgaard
769d71ae84 Update for 2024.08
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-09-06 15:01:24 +02:00
Peter Korsgaard
2bd1723c0a support/scripts/genimage.sh: drop gzip compression
Commit 6889056f1e (support/scripts/genimage.sh: support creating a bmap
image) added unconditional gzip compression of the genimage outputs if
bmap-tools is enabled, which is problematic for a number of reasons:

- The gzip invocation is not reproducable (E.G. does not use -n)

- The original file is removed, dropping the sparse info

- It hardcodes policy, E.G.  bmap supports a number of different compression
  algorithms / compression may not be desired for all images / different
  compression levels may be desired

So drop the compression step.  If desired, compression can be done with a
post-image script.

Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Acked-by: TIAN Yuanhao <tianyuanhao3@163.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-30 19:09:17 +02:00
Julien Olivain
3da3361a1b support/testing: package: mariadb: fix test configuration
The mysql virtual package was removed in commit 8708f3a23a
"package/mysql: drop virtual package".

The mariadb runtime test was authored before this mysql virtual
package removal, but was merged after it, in commit 5356754d1e
"support/testing: add mariadb runtime test". Due to this, this test
always failed with the error:

    Makefile.legacy:9: *** "You have legacy configuration in your .config! Please check your configuration.".  Stop.

This commit fixes the issue by removing the legacy
BR2_PACKAGE_MYSQL=y configuration directive.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/7540345406

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-08-23 11:01:26 +02:00
Peter Korsgaard
18368f6608 Update for 2024.05.2
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
(cherry picked from commit 078f99a315)
[Peter: drop Makefile change]
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
2024-08-14 12:05:48 +02:00
Julien Olivain
fc4a727609 support/testing: add vorbis-tools runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-07 23:08:31 +02:00
Yann E. MORIN
e506946347 suport/testing/tests/package/test_flutter: extend to check rendering is happening
Commit 7f0af11cee (support/testing/tests/package/test_flutter.py: new
runtime test) added a simple test that just checked that the systemd
unit launching the application, was active.

It is perfectly possible, from a systemd perspective, that the unit is
active, while the application actually crashes.

Instead, what we need to check, is that the application does actually
render "something"; we don't really care what, as long as we know it is
actually rendering, thus the graphical stack is working and the
aplication stack is running.

Extend the flutter runtime test to also check that the framebuffer is
modified by the application when it is running, similarly to what we do
in the weston test.

We drop the activation of the unit and start it manually, as we want to
check the state of the CRC before, while, and after the application
runs.

We also need to disable the blinking cursor on the console, or we would
not be able to detect whether a change in CRC is due to the application
starting rendering, or to the cursor blinking. We tell the kernel to
disable the cursor with the appropriate kernel command line parameter.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Adam Duskett <aduskett@gmail.com>
Reviewed-by: Adam Duskett <aduskett@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-07 22:53:41 +02:00
Yann E. MORIN
69629bae7c support/testing/test/graphics_base: add helper to test graphics rendering
In 4edb0e3456 (support/testing/tests/package/test_weston.py: new
runtime test), the weston test was introduced, and thus was the first
that needed to test that rendering was happening.

Now we also have a test for a flutter application, and we'll want to
have it test the rendering too.

Move the corresponding code to a helper that can be reused by other
tests, rather than duplicate (or reinvent) it.

Switch weston to using that new helper.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-07 22:53:28 +02:00
Julien Olivain
b6f4d79df2 support/testing: package: gpsd: fix test by enabling python support
Commit 9696d27756 "package/gpsd: condition python stuff to the proper
kconfig option" changed the condition in which the gpsd python scripts
are installed. After that change, the "gpsfake" command (which is a
python script) is no longer found and the runtime test is failing.

This commit fixes the issue by reflecting the change in the runtime
test Buildroot configuration.

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-07 12:03:45 +02:00
Julien Olivain
73e8652b57 support/testing: add lame runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-06 23:22:43 +02:00
Julien Olivain
4a285b160f support/testing: test_audio_codec_base.py: new helper class
This is a helper class providing a template for testing audio codec
programs such as lame mp3 encoder, flac tools, ogg vorbis-tools, ...

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-06 23:21:33 +02:00
Julien Olivain
4dc5c45bd2 support/testing/tests/package/test_swipl.py: new test
This commit adds a test case for the recently added swipl package. It
should have been part of commit
69710addd1 ("package/swipl: new
package") but was forgotten.

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-06 22:06:11 +02:00
Julien Olivain
5356754d1e support/testing: add mariadb runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-03 12:39:22 +02:00
Julien Olivain
3e1e49069d support/testing: add make runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-08-03 12:34:21 +02:00
Julien Olivain
7a6edbc7b9 support/testing/infra/emulator.py: add host load info in run log
Runtime tests running on test runners are subject to a high
variability in term of performance and timing. Most or the runtime
test commands are executed with a timeout, in pexpect.

Slow or very loaded test runners can use the timeout_multiplier to
globally increase those timeouts.

Some runtime test commands sometimes needs to poll or query a state,
rather than having purely sequential actions. It is sometimes hard to
know, from the test writer point of view, the maximum timeout to set, or
if a retry logic is needed.

In order to help debugging runtime tests failing due very slow
execution, this commit adds extra information on the host test runner
about its load in the run log. Relevant information are: number of
cpus, the load average at the moment the emulator is started and the
current timeout_multiplier.

Note: this change was discussed in:
https://lists.buildroot.org/pipermail/buildroot/2024-July/759119.html

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-28 21:51:01 +02:00
J. Neuschäfer
7801890c3a support/testing: add testing for eltest in execline test
The previous commit removes s6-test from the runtime tests. This
commit adds the same test for eltest, which replaced s6-test.

Signed-off-by: J. Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-27 16:23:41 +02:00
J. Neuschäfer
6b70913703 support/testing: fix s6-portable-utils test
s6-test was removed in s6-portable-utils 2.3.0.0, and replaced with
eltest (from execline). This change broke the existing runtime tests
with commit 42fad03182 ("packages: bump skalibs-related packages").

Instead of s6-test simply use the shell built-in "test", which provides
sufficient functionality.

Fixes:

  https://gitlab.com/buildroot.org/buildroot/-/jobs/7338388010

Signed-off-by: J. Neuschäfer <j.neuschaefer@gmx.net>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-27 16:20:25 +02:00
Julien Olivain
49156a0fa4 support/testing: package: gpsd: fix gpsfake command line
The gpsfake command line has a typo (a missing space), which makes the
next gpsctl command to always fail.

This commit fixes the issue by adding the missing space.

Fixes:
https://gitlab.com/buildroot.org/buildroot/-/jobs/7391792948

Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-23 10:50:08 +02:00
Julien Olivain
b09ae4f045 support/testing: add 4th runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-22 22:20:58 +02:00
Brandon Maier
95e1043013 support/testing/infra/emulator.py: support init=/bin/sh
The TestInitSystemNone bypasses the normal init and instead launches
directly into a shell. So it needs to bypass the login code and go
directly to a shell.

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-22 21:51:00 +02:00
Brandon Maier
5ed1fab018 support/testing: fix TestInitSystemNone for non-login shell
This test started failing at commit
0cad947b96
"support/testing/infra/emulator.py: fix qemu prompt detection" with the
error message

  AttributeError: 'NoneType' object has no attribute 'run_command'

This is because we changed emulator.run() so that emulator.login() must
be called first. But this test skips the login and goes directly to a
shell. Use the new emulator.connect_shell() function which prepares the
shell without logging in.

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-22 21:49:40 +02:00
Julien Olivain
91738f5093 support/testing: add iproute2 runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-22 14:28:29 +02:00
Julien Olivain
5510d2890f support/testing: add nmap runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2024-07-22 09:41:09 +02:00
Julien Olivain
9c8f6dc5e4 support/testing: add gpsd runtime testing
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-20 23:21:56 +02:00
Julien Olivain
f04a95f79f support/testing: add mawk runtime test
Signed-off-by: Julien Olivain <ju.o@free.fr>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2024-07-20 23:11:48 +02:00
Brandon Maier
9b843284d2 support/testing: fix package/test_s6_networking.py
This test fails with the following error

  -sh: s6-tcpserver4: not found

In release 2.6.0.0 of s6-networking the `s6-tcpserver4` was unified into
a new `s6-tcpserver` command[1].

[1] https://github.com/skarnet/s6-networking/blob/master/NEWS#L33

Signed-off-by: Brandon Maier <brandon.maier@collins.com>
Signed-off-by: Arnout Vandecappelle <arnout@mind.be>
2024-07-15 16:49:52 +02:00