[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v6 3/7] qemu: add support for iOS host
From: |
Philippe Mathieu-Daudé |
Subject: |
Re: [PATCH v6 3/7] qemu: add support for iOS host |
Date: |
Tue, 12 Jan 2021 12:56:26 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 |
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.