[Qemu-devel] [PATCH] configure: remove slirp submodule support that doesn't exist yet

Daniel P. Berrangé posted 1 patch 5 years ago
Test asan failed
Test docker-clang@ubuntu passed
Test docker-mingw@fedora passed
Test checkpatch passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20190313173157.30504-1-berrange@redhat.com
configure | 11 ++---------
1 file changed, 2 insertions(+), 9 deletions(-)
[Qemu-devel] [PATCH] configure: remove slirp submodule support that doesn't exist yet
Posted by Daniel P. Berrangé 5 years ago
The slirp code is not yet split off into a separate repository, so
configuring QEMU to use slirp as a submodule is premature. This
causes the non-existant "slirp" to be requested from git when syncing
submodules. This in turn appears to be cause of non-deterministic
failures some developers are seeing with QEMU's submodule sync process.

Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---

NB, this change should be reverted only once slirp exists in
the .git-modules file.

 configure | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/configure b/configure
index cab830a4c9..355eebfc5d 100755
--- a/configure
+++ b/configure
@@ -1109,8 +1109,6 @@ for opt do
   ;;
   --disable-slirp) slirp="no"
   ;;
-  --enable-slirp=git) slirp="git"
-  ;;
   --enable-slirp=system) slirp="system"
   ;;
   --disable-vde) vde="no"
@@ -5780,8 +5778,6 @@ case "$slirp" in
   "" | yes)
     if $pkg_config slirp; then
       slirp=system
-    elif test -e "${source_path}/.git" && test $git_update = 'yes' ; then
-      slirp=git
     elif test -e "${source_path}/slirp/Makefile" ; then
       slirp=internal
     elif test -z "$slirp" ; then
@@ -5799,10 +5795,7 @@ case "$slirp" in
 esac
 
 case "$slirp" in
-  git | internal)
-    if test "$slirp" = git; then
-      git_submodules="${git_submodules} slirp"
-    fi
+  internal)
     mkdir -p slirp
     slirp_cflags="-I\$(SRC_PATH)/slirp/src -I\$(BUILD_DIR)/slirp/src"
     slirp_libs="-L\$(BUILD_DIR)/slirp -lslirp"
@@ -6464,7 +6457,7 @@ if test "$slirp" != "no"; then
   echo "SLIRP_CFLAGS=$slirp_cflags" >> $config_host_mak
   echo "SLIRP_LIBS=$slirp_libs" >> $config_host_mak
 fi
-if [ "$slirp" = "git" -o "$slirp" = "internal" ]; then
+if [ "$slirp" = "internal" ]; then
     echo "config-host.h: subdir-slirp" >> $config_host_mak
 fi
 if test "$vde" = "yes" ; then
-- 
2.20.1


Re: [Qemu-devel] [PATCH] configure: remove slirp submodule support that doesn't exist yet
Posted by Marc-André Lureau 5 years ago
Hi

On Wed, Mar 13, 2019 at 6:43 PM Daniel P. Berrangé <berrange@redhat.com> wrote:
>
> The slirp code is not yet split off into a separate repository, so
> configuring QEMU to use slirp as a submodule is premature. This
> causes the non-existant "slirp" to be requested from git when syncing
> submodules. This in turn appears to be cause of non-deterministic
> failures some developers are seeing with QEMU's submodule sync process.
>
> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>

Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>

> ---
>
> NB, this change should be reverted only once slirp exists in
> the .git-modules file.
>
>  configure | 11 ++---------
>  1 file changed, 2 insertions(+), 9 deletions(-)
>
> diff --git a/configure b/configure
> index cab830a4c9..355eebfc5d 100755
> --- a/configure
> +++ b/configure
> @@ -1109,8 +1109,6 @@ for opt do
>    ;;
>    --disable-slirp) slirp="no"
>    ;;
> -  --enable-slirp=git) slirp="git"
> -  ;;
>    --enable-slirp=system) slirp="system"
>    ;;
>    --disable-vde) vde="no"
> @@ -5780,8 +5778,6 @@ case "$slirp" in
>    "" | yes)
>      if $pkg_config slirp; then
>        slirp=system
> -    elif test -e "${source_path}/.git" && test $git_update = 'yes' ; then
> -      slirp=git
>      elif test -e "${source_path}/slirp/Makefile" ; then
>        slirp=internal
>      elif test -z "$slirp" ; then
> @@ -5799,10 +5795,7 @@ case "$slirp" in
>  esac
>
>  case "$slirp" in
> -  git | internal)
> -    if test "$slirp" = git; then
> -      git_submodules="${git_submodules} slirp"
> -    fi
> +  internal)
>      mkdir -p slirp
>      slirp_cflags="-I\$(SRC_PATH)/slirp/src -I\$(BUILD_DIR)/slirp/src"
>      slirp_libs="-L\$(BUILD_DIR)/slirp -lslirp"
> @@ -6464,7 +6457,7 @@ if test "$slirp" != "no"; then
>    echo "SLIRP_CFLAGS=$slirp_cflags" >> $config_host_mak
>    echo "SLIRP_LIBS=$slirp_libs" >> $config_host_mak
>  fi
> -if [ "$slirp" = "git" -o "$slirp" = "internal" ]; then
> +if [ "$slirp" = "internal" ]; then
>      echo "config-host.h: subdir-slirp" >> $config_host_mak
>  fi
>  if test "$vde" = "yes" ; then
> --
> 2.20.1
>
>


-- 
Marc-André Lureau

Re: [Qemu-devel] [PATCH] configure: remove slirp submodule support that doesn't exist yet
Posted by Stefano Garzarella 5 years ago
On Wed, Mar 13, 2019 at 05:31:57PM +0000, Daniel P. Berrangé wrote:
> The slirp code is not yet split off into a separate repository, so
> configuring QEMU to use slirp as a submodule is premature. This
> causes the non-existant "slirp" to be requested from git when syncing
> submodules. This in turn appears to be cause of non-deterministic
> failures some developers are seeing with QEMU's submodule sync process.
> 

Fixes: 675b9b53687 "build-sys: link with slirp as an external project"

> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
> ---
> 
> NB, this change should be reverted only once slirp exists in
> the .git-modules file.
> 
>  configure | 11 ++---------
>  1 file changed, 2 insertions(+), 9 deletions(-)


Reviewed-by: Stefano Garzarella <sgarzare@redhat.com>