summaryrefslogtreecommitdiffstats
path: root/tests/docker/Makefile.include
Commit message (Collapse)AuthorAgeFilesLines
...
* docker: add expansion for docker-test-FOO to Makefile.includeAlex Bennée2018-07-241-2/+4
| | | | | | | | | | | | | | This allows us to run a particular test on all docker images. For example: make docker-test-unit Will run the unit tests on every supported image. At the same time rename docker-test to docker-all-tests to be clearer. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: Makefile.include don't include partial imagesAlex Bennée2018-07-241-2/+7
| | | | | | | | | | | Rename DOCKER_INTERMEDIATE_IMAGES to DOCKER_PARTIAL_IMAGES and add the incomplete cross compiler images that can build tests but can't build QEMU itself. We also add debian, debian-bootstrap and the tricode images to the list. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: add linux-user powered cross builder for QEMUAlex Bennée2018-07-051-9/+33
| | | | | | | | | | | | | | | | We can't use cross compilers in the current Debian stable and Debian sid is sketchy as hell. So for powerpc fall back to dog-fooding our own linux-user to do the build. As we can only build the base image with a suitably configured source tree we fall back to checking for its existence when we can't build it from scratch. However this does mean you don't have to keep a static powerpc-linux-user in your active configuration just to update the cross build image. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: add special rule for deboostrapped imagesAlex Bennée2018-07-051-3/+21
| | | | | | | | | | | | | | | | We might as well have a custom rule for this. For one thing the dependencies are different. As the primary dependency for docker-image-% could never be docker-image-debian-bootstrap we can drop that test in the main rule as well. Missing EXECUTABLE, DEB_ARCH and DEB_TYPE are treated as hard faults now. We also error out if the EXECUTABLE file isn't there. We should really do this with a dependency on any source rules but currently subdir-FOO-linux-user isn't enough on a clean build. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: Do not run tests in 'intermediate' imagesPhilippe Mathieu-Daudé2018-07-051-1/+3
| | | | | | | | We can still build the DOCKER_INTERMEDIATE_IMAGES images, but they won't appear in 'make test*@$IMAGE'. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* tests/docker/Makefile.include: only force SID to NOCACHE if oldAlex Bennée2018-06-201-0/+6
| | | | | | | | Now we can check the age of a docker image we can be a little more intelligent about re-building Sid images and only force NOCACHE if it is "old". Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* tests/Makefile: call sub-makes with SKIP_DOCKER_BUILD=1Alex Bennée2018-06-201-1/+12
| | | | | | | | | As we now ensure all the images we are going to use are built in the top level make file lets not over complicate things by running the full script again. We do run the check script just in case someone deletes the docker image while we are running. Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: move debian-powerpc-cross to sid based buildAlex Bennée2018-06-201-3/+1Star
| | | | | | | | | | | | | The original Jessie based cross builder hasn't worked for a while. The state of the libraries is still perilous for cross-building QEMU but we can use it for building TCG tests. The debian-apt-fake.sh script can also be dropped as it is no longer used. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for RISCV64Alex Bennée2018-06-201-0/+1
| | | | | | | | As before, using Debian SID compilers. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for mips64Alex Bennée2018-06-201-0/+1
| | | | | | | | As before, using Debian SID compilers. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for sparc64Alex Bennée2018-06-201-0/+1
| | | | | | | | As before, using Debian SID compilers. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for sh4Alex Bennée2018-06-201-0/+1
| | | | | | | | | | As before, using Debian SID compilers. While the compiler can be coerced into generating big-endian code it seems the linker can't deal with it so we only enable the building for little endian SH4. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for m68kAlex Bennée2018-06-201-0/+1
| | | | | | | | As before, using Debian SID compilers. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for HPPAAlex Bennée2018-06-201-0/+1
| | | | | | Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/tcg: enable building for AlphaAlex Bennée2018-06-201-0/+7
| | | | | | | | | | | We can't use our normal Debian based compilers as Alpha isn't an officially supported architecture. However it is available as a port and fortunately cross compilers for all these targets are included in Debian Sid, the perpetual rolling/unstable/testing version of Debian. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* tests/docker/Makefile.include: fix mipsel-cross dependancyAlex Bennée2018-06-201-0/+1
| | | | | | | | | This got broken in commit 4319db7 but generally only shows up when you try and do massive parallel builds on fresh machines. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: Makefile.include introduce DOCKER_SCRIPTAlex Bennée2018-06-201-4/+6
| | | | | | | Define this in one place to make it easy to re-use. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
* docker: add debian/tricore imagePhilippe Mathieu-Daudé2018-06-051-0/+3
| | | | | | | | | | TriCore binutils is built from Bastian Koppelmann repository. Note: There is no TriCore compiler in this image (only assembler/linker). Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> [AJB: base of Debian9, add to Makefile.include] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* tests/docker/Makefile.include: handle empty TARGET_LISTAlex Bennée2018-06-041-1/+1
| | | | | | | | | | | If the user doesn't specify a TARGET_LIST they get the current configuration but with spaces and hilarity ensues. This adds some make magic to turn the TARGET_LIST back into a comma separated list. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20180521103504.26432-1-alex.bennee@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: do not display deprecated images in 'make docker' helpPhilippe Mathieu-Daudé2018-06-011-2/+3
| | | | | | | the 'debian' base image is deprecated since 3e11974988d8 Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: sort images list displayed by 'make docker'Philippe Mathieu-Daudé2018-06-011-1/+1
| | | | | | | we can now directly see different version sort consecutively. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: Fix trivial typoPhilippe Mathieu-Daudé2018-05-181-1/+1
| | | | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20180508144358.13530-1-f4bug@amsat.org> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: correctly escape $BACKEND in the help outputPhilippe Mathieu-Daudé2017-11-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | In Makefiles the $ must be escaped as $$ in shell uses. Since 8a2390a4f47: $ make docker [...] NETWORK=1 Enable virtual network interface with default backend. NETWORK=ACKEND Enable virtual network interface with ACKEND. Once escaped: $ make docker [...] NETWORK=1 Enable virtual network interface with default backend. NETWORK=$BACKEND Enable virtual network interface with $BACKEND. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Fam Zheng <famz@redhat.com> Message-Id: <20171108024719.8389-1-f4bug@amsat.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: fix out-of-tree 'make docker-test-build@debian-powerpc-cross'Greg Kurz2017-10-201-1/+1
| | | | | | | | | | | | | Without this patch, it fails with: IOError: [Errno 2] No such file or directory: 'tests/docker/dockerfiles/debian-apt-fake.sh' Signed-off-by: Greg Kurz <groug@kaod.org> Message-Id: <150841324224.31292.4012464539983692364.stgit@bahia.lan> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: allow running from srcdir != builddir buildPaolo Bonzini2017-10-201-2/+2
| | | | | | | | | | | | | | The new script uses "git submodule", which is picky about being invoked from the top of the git checkout. Invoke the script from $(SRC_PATH) to avoid git's wrath. Fixes: b7f404201e45e99da23b9764dec27ce5f965cdcd Cc: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Message-Id: <1508331989-142364-1-git-send-email-pbonzini@redhat.com> Reviewed-by: Daniel P. Berrange <berrange@redhat.com> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: cleanup temp directory after testPeter Xu2017-10-201-0/+2
| | | | | | | | | | | | | | | There are temp directories named "docker-src.*" after doing docker tests. I don't see much point in keeping that (it only contains the qemu.tar which is exactly current tree, and the copied "run" file). Let's remove it after test finished. CC: "Alex Bennée" <alex.bennee@linaro.org> CC: Fam Zheng <famz@redhat.com> CC: "Philippe Mathieu-Daudé" <f4bug@amsat.org> Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20171017071247.32355-1-peterx@redhat.com> Reviewed-by: Fam Zheng <famz@redhat.com> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: Don't allocate tty unless DEBUG=1Fam Zheng2017-10-201-2/+2
| | | | | | | | | | | | The existence of tty in the container seems to urge gcc into colorizing the errors, but the escape chars will clutter the report once turned into email replies on patchew. Move -t to debug mode. Reported-by: Eric Blake <eblake@redhat.com> Signed-off-by: Fam Zheng <famz@redhat.com> Message-Id: <20171013011954.9975-1-famz@redhat.com> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: Don't mount ccache db if NOUSER=1Fam Zheng2017-09-291-2/+4
| | | | | | | | | | | With NOUSER=1 the container runs code as root, which may create privileged files that will not be be accssible next time. Skip ccache dir mount in this case. Signed-off-by: Fam Zheng <famz@redhat.com> Message-Id: <20170925075458.18047-1-famz@redhat.com> Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
* docker: Use archive-source.pyFam Zheng2017-09-221-12/+2Star
| | | | | Signed-off-by: Fam Zheng <famz@redhat.com> Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
* docker: Use unconfined security profileFam Zheng2017-09-221-0/+1
| | | | | | | | | | | Some by default blocked syscalls are required to run tests for example userfaultfd. Reviewed-by: Kashyap Chamarthy <kchamart@redhat.com> Signed-off-by: Fam Zheng <famz@redhat.com> Message-Id: <20170905025614.579-4-famz@redhat.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Based-on: 20170905021201.25684-1-famz@redhat.com
* docker: ensure NOUSER for travis imagesAlex Bennée2017-09-221-0/+1
| | | | | | | | | | | | While adding the current user is a useful default behaviour for creating new images it is not appropriate for Travis which already has a default user. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20170725133425.436-2-alex.bennee@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: fix creation of archivesPaolo Bonzini2017-09-191-1/+0Star
| | | | | | | | The pixman submodule does not exist anymore, and its removal broke docker-based tests. Fix it. Cc: Fam Zheng <famz@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* docker: warn users to use newer debian8/debian9 base imagePhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | | | to stay backward incompatible. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add MXE (M cross environment) base image for MinGW-w64Philippe Mathieu-Daudé2017-07-181-0/+3
| | | | | | | see http://mxe.cc/ Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/mips64el imagePhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/mips[eb] imagesPhilippe Mathieu-Daudé2017-07-181-1/+1
| | | | | | | change image mips little -> big endian Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/powerpc based on JessieAlex Bennée2017-07-181-0/+3
| | | | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> [AJB: split from merged patch] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/amd64 based on StretchPhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | | | | | | By itself this doesn't add much to our coverage. However later patches will extend this image to include more bleeding edge libraries which are not yet widely available in distros. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> [AJB: extend commit msg] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/ppc64el based on StretchPhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add debian/armel based on StretchPhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: debian/s390x no more in unstable, now available in StretchPhilippe Mathieu-Daudé2017-07-181-0/+1
| | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: rename debian stable -> 9 (Stretch)Philippe Mathieu-Daudé2017-07-181-3/+3
| | | | | | | | | We'll also want to support some older Debian combinations for architectures that didn't make the Debian 9 cut. Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> [AJB: extend commit msg] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: Don't enable networking as a side-effect of DEBUG=1Daniel P. Berrange2017-07-171-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | When trying to debug problems with tests it is natural to set DEBUG=1 when starting the docker environment. Unfortunately this has a side-effect of enabling an eth0 network interface in the container, which changes the operating environment of the test suite. IOW tests with fail may suddenly start working again if DEBUG=1 is set, due to changed network setup. Add a separate NETWORK variable to allow enablement of networking separately from DEBUG=1. This can be used in two ways. To enable the default docker network backend make docker-test-build@fedora NETWORK=1 while to enable a specific network backend, eg join the network associated with the container 'wibble': make docker-test-build@fedora NETWORK=container:wibble Signed-off-by: Daniel P. Berrange <berrange@redhat.com> Message-Id: <20170713144352.2212-1-berrange@redhat.com> [Drop the superfluous second $(subst ...). - Fam] Signed-off-by: Fam Zheng <famz@redhat.com>
* docker: add mipsel build targetPhilippe Mathieu-Daudé2017-06-211-0/+1
| | | | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> [AJB: remove apt-fake kludge] Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: add --include-files argument to 'build' commandPhilippe Mathieu-Daudé2017-06-211-0/+3
| | | | | | Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
* docker: Run tests with current userFam Zheng2017-06-161-1/+1
| | | | | | | | | | | | | We've used --add-current-user to create a user in the image, use it to run tests, because root has too much priviledge, and can surprise test cases. Signed-off-by: Fam Zheng <famz@redhat.com> Message-Id: <20170505032340.26467-2-famz@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Fam Zheng <famz@redhat.com>
* new: debian docker targets for cross-compilingAlex Bennée2017-02-241-0/+4
| | | | | | | | | | | | | | | | | | | | This provides a basic Debian install with access to the emdebian cross compilers. The debian-armhf-cross and debian-arm64-cross targets build on the basic Debian image to allow cross compiling to those targets. A new environment variable (QEMU_CONFIGURE_OPTS) is set as part of the docker container and passed to the build to specify the --cross-prefix. The user still calls the build in the usual way, for example: make docker-test-build@debian-arm64-cross \ TARGET_LIST="aarch64-softmmu,aarch64-linux-user" Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Fam Zheng <famz@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20170220105139.21581-3-alex.bennee@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* tests/docker: add basic user mapping supportAlex Bennée2017-02-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently all docker builds are done by exporting a tarball to the docker container and running the build as the containers root user. Other use cases are possible however and it is possible to map a part of users file-system to the container. This is useful for example for doing cross-builds of arbitrary source trees. For this to work smoothly the container needs to have a user created that maps cleanly to the host system. This adds a -u option to the docker script so that: DEB_ARCH=armhf DEB_TYPE=stable ./tests/docker/docker.py build \ -u --include-executable=arm-linux-user/qemu-arm \ debian:armhf ./tests/docker/dockerfiles/debian-bootstrap.docker Will build a container that can then be run like: docker run --rm -it -v /home/alex/lsrc/qemu/risu.git/:/src \ --user=alex:alex -w /src/ debian:armhf \ sh -c "make clean && ./configure -s && make" All docker containers built will add the current user unless explicitly disabled by specifying NOUSER when invoking the Makefile: make docker-image-debian-armhf-cross NOUSER=1 Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Fam Zheng <famz@redhat.com> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org> Message-Id: <20170220105139.21581-2-alex.bennee@linaro.org> Signed-off-by: Fam Zheng <famz@redhat.com>
* tests/docker/Makefile.include: add a generic docker-run targetAlex Bennée2016-10-171-23/+38
| | | | | | | | | | | | | | | | | | | | | This re-factors the docker makefile to include a docker-run target which can be controlled entirely from environment variables specified on the make command line. This allows us to run against any given docker image we may have in our repository, for example: make docker-run TEST="test-quick" IMAGE="debian:arm64" \ EXECUTABLE=./aarch64-linux-user/qemu-aarch64 The existing docker-foo@bar targets still work but the inline verification has been dropped because we already don't hit that due to other pattern rules in rules.mak. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20161011161625.9070-5-alex.bennee@linaro.org> Message-Id: <20161011161625.9070-6-alex.bennee@linaro.org> [Squash in the verification removal patch. - Fam] Signed-off-by: Fam Zheng <famz@redhat.com>
* rules.mak: quiet-command: Split command name and args to printPeter Maydell2016-10-061-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The quiet-command make rule currently takes two arguments: the command and arguments to run, and a string to print if the V flag is not set (ie we are not being verbose). By convention, the string printed is of the form " NAME some args". Unfortunately to get nicely lined up output all the strings have to agree about what column the arguments should start in, which means that if we add a new quiet-command usage which wants a slightly longer CMD name then we either put up with misalignment or change every quiet-command string. Split the quiet-mode string into two, the "NAME" and the "same args" part, and use printf(1) to format the string automatically. This means we only need to change one place if we want to support a longer maximum name. In particular, we can now print 7-character names lined up properly (they are needed for the OSX "SETTOOL" invocation). Change all the uses of quiet-command to the new syntax. (Any which are missed or inadvertently reintroduced via later merges will result in slightly misformatted quiet output rather than disaster.) A few places in the pc-bios/ makefiles are updated to use "BUILD", "SIGN" and "STRIP" rather than "Building", "Signing" and "Stripping" for consistency and to keep them below 7 characters. Module .mo links now print "LD" rather than the nonstandard "LD -r". Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Eric Blake <eblake@redhat.com> Message-id: 1475598441-27908-1-git-send-email-peter.maydell@linaro.org