From: "Daniel P. Berrangé" <berrange@redhat.com>
To: Paolo Bonzini <pbonzini@redhat.com>
Cc: peter.maydell@linaro.org, alex.bennee@linaro.org, qemu-devel@nongnu.org
Subject: Re: [PATCH] tests: docker: support mxe-based mingw builds
Date: Wed, 19 Aug 2020 12:09:54 +0100 [thread overview]
Message-ID: <20200819110954.GG69261@redhat.com> (raw)
In-Reply-To: <a83d1d0d-3f5e-8aa1-801a-aaf844c29587@redhat.com>
On Wed, Aug 19, 2020 at 12:42:44PM +0200, Paolo Bonzini wrote:
> On 19/08/20 10:20, Daniel P. Berrangé wrote:
> > We already have docker containers with MXE based on Debian:
> >
> > debian-win32-cross.docker
> > debian-win64-cross.docker
> >
> > your image uses a different naming convention, and puts both
> > 32 and 64 bit in the same image.
>
> Yeah, that's what test-mingw expects.
Ah, I missed that.
>
> > I feel like we should have the Ubuntu variant follow the same
> > structure and naming as the Debian variant for consistency.
>
> My patch follows the Fedora variant, so that test-mingw runs. That
> ensures that NSIS is covered as well. One possibility could be:
>
> - create fedora-win*-cross dockerfiles
Yeah, I think that'd make sense, as it'd enable a simple trick we
do in libvirt.
In all the dockerfile recipe we set an env
ENV MESON_OPTS "--cross-file=/usr/share/mingw/toolchain-mingw32.meson"
And in other linux-cross builds, we do similar
ENV MESON_OPTS "--cross-file=i686-linux-gnu"
So now from host side can just invoke "meson $MESON_OPTS" and it will
do the right thing according to whatever the container image was
installed with, regardless of whether it is a cross, or native build.
This obviously only works if you have separate images for win32
and win64.
> - add ENV FEATURES $FEATURES mingw to the win*-cross dockerfiles
>
> - look for the feature in test-full and test-quick, and run "make
> installer" if so.
I'd suggest that "make installer" should be a part of "make" not
a separate thing that needs running manually.
eg if we're configure'ing for mingw, configure should check whether
we have the NSIS tools available and if so, then enable NSIS as a
standard build output. We could have a configure option to enable/disable
NSIS explicitly.
This eliminates the second bit of special casing for mingw
> - drop test-mingw completely, and adjust Patchew to use
> docker-test-quick@fedora-win{32,64}-cross instead
Yes, dropping test-mingw would be better, but I'm not sure you can
use 'test-quick' as that runs unit tests which would require wine
to be present. 'test-build' would be closer to what test-mingw
does.
Anyway, if the images and make rules are created & setup in a suitable
way, there should be no need to do anything special in the host side
for cross-builds - just pick the image you want and it should "just work".
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2020-08-19 11:11 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-19 8:02 [PATCH] tests: docker: support mxe-based mingw builds Paolo Bonzini
2020-08-19 8:13 ` Marc-André Lureau
2020-08-19 8:20 ` Daniel P. Berrangé
2020-08-19 10:42 ` Paolo Bonzini
2020-08-19 11:09 ` Daniel P. Berrangé [this message]
2020-08-19 11:41 ` Paolo Bonzini
2020-08-19 8:59 ` no-reply
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=20200819110954.GG69261@redhat.com \
--to=berrange@redhat.com \
--cc=alex.bennee@linaro.org \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@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).