Re: [Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg
Samuel Thibaultwrites: > Philippe Mathieu-Daudé, le mar. 24 avril 2018 22:25:18 -0300, a ecrit: >> > This is starting to shape up pretty nicely. I was able to add a whole >> > bunch of additional architectures thanks to cross compilers in Debian >> > Sid which are there to support the Debian "ports". These may not be >> > around for ever, most "ports" are on the way out, but they will be the >> > last thing to drop out of the Sid repo. Maybe when Debian stops >> > caring (and no other distro does) maybe we should to? >> >> I *think* working with Sid is not recommended as very unstable and not >> reproducible. A reproducible way is to use the Debian Snapshot Archive >> (http://snapshot.debian.org/) eventually using package specific version >> and holding packages at this version. >> >> I found an example in the following post: >> https://blog.sleeplessbeastie.eu/2017/07/17/how-to-install-packages-using-repository-snapshot/ >> >> (I Cc'ed Debian experts who might have a better idea). > > That looks like the correct idea :) > (basically what we use to make "releases" of the hurd port, as sid > snapshots). So how would this work in docker. Should I take for example the sid-20180312 tag and then just munge sources.list to the appropriate snapshot url? That said I'm relatively sanguine about the stability of the toolchain in sid. It would be the last thing to bitrot as once the toolchain is dead the distro dies with it so it is the last thing to die and the first thing to fix. -- Alex Bennée
Re: [Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg
Philippe Mathieu-Daudé, le mar. 24 avril 2018 22:25:18 -0300, a ecrit: > > This is starting to shape up pretty nicely. I was able to add a whole > > bunch of additional architectures thanks to cross compilers in Debian > > Sid which are there to support the Debian "ports". These may not be > > around for ever, most "ports" are on the way out, but they will be the > > last thing to drop out of the Sid repo. Maybe when Debian stops > > caring (and no other distro does) maybe we should to? > > I *think* working with Sid is not recommended as very unstable and not > reproducible. A reproducible way is to use the Debian Snapshot Archive > (http://snapshot.debian.org/) eventually using package specific version > and holding packages at this version. > > I found an example in the following post: > https://blog.sleeplessbeastie.eu/2017/07/17/how-to-install-packages-using-repository-snapshot/ > > (I Cc'ed Debian experts who might have a better idea). That looks like the correct idea :) (basically what we use to make "releases" of the hurd port, as sid snapshots). Samuel
Re: [Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg
> This is starting to shape up pretty nicely. I was able to add a whole > bunch of additional architectures thanks to cross compilers in Debian > Sid which are there to support the Debian "ports". These may not be > around for ever, most "ports" are on the way out, but they will be the > last thing to drop out of the Sid repo. Maybe when Debian stops > caring (and no other distro does) maybe we should to? I *think* working with Sid is not recommended as very unstable and not reproducible. A reproducible way is to use the Debian Snapshot Archive (http://snapshot.debian.org/) eventually using package specific version and holding packages at this version. I found an example in the following post: https://blog.sleeplessbeastie.eu/2017/07/17/how-to-install-packages-using-repository-snapshot/ (I Cc'ed Debian experts who might have a better idea). For stable releases, this shouldn't be a problem since End of Life Debian versions stay on archive.debian.org; as for Docker images: https://hub.docker.com/r/debian/eol/ > However compiling big-endian targets continues to be a massive pain as > even if compilers support switching endianess with flags you are > usually let down by a partial set of headers or the linker not being > able to link against wrong-endian crt.o or libgcc files. Ultimately ¯\_(ツ)_/¯ https://bugs.launchpad.net/gcc-arm-embedded/+bug/1718206 > any guests that are not supported by any distro are probably going to > be stuck with bare metal or hand crafted tests like in > tests/tcg/alpha. > > The final patch (tests/tcg: override runners for broken tests) > suppresses a bunch of tests that fail on different guest setups. This > was to allow me to test "make check-tcg" could make it all the way > through. I'm sure some of them are bugs that need fixing so it would > be cool if maintainers could look through and see if there are any > easy wins. > > Major Changes: > - check-tcg now runs the tests (c.f build-tcg/clean-tcg) > - clean use of quiet-command for CROSS-BUILD/RUN-TESTS and TEST > - bunch of additional targets (alpha, hppa, m68k, sh4, sparc64, mips64) > - review comments and tags > - dropped fp-test and additional aarch64 tests for now > > As usual detailed notes are bellow the --- in the commit messages. > > Currently un-reviewed: > > patch 0002/configure add test for docker availability.patch needs review > patch 0003/configure add support for cross cc FOO.patch needs review > patch 0004/configure move i386_cc to cross_cc_i386.patch needs review > patch 0005/configure allow user to specify cross cc cflags f.patch needs > review > patch 0014/tests tcg multiarch enable additional linux test .patch needs > review > patch 0015/tests tcg multiarch move most output to stdout.patch needs review > patch 0017/docker Add fedora i386 cross image.patch needs review > patch 0018/tests tcg enable building for i386.patch needs review > patch 0021/tests tcg i386 fix test i386 fprem.patch needs review > patch 0022/tests tcg i386 disable i386 version of test i386 .patch needs > review > patch 0023/tests tcg x86_64 add Makefile.target.patch needs review > patch 0025/tests tcg i386 test i386 fix printf format.patch needs review > patch 0027/tests tcg arm fix up test arm iwmmxt test.patch needs review > patch 0028/tests tcg aarch64 add Makefile.target.patch needs review > patch 0029/tests tcg aarch64 add fcvt test cases for AArch64.patch needs > review > patch 0031/tests tcg enable building for MIPS.patch needs review > patch 0032/tests tcg mips include common mips hello mips.patch needs review > patch 0035/tests tcg enable building for Alpha.patch needs review > patch 0036/tests tcg alpha add Alpha specific tests.patch needs review > patch 0037/tests tcg alpha fix warnings about write.patch needs review > patch 0038/tests tcg enable building for HPPA.patch needs review > patch 0039/tests tcg enable building for m68k.patch needs review > patch 0040/tests tcg enable building for sh4.patch needs review > patch 0041/tests tcg enable building for sparc64.patch needs review > patch 0042/tests tcg enable building for mips64.patch needs review > patch 0043/tests tcg Makefile update to be called from Makef.patch needs > review > patch 0044/Makefile.target add clean guest tests targets.patch needs review > patch 0046/tests tcg override runners for broken tests UPSTR.patch needs > review > > > Alex Bennée (41): > configure: add test for docker availability > configure: add support for --cross-cc-FOO > configure: move i386_cc to cross_cc_i386 > configure: allow user to specify --cross-cc-cflags-foo= > configure: set cross_cc_FOO for host compiler > docker: Add "cc" subcommand > docker: extend "cc" command to accept compiler > docker: allow "cc" command to run in user context > docker: Makefile.include introduce DOCKER_SCRIPT > tests/tcg: move architecture independent tests into subdir > tests/tcg/multiarch: enable additional linux-test tests > tests/tcg/multiarch: move
Re: [Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180424152405.10304-1-alex.ben...@linaro.org Subject: [Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu * [new tag] patchew/20180424152405.10304-1-alex.ben...@linaro.org -> patchew/20180424152405.10304-1-alex.ben...@linaro.org Switched to a new branch 'test' ff876b3ed2 tests/tcg: override runners for broken tests (!UPSTREAM) 45dafe5224 tests/Makefile.include: add [build|clean|check]-tcg targets bd27be19a8 Makefile.target: add (clean-)guest-tests targets cec6f937da tests/tcg/Makefile: update to be called from Makefile.target 67fe064c30 tests/tcg: enable building for mips64 3baf3c795e tests/tcg: enable building for sparc64 ab08564ecf tests/tcg: enable building for sh4 15d108f077 tests/tcg: enable building for m68k 8a42b8e70c tests/tcg: enable building for HPPA 4481298d23 tests/tcg/alpha: fix warnings about write() d8eac0851c tests/tcg/alpha: add Alpha specific tests de7f346110 tests/tcg: enable building for Alpha 1bbaaf0ea5 tests/tcg: enable building for ppc64 272347cf05 tests/tcg: enable building for s390x 759cb1da53 tests/tcg/mips: include common mips hello-mips 8808039b55 tests/tcg: enable building for MIPS 1c496b7264 tests/tcg: move MIPS specific tests into subdir 9f41829c5b tests/tcg/aarch64: add fcvt test cases for AArch64 a567adc375 tests/tcg/aarch64: add Makefile.target aba36f4232 tests/tcg/arm: fix up test-arm-iwmmxt test 2607ac3ef8 tests/tcg: move ARM specific tests into subdir 4e1168cef4 tests/tcg/i386/test-i386: fix printf format ae1eebb683 tests/tcg/i386/test-i386: use modern vector_size attributes 163409da89 tests/tcg/x86_64: add Makefile.target f4916925ae tests/tcg/i386: disable i386 version of test-i386-ssse 5366eee797 tests/tcg/i386: fix test-i386-fprem ee864a5517 tests/tcg/i386: fix test-i386 1fcf9f7e22 tests/tcg/i386: Build fix for hello-i386 c62ad0105a tests/tcg: enable building for i386 08440c24e8 docker: Add fedora-i386-cross image 7f3f03647d tests/tcg: move i386 specific tests into subdir c71c9d8d20 tests/tcg/multiarch: move most output to stdout 945092fc3f tests/tcg/multiarch: enable additional linux-test tests 01814df5f5 tests/tcg/multiarch: Build fix for linux-test 709eb7201d tests/tcg: move architecture independent tests into subdir 4d12ac26c0 docker: Makefile.include introduce DOCKER_SCRIPT a2790883a1 docker: allow "cc" command to run in user context 25e49baf0a docker: extend "cc" command to accept compiler 4e7d4ee7a2 docker: Add "cc" subcommand 1a895c1c6c Makefile: Rename TARGET_DIRS to TARGET_LIST aa6bbbf1be configure: set cross_cc_FOO for host compiler 33f6f01ee9 configure: allow user to specify --cross-cc-cflags-foo= 2a07647761 configure: move i386_cc to cross_cc_i386 7af0f78d24 configure: add support for --cross-cc-FOO a55d00f935 configure: add test for docker availability ed713feee4 docker: add "probe" command for configure === OUTPUT BEGIN === Checking PATCH 1/46: docker: add "probe" command for configure... Checking PATCH 2/46: configure: add test for docker availability... Checking PATCH 3/46: configure: add support for --cross-cc-FOO... Checking PATCH 4/46: configure: move i386_cc to cross_cc_i386... Checking PATCH 5/46: configure: allow user to specify --cross-cc-cflags-foo=... Checking PATCH 6/46: configure: set cross_cc_FOO for host compiler... Checking PATCH 7/46: Makefile: Rename TARGET_DIRS to TARGET_LIST... Checking PATCH 8/46: docker: Add "cc" subcommand... Checking PATCH 9/46: docker: extend "cc" command to accept compiler... Checking PATCH 10/46: docker: allow "cc" command to run in user context... Checking PATCH 11/46: docker: Makefile.include introduce DOCKER_SCRIPT... Checking PATCH 12/46: tests/tcg: move architecture independent tests into subdir... Checking PATCH 13/46: tests/tcg/multiarch: Build fix for linux-test... ERROR: if this code is redundant consider removing it #153: FILE: tests/tcg/multiarch/linux-test.c:323: +#if 0 total: 1 errors, 0 warnings, 185 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 14/46: tests/tcg/multiarch: enab
[Qemu-devel] [PATCH v3 00/46] fix building of tests/tcg
Hi, This is starting to shape up pretty nicely. I was able to add a whole bunch of additional architectures thanks to cross compilers in Debian Sid which are there to support the Debian "ports". These may not be around for ever, most "ports" are on the way out, but they will be the last thing to drop out of the Sid repo. Maybe when Debian stops caring (and no other distro does) maybe we should to? However compiling big-endian targets continues to be a massive pain as even if compilers support switching endianess with flags you are usually let down by a partial set of headers or the linker not being able to link against wrong-endian crt.o or libgcc files. Ultimately any guests that are not supported by any distro are probably going to be stuck with bare metal or hand crafted tests like in tests/tcg/alpha. The final patch (tests/tcg: override runners for broken tests) suppresses a bunch of tests that fail on different guest setups. This was to allow me to test "make check-tcg" could make it all the way through. I'm sure some of them are bugs that need fixing so it would be cool if maintainers could look through and see if there are any easy wins. Major Changes: - check-tcg now runs the tests (c.f build-tcg/clean-tcg) - clean use of quiet-command for CROSS-BUILD/RUN-TESTS and TEST - bunch of additional targets (alpha, hppa, m68k, sh4, sparc64, mips64) - review comments and tags - dropped fp-test and additional aarch64 tests for now As usual detailed notes are bellow the --- in the commit messages. Currently un-reviewed: patch 0002/configure add test for docker availability.patch needs review patch 0003/configure add support for cross cc FOO.patch needs review patch 0004/configure move i386_cc to cross_cc_i386.patch needs review patch 0005/configure allow user to specify cross cc cflags f.patch needs review patch 0014/tests tcg multiarch enable additional linux test .patch needs review patch 0015/tests tcg multiarch move most output to stdout.patch needs review patch 0017/docker Add fedora i386 cross image.patch needs review patch 0018/tests tcg enable building for i386.patch needs review patch 0021/tests tcg i386 fix test i386 fprem.patch needs review patch 0022/tests tcg i386 disable i386 version of test i386 .patch needs review patch 0023/tests tcg x86_64 add Makefile.target.patch needs review patch 0025/tests tcg i386 test i386 fix printf format.patch needs review patch 0027/tests tcg arm fix up test arm iwmmxt test.patch needs review patch 0028/tests tcg aarch64 add Makefile.target.patch needs review patch 0029/tests tcg aarch64 add fcvt test cases for AArch64.patch needs review patch 0031/tests tcg enable building for MIPS.patch needs review patch 0032/tests tcg mips include common mips hello mips.patch needs review patch 0035/tests tcg enable building for Alpha.patch needs review patch 0036/tests tcg alpha add Alpha specific tests.patch needs review patch 0037/tests tcg alpha fix warnings about write.patch needs review patch 0038/tests tcg enable building for HPPA.patch needs review patch 0039/tests tcg enable building for m68k.patch needs review patch 0040/tests tcg enable building for sh4.patch needs review patch 0041/tests tcg enable building for sparc64.patch needs review patch 0042/tests tcg enable building for mips64.patch needs review patch 0043/tests tcg Makefile update to be called from Makef.patch needs review patch 0044/Makefile.target add clean guest tests targets.patch needs review patch 0046/tests tcg override runners for broken tests UPSTR.patch needs review Alex Bennée (41): configure: add test for docker availability configure: add support for --cross-cc-FOO configure: move i386_cc to cross_cc_i386 configure: allow user to specify --cross-cc-cflags-foo= configure: set cross_cc_FOO for host compiler docker: Add "cc" subcommand docker: extend "cc" command to accept compiler docker: allow "cc" command to run in user context docker: Makefile.include introduce DOCKER_SCRIPT tests/tcg: move architecture independent tests into subdir tests/tcg/multiarch: enable additional linux-test tests tests/tcg/multiarch: move most output to stdout tests/tcg: move i386 specific tests into subdir tests/tcg: enable building for i386 tests/tcg/i386: fix test-i386 tests/tcg/i386: fix test-i386-fprem tests/tcg/i386: disable i386 version of test-i386-ssse tests/tcg/x86_64: add Makefile.target tests/tcg/i386/test-i386: use modern vector_size attributes tests/tcg/i386/test-i386: fix printf format tests/tcg: move ARM specific tests into subdir tests/tcg/arm: fix up test-arm-iwmmxt test tests/tcg/aarch64: add Makefile.target tests/tcg/aarch64: add fcvt test cases for AArch64 tests/tcg: move MIPS specific tests into subdir tests/tcg: enable building for MIPS tests/tcg/mips: include common mips hello-mips tests/tcg: enable building for s390x tests/tcg: enable building for ppc64 tests/tcg: enable building for Alpha tests/tcg/alpha: add