From: Peter Maydell <peter.maydell@linaro.org>
To: QEMU Developers <qemu-devel@nongnu.org>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
"patches@linaro.org" <patches@linaro.org>
Subject: Re: [Qemu-devel] [PATCH 0/3] configure: symlink directories, not wildcarded files
Date: Tue, 30 Oct 2018 13:01:28 +0000 [thread overview]
Message-ID: <CAFEAcA_JvsqWPgauPmtp_jdgNOwi2zwcHexPSiLE-Eka+PcDTA@mail.gmail.com> (raw)
In-Reply-To: <20181030125005.28151-1-peter.maydell@linaro.org>
On 30 October 2018 at 12:50, Peter Maydell <peter.maydell@linaro.org> wrote:
> This patchset fixes a problem with our build infrastructure
> that meant that MST's recent 'pci, pc, virtio' pullreq failed
> tests.
>
> Currently our configure script has a wildcard loop that creates
> symlinks for every data file in tests/acpi-test-data from the
> source tree to the build tree. However, if a new data file is
> added in git, there is nothing that causes configure to be rerun,
> and so it is not available in the build tree, which can cause
> test failures.
>
> The core of the change here is that instead of linking every
> individual data file, we just symlink the directory itself (which
> we do in patch 2 for this and also tests/hex-loader-check-data).
> The rest of the patchset deals with:
> * renaming a shell variable to make it clearer that it's OK
> to put directories to symlink in it, not just files
> * adding a comment about why wildcarding is a bad idea
> * cleaning up a couple of places that did their own symlinking
> when they could have just used the existing code
>
> We do still use wildcarding to construct a list of files in
> pc-bios to be symlinked; we get away with this because we don't
> in practice add new BIOS images often and if we do there's also
> usually a change that means configure is rerun anyway. We can't
> just symlink all of pc-bios into the build tree because it
> contains other things than just generated binaries. There's
> scope for fixing this, I think, but I wanted to get this fix out.
...having sent this out and moved on to something else, I have
discovered a problem with it. If you configure a build tree
using this, and then switch back to a git branch which has
the older configure, then that configure will end up trashing
all the tests/acpi-test-data and tests/hex-loader-check-data
files in the source tree by replacing them with symlinks to
themselves... This is fixable by doing "git checkout tests"
but it's a bit of a landmine for bisection :-(
thanks
-- PMM
next prev parent reply other threads:[~2018-10-30 13:02 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-30 12:50 [Qemu-devel] [PATCH 0/3] configure: symlink directories, not wildcarded files Peter Maydell
2018-10-30 12:50 ` [Qemu-devel] [PATCH 1/3] configure: Rename FILES variable to LINKS Peter Maydell
2018-10-30 13:13 ` Philippe Mathieu-Daudé
2018-10-30 12:50 ` [Qemu-devel] [PATCH 2/3] configure: Symlink entire test directories rather than individual files Peter Maydell
2018-10-30 12:50 ` [Qemu-devel] [PATCH 3/3] configure: Use FILES loop for all build tree symlinks Peter Maydell
2018-10-30 13:01 ` Peter Maydell [this message]
2018-10-30 13:08 ` [Qemu-devel] [PATCH 0/3] configure: symlink directories, not wildcarded files Peter Maydell
2018-10-30 15:02 ` Philippe Mathieu-Daudé
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=CAFEAcA_JvsqWPgauPmtp_jdgNOwi2zwcHexPSiLE-Eka+PcDTA@mail.gmail.com \
--to=peter.maydell@linaro.org \
--cc=mst@redhat.com \
--cc=patches@linaro.org \
--cc=qemu-devel@nongnu.org \
/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;
as well as URLs for NNTP newsgroup(s).