From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 0/6 v3] support: script to build-test packages
Date: Wed, 8 Feb 2017 21:15:25 +0100 [thread overview]
Message-ID: <cover.1486584734.git.yann.morin.1998@free.fr> (raw)
Hello All!
As Thomas Petazzoni initially wrote (and slightly edited to match the
new script):
This has been often asked, and yesterday I needed it, so I did a quick
and dirty hack. The following script takes as argument a defconfig
fragment that defines a bunch of Buildroot configuration options, and
will built this fragment against all the toolchain configurations
tested in the autobuilders.
Example:
$ cat test-jack2.snippet
BR2_PACKAGE_JACK2=y
BR2_PACKAGE_JACK2_LEGACY=y
BR2_PACKAGE_JACK2_DBUS=y
$ ./support/scripts/test-pkg -c test-jack2.snippet -d ~/br-test-jack2 -p jack2
armv5-ctng-linux-gnueabi : download config, olddefconfig, dirclean, build: OK
armv7-ctng-linux-gnueabihf : download config, olddefconfig, dirclean, build: OK
br-aarch64-glibc : download config, olddefconfig, dirclean, build: OK
br-arcle-hs38 : download config, olddefconfig, dirclean, build: OK
br-arm-basic : download config, olddefconfig, SKIPPED
br-arm-cortex-a9-glibc : download config, olddefconfig, dirclean, build: OK
br-arm-cortex-a9-musl : download config, olddefconfig, dirclean, build: OK
br-arm-cortex-m4-full : download config, olddefconfig, SKIPPED
br-arm-full : download config, olddefconfig, dirclean, build: OK
br-arm-full-nothread : download config, olddefconfig, SKIPPED
br-arm-full-static : download config, olddefconfig, SKIPPED
br-bfin-full : download config, olddefconfig, SKIPPED
br-i386-pentium4-full : download config, olddefconfig, dirclean, build: OK
br-i386-pentium-mmx-musl : download config, olddefconfig, dirclean, build: OK
br-m68k-5208-full : download config, olddefconfig, SKIPPED
br-m68k-68040-full : download config, olddefconfig, dirclean, build: OK
br-microblazeel-full : download config, olddefconfig, dirclean, build: OK
br-mips64-n64-full : download config, olddefconfig, dirclean, build: OK
br-mips32r6-el-hf-glibc : download config, olddefconfig, dirclean, build: OK
br-mips64r6-el-hf-glibc : download config, olddefconfig, dirclean, build: OK
br-mipsel-o32-full : download config, olddefconfig, dirclean, build: OK
br-nios2-glibc : download config, olddefconfig, dirclean, build: OK
br-powerpc-603e-basic-cpp : download config, olddefconfig, SKIPPED
br-powerpc64le-power8-glibc : download config, olddefconfig, dirclean, build: OK
br-powerpc64-power7-glibc : download config, olddefconfig, dirclean, build: OK
br-powerpc-e500mc-full : download config, olddefconfig, dirclean, build: OK
br-sh4-full : download config, olddefconfig, dirclean, build: OK
br-sparc-uclibc : download config, olddefconfig, SKIPPED
br-sparc64-glibc : download config, olddefconfig, dirclean, build: OK
br-x86-64-core2-full : download config, olddefconfig, dirclean, build: OK
br-x86-64-musl : download config, olddefconfig, dirclean, build: OK
br-xtensa-full : download config, olddefconfig, dirclean, build: OK
i686-ctng-linux-gnu : download config, olddefconfig, dirclean, build: OK
linaro-aarch64 : download config, olddefconfig, dirclean, build: FAILED
linaro-arm : download config, olddefconfig, dirclean, build: FAILED
mips64el-ctng_n32-linux-gnu : download config, olddefconfig, dirclean, build: OK
mips64el-ctng_n64-linux-gnu : download config, olddefconfig, dirclean, build: FAILED
powerpc-ctng_e500v2-linux-gnuspe : download config, olddefconfig, dirclean, build: OK
sourcery-arm-armv4t : download config, olddefconfig, dirclean, build: OK
sourcery-arm : download config, olddefconfig, dirclean, build: OK
sourcery-arm-thumb2 : download config, olddefconfig, dirclean, build: OK
sourcery-mips64 : download config, olddefconfig, dirclean, build: OK
sourcery-mips : download config, olddefconfig, dirclean, build: OK
sourcery-nios2 : download config, olddefconfig, dirclean, build: OK
sourcery-sh : download config, olddefconfig, dirclean, build: FAILED
sourcery-x86-64 : download config, olddefconfig, dirclean, build: OK
sourcery-x86 : download config, olddefconfig, dirclean, build: OK
x86_64-ctng_locales-linux-gnu : download config, olddefconfig, dirclean, build: OK
8 configurations were skipped
4 configurations would not build
So, the jack2 package, with both its "legacy" and "dbus" backends has
been built in all those configurations.
It says "OK" when the build was successful, "FAILED" when it failed and
"SKIPPED" when for some reason the options could not be enabled for the
current toolchain configuration (for example if this package is
disabled on this architecture, or if a toolchain feature is missing,
etc.).
Note that the script excludes the "internal toolchain" configurations,
because they take too long to build.
One nice trick is that you can re-run the script, and it will simply
restart the build. So after fixing your package, if you want to test it
again, you don't have to clean everything and restart from scratch: the
build directory for your package is removed in each output directory,
and the build resumed.
Changes v2 -> v3:
- simplify the code to store missing config lines (Luca)
- properly run when -r is not provided
- add 5th path to use an alternate list
- add 6th patch to print the progress [n/N] for each toolchain
Regards,
Yann E. MORIN.
The following changes since commit 5d065ef1da3c213ad6fc0d039f92dbbb68dca921
wget: add upstream patch to fix build failure (2017-02-08 15:41:53 +0100)
are available in the git repository at:
git://git.buildroot.org/~ymorin/git/buildroot.git
for you to fetch changes up to aeb2ab98194fac3ad0a73727707023552624d52e
support/test-pkg: print number of toolchain and progress (2017-02-08 21:05:35 +0100)
----------------------------------------------------------------
Yann E. MORIN (6):
support/scripts: add script to test a package
support/test-pkg: store lines missing from resulting configuraiton
support/test-pkg: report number and types of failures
supprt/test-pkg: add option to limit the number of tests
support/test-pkg: add option to use an alternate list of toolchains
support/test-pkg: print number of toolchain and progress
support/scripts/test-pkg | 257 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 257 insertions(+)
create mode 100755 support/scripts/test-pkg
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next reply other threads:[~2017-02-08 20:15 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-02-08 20:15 Yann E. MORIN [this message]
2017-02-08 20:15 ` [Buildroot] [PATCH 1/6] support/scripts: add script to test a package Yann E. MORIN
2017-02-08 22:00 ` Cam Hutchison
2017-02-08 22:39 ` Cam Hutchison
2017-02-11 16:08 ` Yann E. MORIN
2017-02-11 21:19 ` Thomas De Schampheleire
2017-02-11 22:28 ` Yann E. MORIN
2017-02-09 13:41 ` Luca Ceresoli
2017-02-09 21:50 ` Thomas Petazzoni
2017-02-09 22:00 ` Yann E. MORIN
2017-02-09 21:51 ` Thomas Petazzoni
2017-02-08 20:15 ` [Buildroot] [PATCH 2/6] support/test-pkg: store lines missing from resulting configuraiton Yann E. MORIN
2017-02-09 17:07 ` Luca Ceresoli
2017-02-09 21:58 ` Thomas Petazzoni
2017-02-08 20:15 ` [Buildroot] [PATCH 3/6] support/test-pkg: report number and types of failures Yann E. MORIN
2017-02-09 17:09 ` Luca Ceresoli
2017-02-09 21:59 ` Thomas Petazzoni
2017-02-11 19:48 ` Thomas De Schampheleire
2017-02-11 22:21 ` Yann E. MORIN
2017-02-08 20:15 ` [Buildroot] [PATCH 4/6] supprt/test-pkg: add option to limit the number of tests Yann E. MORIN
2017-02-09 22:13 ` Thomas Petazzoni
2017-02-08 20:15 ` [Buildroot] [PATCH 5/6] support/test-pkg: add option to use an alternate list of toolchains Yann E. MORIN
2017-02-11 19:53 ` Thomas De Schampheleire
2017-02-11 22:24 ` Yann E. MORIN
2017-02-08 20:15 ` [Buildroot] [PATCH 6/6] support/test-pkg: print number of toolchain and progress Yann E. MORIN
2017-02-11 20:09 ` Thomas De Schampheleire
2017-02-11 22:25 ` Yann E. MORIN
2017-02-12 6:40 ` Thomas De Schampheleire
2017-02-12 9:33 ` Yann E. MORIN
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1486584734.git.yann.morin.1998@free.fr \
--to=yann.morin.1998@free.fr \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox