diff mbox series

[05/10] slirp: update for iOS resolv fix

Message ID 20201012232939.48481-6-j@getutm.app
State New
Headers show
Series iOS and Apple Silicon host support | expand

Commit Message

Joelle van Dyne Oct. 12, 2020, 11:29 p.m. UTC
From: osy <osy86@users.noreply.github.com>

We cannot access /etc/resolv.conf on iOS so libslirp is modified to use
libresolv instead.

Signed-off-by: Joelle van Dyne <j@getutm.app>
---
 .gitmodules | 2 +-
 meson.build | 2 ++
 slirp       | 2 +-
 3 files changed, 4 insertions(+), 2 deletions(-)

Comments

Philippe Mathieu-Daudé Oct. 13, 2020, 1:32 p.m. UTC | #1
On 10/13/20 1:29 AM, Joelle van Dyne wrote:
> From: osy <osy86@users.noreply.github.com>
> 
> We cannot access /etc/resolv.conf on iOS so libslirp is modified to use
> libresolv instead.
> 
> Signed-off-by: Joelle van Dyne <j@getutm.app>
> ---
>   .gitmodules | 2 +-
>   meson.build | 2 ++
>   slirp       | 2 +-
>   3 files changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/.gitmodules b/.gitmodules
> index 2bdeeacef8..f23e859210 100644
> --- a/.gitmodules
> +++ b/.gitmodules
> @@ -51,7 +51,7 @@
>   	url = https://git.qemu.org/git/edk2.git
>   [submodule "slirp"]
>   	path = slirp
> -	url = https://git.qemu.org/git/libslirp.git
> +	url = https://github.com/utmapp/libslirp.git

NAck.

You can not take over the SLiRP project submodule that way.

I suggest getting your SLiRP changes merged with mainstream
instead, see:
https://gitlab.freedesktop.org/slirp/libslirp#contributing

>   [submodule "roms/opensbi"]
>   	path = roms/opensbi
>   	url = 	https://git.qemu.org/git/opensbi.git
> diff --git a/meson.build b/meson.build
> index 32cf08619f..da96e296e0 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -996,6 +996,8 @@ if have_system
>       slirp_deps = []
>       if targetos == 'windows'
>         slirp_deps = cc.find_library('iphlpapi')
> +    elif targetos == 'darwin'
> +      slirp_deps = cc.find_library('resolv')
>       endif
>       slirp_conf = configuration_data()
>       slirp_conf.set('SLIRP_MAJOR_VERSION', meson.project_version().split('.')[0])
> diff --git a/slirp b/slirp
> index ce94eba204..452c389d82 160000
> --- a/slirp
> +++ b/slirp
> @@ -1 +1 @@
> -Subproject commit ce94eba2042d52a0ba3d9e252ebce86715e94275
> +Subproject commit 452c389d8288f81ec9d59d983a047d4e54f3194e
Marc-André Lureau Oct. 13, 2020, 2:38 p.m. UTC | #2
Hi

On Tue, Oct 13, 2020 at 5:34 PM Philippe Mathieu-Daudé <philmd@redhat.com>
wrote:

> On 10/13/20 1:29 AM, Joelle van Dyne wrote:
> > From: osy <osy86@users.noreply.github.com>
> >
> > We cannot access /etc/resolv.conf on iOS so libslirp is modified to use
> > libresolv instead.
> >
> > Signed-off-by: Joelle van Dyne <j@getutm.app>
> > ---
> >   .gitmodules | 2 +-
> >   meson.build | 2 ++
> >   slirp       | 2 +-
> >   3 files changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/.gitmodules b/.gitmodules
> > index 2bdeeacef8..f23e859210 100644
> > --- a/.gitmodules
> > +++ b/.gitmodules
> > @@ -51,7 +51,7 @@
> >       url = https://git.qemu.org/git/edk2.git
> >   [submodule "slirp"]
> >       path = slirp
> > -     url = https://git.qemu.org/git/libslirp.git
> > +     url = https://github.com/utmapp/libslirp.git
>
> NAck.
>
> You can not take over the SLiRP project submodule that way.
>
> I suggest getting your SLiRP changes merged with mainstream
> instead, see:
> https://gitlab.freedesktop.org/slirp/libslirp#contributing
>
>
I think he did:
https://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/54

Btw, I also noticed the coroutine library submodule proposed in this series
is a fork from the original library. Not sure what the upstream status is
and whether this is fine.

>   [submodule "roms/opensbi"]
> >       path = roms/opensbi
> >       url =   https://git.qemu.org/git/opensbi.git
> > diff --git a/meson.build b/meson.build
> > index 32cf08619f..da96e296e0 100644
> > --- a/meson.build
> > +++ b/meson.build
> > @@ -996,6 +996,8 @@ if have_system
> >       slirp_deps = []
> >       if targetos == 'windows'
> >         slirp_deps = cc.find_library('iphlpapi')
> > +    elif targetos == 'darwin'
> > +      slirp_deps = cc.find_library('resolv')
> >       endif
> >       slirp_conf = configuration_data()
> >       slirp_conf.set('SLIRP_MAJOR_VERSION',
> meson.project_version().split('.')[0])
> > diff --git a/slirp b/slirp
> > index ce94eba204..452c389d82 160000
> > --- a/slirp
> > +++ b/slirp
> > @@ -1 +1 @@
> > -Subproject commit ce94eba2042d52a0ba3d9e252ebce86715e94275
> > +Subproject commit 452c389d8288f81ec9d59d983a047d4e54f3194e
>
>
>
Philippe Mathieu-Daudé Oct. 13, 2020, 2:59 p.m. UTC | #3
On 10/13/20 4:38 PM, Marc-André Lureau wrote:
> Hi
> 
> On Tue, Oct 13, 2020 at 5:34 PM Philippe Mathieu-Daudé 
> <philmd@redhat.com <mailto:philmd@redhat.com>> wrote:
> 
>     On 10/13/20 1:29 AM, Joelle van Dyne wrote:
>      > From: osy <osy86@users.noreply.github.com
>     <mailto:osy86@users.noreply.github.com>>
>      >
>      > We cannot access /etc/resolv.conf on iOS so libslirp is modified
>     to use
>      > libresolv instead.
>      >
>      > Signed-off-by: Joelle van Dyne <j@getutm.app>
>      > ---
>      >   .gitmodules | 2 +-
>      >   meson.build | 2 ++
>      >   slirp       | 2 +-
>      >   3 files changed, 4 insertions(+), 2 deletions(-)
>      >
>      > diff --git a/.gitmodules b/.gitmodules
>      > index 2bdeeacef8..f23e859210 100644
>      > --- a/.gitmodules
>      > +++ b/.gitmodules
>      > @@ -51,7 +51,7 @@
>      >       url = https://git.qemu.org/git/edk2.git
>     <https://git.qemu.org/git/edk2.git>
>      >   [submodule "slirp"]
>      >       path = slirp
>      > -     url = https://git.qemu.org/git/libslirp.git
>     <https://git.qemu.org/git/libslirp.git>
>      > +     url = https://github.com/utmapp/libslirp.git
>     <https://github.com/utmapp/libslirp.git>
> 
>     NAck.
> 
>     You can not take over the SLiRP project submodule that way.
> 
>     I suggest getting your SLiRP changes merged with mainstream
>     instead, see:
>     https://gitlab.freedesktop.org/slirp/libslirp#contributing
>     <https://gitlab.freedesktop.org/slirp/libslirp#contributing>
> 
> 
> I think he did: 
> https://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/54 
> <https://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/54>

I am being wary because the series is not posted as RFC.

But from the cover it looks like a RFC series:

* slirp updated to support DNS resolving using libresolv; a separate
   patch will be submitted to the project. To allow for builds to
   succeed, the .gitmodule is temporarily changed. We're not entirely
   sure how cross-project patches should be handled here.

> 
> Btw, I also noticed the coroutine library submodule proposed in this 
> series is a fork from the original library. Not sure what the upstream 
> status is and whether this is fine.
> 
>      >   [submodule "roms/opensbi"]
>      >       path = roms/opensbi
>      >       url = https://git.qemu.org/git/opensbi.git
>     <https://git.qemu.org/git/opensbi.git>
>      > diff --git a/meson.build b/meson.build
>      > index 32cf08619f..da96e296e0 100644
>      > --- a/meson.build
>      > +++ b/meson.build
>      > @@ -996,6 +996,8 @@ if have_system
>      >       slirp_deps = []
>      >       if targetos == 'windows'
>      >         slirp_deps = cc.find_library('iphlpapi')
>      > +    elif targetos == 'darwin'
>      > +      slirp_deps = cc.find_library('resolv')
>      >       endif
>      >       slirp_conf = configuration_data()
>      >       slirp_conf.set('SLIRP_MAJOR_VERSION',
>     meson.project_version().split('.')[0])
>      > diff --git a/slirp b/slirp
>      > index ce94eba204..452c389d82 160000
>      > --- a/slirp
>      > +++ b/slirp
>      > @@ -1 +1 @@
>      > -Subproject commit ce94eba2042d52a0ba3d9e252ebce86715e94275
>      > +Subproject commit 452c389d8288f81ec9d59d983a047d4e54f3194e
> 
> 
> 
> 
> -- 
> Marc-André Lureau
Joelle van Dyne Oct. 14, 2020, 3:54 p.m. UTC | #4
Sorry, I was not aware of the rules for RFC. I will remove this one from
the v2 patch set. If and when the libslirp changes are in, what are the
procedures for sending the QEMU side changes?

-j

On Tue, Oct 13, 2020 at 7:59 AM Philippe Mathieu-Daudé <philmd@redhat.com>
wrote:

> On 10/13/20 4:38 PM, Marc-André Lureau wrote:
> > Hi
> >
> > On Tue, Oct 13, 2020 at 5:34 PM Philippe Mathieu-Daudé
> > <philmd@redhat.com <mailto:philmd@redhat.com>> wrote:
> >
> >     On 10/13/20 1:29 AM, Joelle van Dyne wrote:
> >      > From: osy <osy86@users.noreply.github.com
> >     <mailto:osy86@users.noreply.github.com>>
> >      >
> >      > We cannot access /etc/resolv.conf on iOS so libslirp is modified
> >     to use
> >      > libresolv instead.
> >      >
> >      > Signed-off-by: Joelle van Dyne <j@getutm.app>
> >      > ---
> >      >   .gitmodules | 2 +-
> >      >   meson.build | 2 ++
> >      >   slirp       | 2 +-
> >      >   3 files changed, 4 insertions(+), 2 deletions(-)
> >      >
> >      > diff --git a/.gitmodules b/.gitmodules
> >      > index 2bdeeacef8..f23e859210 100644
> >      > --- a/.gitmodules
> >      > +++ b/.gitmodules
> >      > @@ -51,7 +51,7 @@
> >      >       url = https://git.qemu.org/git/edk2.git
> >     <https://git.qemu.org/git/edk2.git>
> >      >   [submodule "slirp"]
> >      >       path = slirp
> >      > -     url = https://git.qemu.org/git/libslirp.git
> >     <https://git.qemu.org/git/libslirp.git>
> >      > +     url = https://github.com/utmapp/libslirp.git
> >     <https://github.com/utmapp/libslirp.git>
> >
> >     NAck.
> >
> >     You can not take over the SLiRP project submodule that way.
> >
> >     I suggest getting your SLiRP changes merged with mainstream
> >     instead, see:
> >     https://gitlab.freedesktop.org/slirp/libslirp#contributing
> >     <https://gitlab.freedesktop.org/slirp/libslirp#contributing>
> >
> >
> > I think he did:
> > https://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/54
> > <https://gitlab.freedesktop.org/slirp/libslirp/-/merge_requests/54>
>
> I am being wary because the series is not posted as RFC.
>
> But from the cover it looks like a RFC series:
>
> * slirp updated to support DNS resolving using libresolv; a separate
>    patch will be submitted to the project. To allow for builds to
>    succeed, the .gitmodule is temporarily changed. We're not entirely
>    sure how cross-project patches should be handled here.
>
> >
> > Btw, I also noticed the coroutine library submodule proposed in this
> > series is a fork from the original library. Not sure what the upstream
> > status is and whether this is fine.
> >
> >      >   [submodule "roms/opensbi"]
> >      >       path = roms/opensbi
> >      >       url = https://git.qemu.org/git/opensbi.git
> >     <https://git.qemu.org/git/opensbi.git>
> >      > diff --git a/meson.build b/meson.build
> >      > index 32cf08619f..da96e296e0 100644
> >      > --- a/meson.build
> >      > +++ b/meson.build
> >      > @@ -996,6 +996,8 @@ if have_system
> >      >       slirp_deps = []
> >      >       if targetos == 'windows'
> >      >         slirp_deps = cc.find_library('iphlpapi')
> >      > +    elif targetos == 'darwin'
> >      > +      slirp_deps = cc.find_library('resolv')
> >      >       endif
> >      >       slirp_conf = configuration_data()
> >      >       slirp_conf.set('SLIRP_MAJOR_VERSION',
> >     meson.project_version().split('.')[0])
> >      > diff --git a/slirp b/slirp
> >      > index ce94eba204..452c389d82 160000
> >      > --- a/slirp
> >      > +++ b/slirp
> >      > @@ -1 +1 @@
> >      > -Subproject commit ce94eba2042d52a0ba3d9e252ebce86715e94275
> >      > +Subproject commit 452c389d8288f81ec9d59d983a047d4e54f3194e
> >
> >
> >
> >
> > --
> > Marc-André Lureau
>
>
>
diff mbox series

Patch

diff --git a/.gitmodules b/.gitmodules
index 2bdeeacef8..f23e859210 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -51,7 +51,7 @@ 
 	url = https://git.qemu.org/git/edk2.git
 [submodule "slirp"]
 	path = slirp
-	url = https://git.qemu.org/git/libslirp.git
+	url = https://github.com/utmapp/libslirp.git
 [submodule "roms/opensbi"]
 	path = roms/opensbi
 	url = 	https://git.qemu.org/git/opensbi.git
diff --git a/meson.build b/meson.build
index 32cf08619f..da96e296e0 100644
--- a/meson.build
+++ b/meson.build
@@ -996,6 +996,8 @@  if have_system
     slirp_deps = []
     if targetos == 'windows'
       slirp_deps = cc.find_library('iphlpapi')
+    elif targetos == 'darwin'
+      slirp_deps = cc.find_library('resolv')
     endif
     slirp_conf = configuration_data()
     slirp_conf.set('SLIRP_MAJOR_VERSION', meson.project_version().split('.')[0])
diff --git a/slirp b/slirp
index ce94eba204..452c389d82 160000
--- a/slirp
+++ b/slirp
@@ -1 +1 @@ 
-Subproject commit ce94eba2042d52a0ba3d9e252ebce86715e94275
+Subproject commit 452c389d8288f81ec9d59d983a047d4e54f3194e