[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 3/7] qemu: add support for iOS host
From: |
Joelle van Dyne |
Subject: |
Re: [PATCH v6 3/7] qemu: add support for iOS host |
Date: |
Tue, 12 Jan 2021 14:18:43 -0800 |
I think this was discussed before but the main issue right now is that
there's no packaging system (like homebrew) for iOS cross building on
Mac. Stefan suggested caching built libraries in an external location
to use with the CI. I think this can be done but would require some
thought to it. I am open to other ideas as well (like pretending to
build for iOS while actually building for macOS).
-j
On Tue, Jan 12, 2021 at 3:56 AM Philippe Mathieu-Daudé
<philmd@redhat.com> wrote:
>
> Hi Joelle,
>
> On 1/5/21 3:20 AM, Joelle van Dyne wrote:
> > This introduces support for building for iOS hosts. When the correct Xcode
> > toolchain is used, iOS host will be detected automatically.
> >
> > * block: disable features not supported by iOS sandbox
> > * slirp: disable SMB features for iOS
> > * osdep: disable system() calls for iOS
> >
> > Signed-off-by: Joelle van Dyne <j@getutm.app>
> > ---
> > docs/devel/index.rst | 1 +
> > docs/devel/ios.rst | 28 +++++++++++++++++++++++++++
> > configure | 43 ++++++++++++++++++++++++++++++++++++++++-
> > meson.build | 2 +-
> > include/qemu/osdep.h | 11 +++++++++++
> > block.c | 2 +-
> > block/file-posix.c | 31 +++++++++++++++++------------
> > net/slirp.c | 16 +++++++--------
> > qga/commands-posix.c | 6 ++++++
> > MAINTAINERS | 7 +++++++
> > tests/qtest/meson.build | 7 +++----
> > 11 files changed, 127 insertions(+), 27 deletions(-)
> > create mode 100644 docs/devel/ios.rst
>
> >
> > diff --git a/docs/devel/index.rst b/docs/devel/index.rst
> > index f10ed77e4c..2cc8a13ebe 100644
> > --- a/docs/devel/index.rst
> > +++ b/docs/devel/index.rst
> > @@ -35,3 +35,4 @@ Contents:
> > clocks
> > qom
> > block-coroutine-wrapper
> > + ios
> > diff --git a/docs/devel/ios.rst b/docs/devel/ios.rst
> > new file mode 100644
> > index 0000000000..b4ab11bec1
> > --- /dev/null
> > +++ b/docs/devel/ios.rst
> > @@ -0,0 +1,28 @@
> > +===========
> > +iOS Support
> > +===========
> > +
> > +To run qemu on the iOS platform, some modifications were required. Most of
> > the
> > +modifications are conditioned on the ``CONFIG_IOS`` and configuration
> > variable.
> > +
> > +Build support
> > +-------------
> > +
> > +For the code to compile, certain changes in the block driver and the slirp
> > +driver had to be made. There is no ``system()`` call, so it has been
> > replaced
> > +with an assertion error. There should be no code path that call system()
> > from
> > +iOS.
> > +
> > +``ucontext`` support is broken on iOS. The implementation from
> > ``libucontext``
> > +is used instead.
>
> Do you have a CI testing plan for these builds?
>
> Is it possible to add a Gitlab-CI job? If not, on Cirrus-CI?
>
> Thanks,
>
> Phil.
>
>
- [PATCH v6 6/7] slirp: update build flags for iOS resolv fix, (continued)
- [PATCH v6 6/7] slirp: update build flags for iOS resolv fix, Joelle van Dyne, 2021/01/04
- [PATCH v6 4/7] coroutine: add libucontext as external library, Joelle van Dyne, 2021/01/04
- [PATCH v6 5/7] configure: cross compile should use x86_64 cpu_family, Joelle van Dyne, 2021/01/04
- [PATCH v6 3/7] qemu: add support for iOS host, Joelle van Dyne, 2021/01/04
- [PATCH v6 7/7] block: check availablity for preadv/pwritev on mac, Joelle van Dyne, 2021/01/04
- Re: [PATCH v6 0/7] iOS and Apple Silicon host support, Peter Maydell, 2021/01/12