qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] .gitlab-ci.d/windows.yml: Unify the prerequisite packages
@ 2022-11-25 10:49 Bin Meng
  2022-11-25 10:49 ` [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Bin Meng
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Bin Meng @ 2022-11-25 10:49 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Marc-André Lureau, Bin Meng, Alex Bennée,
	Beraldo Leal, Philippe Mathieu-Daudé,
	Wainer dos Santos Moschetta

From: Bin Meng <bin.meng@windriver.com>

At present the prerequisite packages for 64-bit and 32-bit builds
are slightly different. Let's use the same packages for both for
easier maintenance in the future.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
---

 .gitlab-ci.d/windows.yml | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index a3e7a37022..99d78c2213 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -41,11 +41,15 @@ msys2-64bit:
       mingw-w64-x86_64-gcc
       mingw-w64-x86_64-glib2
       mingw-w64-x86_64-gnutls
+      mingw-w64-x86_64-gtk3
+      mingw-w64-x86_64-libgcrypt
+      mingw-w64-x86_64-libjpeg-turbo
       mingw-w64-x86_64-libnfs
       mingw-w64-x86_64-libpng
       mingw-w64-x86_64-libssh
       mingw-w64-x86_64-libtasn1
       mingw-w64-x86_64-libusb
+      mingw-w64-x86_64-lzo2
       mingw-w64-x86_64-nettle
       mingw-w64-x86_64-ninja
       mingw-w64-x86_64-pixman
@@ -79,16 +83,22 @@ msys2-32bit:
       mingw-w64-i686-gtk3
       mingw-w64-i686-libgcrypt
       mingw-w64-i686-libjpeg-turbo
+      mingw-w64-i686-libnfs
+      mingw-w64-i686-libpng
       mingw-w64-i686-libssh
       mingw-w64-i686-libtasn1
       mingw-w64-i686-libusb
       mingw-w64-i686-lzo2
+      mingw-w64-i686-nettle
       mingw-w64-i686-ninja
       mingw-w64-i686-pixman
       mingw-w64-i686-pkgconf
       mingw-w64-i686-python
+      mingw-w64-i686-SDL2
+      mingw-w64-i686-SDL2_image
       mingw-w64-i686-snappy
-      mingw-w64-i686-usbredir "
+      mingw-w64-i686-usbredir
+      mingw-w64-i686-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
   - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent
  2022-11-25 10:49 [PATCH 1/4] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Bin Meng
@ 2022-11-25 10:49 ` Bin Meng
  2022-11-25 10:56   ` Thomas Huth
  2022-11-25 10:49 ` [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Bin Meng
  2022-11-25 10:49 ` [PATCH 4/4] tests/qtest: Enable qtest build on Windows Bin Meng
  2 siblings, 1 reply; 7+ messages in thread
From: Bin Meng @ 2022-11-25 10:49 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Marc-André Lureau, Bin Meng, Alex Bennée,
	Beraldo Leal, Philippe Mathieu-Daudé,
	Wainer dos Santos Moschetta

From: Bin Meng <bin.meng@windriver.com>

At present the build scripts of 32-bit and 64-bit are inconsistent.
Let's keep them consistent for easier maintenance.

While we are here, add some comments to explain that for the 64-bit
job, "--without-default-devices" is a must have, at least for now.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
---

 .gitlab-ci.d/windows.yml | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index 99d78c2213..c6de65c784 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -61,12 +61,19 @@ msys2-64bit:
       mingw-w64-x86_64-usbredir
       mingw-w64-x86_64-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
-  - $env:MSYSTEM = 'MINGW64'     # Start a 64 bit Mingw environment
+  - $env:MSYSTEM = 'MINGW64'     # Start a 64-bit MinGW environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
-  - .\msys64\usr\bin\bash -lc './configure --target-list=x86_64-softmmu
+  - mkdir output
+  - cd output
+  # Note: do not remove "--without-default-devices"!
+  # commit 9f8e6cad65a6 ("gitlab-ci: Speed up the msys2-64bit job by using --without-default-devices"
+  # changed to compile QEMU with the --without-default-devices switch
+  # for the msys2 64-bit job, due to the build could not complete within
+  # the project timeout.
+  - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
       --enable-capstone --without-default-devices'
-  - .\msys64\usr\bin\bash -lc 'make'
-  - .\msys64\usr\bin\bash -lc 'make check || { cat build/meson-logs/testlog.txt; exit 1; } ;'
+  - ..\msys64\usr\bin\bash -lc 'make'
+  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
 
 msys2-32bit:
   extends: .shared_msys2_builder
@@ -100,10 +107,11 @@ msys2-32bit:
       mingw-w64-i686-usbredir
       mingw-w64-i686-zstd "
   - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
-  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
+  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinGW environment
   - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
   - mkdir output
   - cd output
-  - ..\msys64\usr\bin\bash -lc "../configure --target-list=ppc64-softmmu"
+  - ..\msys64\usr\bin\bash -lc '../configure --target-list=ppc64-softmmu
+      --enable-capstone'
   - ..\msys64\usr\bin\bash -lc 'make'
   - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now
  2022-11-25 10:49 [PATCH 1/4] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Bin Meng
  2022-11-25 10:49 ` [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Bin Meng
@ 2022-11-25 10:49 ` Bin Meng
  2022-11-25 13:21   ` Thomas Huth
  2022-11-25 10:49 ` [PATCH 4/4] tests/qtest: Enable qtest build on Windows Bin Meng
  2 siblings, 1 reply; 7+ messages in thread
From: Bin Meng @ 2022-11-25 10:49 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Marc-André Lureau, Bin Meng, Alex Bennée,
	Beraldo Leal, Philippe Mathieu-Daudé,
	Wainer dos Santos Moschetta

From: Bin Meng <bin.meng@windriver.com>

qTests don't run successfully with "--without-default-devices",
so let's exclude the qtests from CI for now.

Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Bin Meng <bin.meng@windriver.com>
---

 .gitlab-ci.d/windows.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
index c6de65c784..fce9a02387 100644
--- a/.gitlab-ci.d/windows.yml
+++ b/.gitlab-ci.d/windows.yml
@@ -73,7 +73,9 @@ msys2-64bit:
   - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
       --enable-capstone --without-default-devices'
   - ..\msys64\usr\bin\bash -lc 'make'
-  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
+  # qTests don't run successfully with "--without-default-devices",
+  # so let's exclude the qtests from CI for now.
+  - ..\msys64\usr\bin\bash -lc 'make check MTESTARGS=\"--no-suite qtest\" || { cat meson-logs/testlog.txt; exit 1; } ;'
 
 msys2-32bit:
   extends: .shared_msys2_builder
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 4/4] tests/qtest: Enable qtest build on Windows
  2022-11-25 10:49 [PATCH 1/4] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Bin Meng
  2022-11-25 10:49 ` [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Bin Meng
  2022-11-25 10:49 ` [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Bin Meng
@ 2022-11-25 10:49 ` Bin Meng
  2 siblings, 0 replies; 7+ messages in thread
From: Bin Meng @ 2022-11-25 10:49 UTC (permalink / raw)
  To: qemu-devel
  Cc: Thomas Huth, Marc-André Lureau, Bin Meng, Laurent Vivier,
	Paolo Bonzini

From: Bin Meng <bin.meng@windriver.com>

Now that we have fixed various test case issues as seen when running
on Windows, let's enable the qtest build on Windows.

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
---

 tests/qtest/meson.build | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/tests/qtest/meson.build b/tests/qtest/meson.build
index c07a5b1a5f..f0ebb5fac6 100644
--- a/tests/qtest/meson.build
+++ b/tests/qtest/meson.build
@@ -1,9 +1,3 @@
-# All QTests for now are POSIX-only, but the dependencies are
-# really in libqtest, not in the testcases themselves.
-if not config_host.has_key('CONFIG_POSIX')
-  subdir_done()
-endif
-
 slow_qtests = {
   'ahci-test' : 60,
   'bios-tables-test' : 120,
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent
  2022-11-25 10:49 ` [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Bin Meng
@ 2022-11-25 10:56   ` Thomas Huth
  2022-11-25 11:11     ` Bin Meng
  0 siblings, 1 reply; 7+ messages in thread
From: Thomas Huth @ 2022-11-25 10:56 UTC (permalink / raw)
  To: Bin Meng, qemu-devel
  Cc: Marc-André Lureau, Bin Meng, Alex Bennée, Beraldo Leal,
	Philippe Mathieu-Daudé, Wainer dos Santos Moschetta

On 25/11/2022 11.49, Bin Meng wrote:
> From: Bin Meng <bin.meng@windriver.com>
> 
> At present the build scripts of 32-bit and 64-bit are inconsistent.
> Let's keep them consistent for easier maintenance.
> 
> While we are here, add some comments to explain that for the 64-bit
> job, "--without-default-devices" is a must have, at least for now.
> 
> Signed-off-by: Bin Meng <bin.meng@windriver.com>
> ---
> 
>   .gitlab-ci.d/windows.yml | 20 ++++++++++++++------
>   1 file changed, 14 insertions(+), 6 deletions(-)
> 
> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
> index 99d78c2213..c6de65c784 100644
> --- a/.gitlab-ci.d/windows.yml
> +++ b/.gitlab-ci.d/windows.yml
> @@ -61,12 +61,19 @@ msys2-64bit:
>         mingw-w64-x86_64-usbredir
>         mingw-w64-x86_64-zstd "
>     - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
> -  - $env:MSYSTEM = 'MINGW64'     # Start a 64 bit Mingw environment
> +  - $env:MSYSTEM = 'MINGW64'     # Start a 64-bit MinGW environment
>     - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
> -  - .\msys64\usr\bin\bash -lc './configure --target-list=x86_64-softmmu
> +  - mkdir output
> +  - cd output
> +  # Note: do not remove "--without-default-devices"!
> +  # commit 9f8e6cad65a6 ("gitlab-ci: Speed up the msys2-64bit job by using --without-default-devices"
> +  # changed to compile QEMU with the --without-default-devices switch
> +  # for the msys2 64-bit job, due to the build could not complete within
> +  # the project timeout.
> +  - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
>         --enable-capstone --without-default-devices'
> -  - .\msys64\usr\bin\bash -lc 'make'
> -  - .\msys64\usr\bin\bash -lc 'make check || { cat build/meson-logs/testlog.txt; exit 1; } ;'
> +  - ..\msys64\usr\bin\bash -lc 'make'
> +  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
>   
>   msys2-32bit:
>     extends: .shared_msys2_builder
> @@ -100,10 +107,11 @@ msys2-32bit:
>         mingw-w64-i686-usbredir
>         mingw-w64-i686-zstd "
>     - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
> -  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
> +  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinGW environment
>     - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
>     - mkdir output
>     - cd output
> -  - ..\msys64\usr\bin\bash -lc "../configure --target-list=ppc64-softmmu"
> +  - ..\msys64\usr\bin\bash -lc '../configure --target-list=ppc64-softmmu
> +      --enable-capstone'

Capstone should automatically be detected if it is installed, so the 
--enable-capstone seems redundant here ... does it not work without it?

  Thomas



^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent
  2022-11-25 10:56   ` Thomas Huth
@ 2022-11-25 11:11     ` Bin Meng
  0 siblings, 0 replies; 7+ messages in thread
From: Bin Meng @ 2022-11-25 11:11 UTC (permalink / raw)
  To: Thomas Huth
  Cc: qemu-devel, Marc-André Lureau, Bin Meng, Alex Bennée,
	Beraldo Leal, Philippe Mathieu-Daudé,
	Wainer dos Santos Moschetta

On Fri, Nov 25, 2022 at 6:56 PM Thomas Huth <thuth@redhat.com> wrote:
>
> On 25/11/2022 11.49, Bin Meng wrote:
> > From: Bin Meng <bin.meng@windriver.com>
> >
> > At present the build scripts of 32-bit and 64-bit are inconsistent.
> > Let's keep them consistent for easier maintenance.
> >
> > While we are here, add some comments to explain that for the 64-bit
> > job, "--without-default-devices" is a must have, at least for now.
> >
> > Signed-off-by: Bin Meng <bin.meng@windriver.com>
> > ---
> >
> >   .gitlab-ci.d/windows.yml | 20 ++++++++++++++------
> >   1 file changed, 14 insertions(+), 6 deletions(-)
> >
> > diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
> > index 99d78c2213..c6de65c784 100644
> > --- a/.gitlab-ci.d/windows.yml
> > +++ b/.gitlab-ci.d/windows.yml
> > @@ -61,12 +61,19 @@ msys2-64bit:
> >         mingw-w64-x86_64-usbredir
> >         mingw-w64-x86_64-zstd "
> >     - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
> > -  - $env:MSYSTEM = 'MINGW64'     # Start a 64 bit Mingw environment
> > +  - $env:MSYSTEM = 'MINGW64'     # Start a 64-bit MinGW environment
> >     - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
> > -  - .\msys64\usr\bin\bash -lc './configure --target-list=x86_64-softmmu
> > +  - mkdir output
> > +  - cd output
> > +  # Note: do not remove "--without-default-devices"!
> > +  # commit 9f8e6cad65a6 ("gitlab-ci: Speed up the msys2-64bit job by using --without-default-devices"
> > +  # changed to compile QEMU with the --without-default-devices switch
> > +  # for the msys2 64-bit job, due to the build could not complete within
> > +  # the project timeout.
> > +  - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
> >         --enable-capstone --without-default-devices'
> > -  - .\msys64\usr\bin\bash -lc 'make'
> > -  - .\msys64\usr\bin\bash -lc 'make check || { cat build/meson-logs/testlog.txt; exit 1; } ;'
> > +  - ..\msys64\usr\bin\bash -lc 'make'
> > +  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
> >
> >   msys2-32bit:
> >     extends: .shared_msys2_builder
> > @@ -100,10 +107,11 @@ msys2-32bit:
> >         mingw-w64-i686-usbredir
> >         mingw-w64-i686-zstd "
> >     - $env:CHERE_INVOKING = 'yes'  # Preserve the current working directory
> > -  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinG environment
> > +  - $env:MSYSTEM = 'MINGW32'     # Start a 32-bit MinGW environment
> >     - $env:MSYS = 'winsymlinks:native' # Enable native Windows symlink
> >     - mkdir output
> >     - cd output
> > -  - ..\msys64\usr\bin\bash -lc "../configure --target-list=ppc64-softmmu"
> > +  - ..\msys64\usr\bin\bash -lc '../configure --target-list=ppc64-softmmu
> > +      --enable-capstone'
>
> Capstone should automatically be detected if it is installed, so the
> --enable-capstone seems redundant here ... does it not work without it?
>

--enable-capstone is redundant. Will remove in v2.

Regards,
Bin


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now
  2022-11-25 10:49 ` [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Bin Meng
@ 2022-11-25 13:21   ` Thomas Huth
  0 siblings, 0 replies; 7+ messages in thread
From: Thomas Huth @ 2022-11-25 13:21 UTC (permalink / raw)
  To: Bin Meng, qemu-devel
  Cc: Marc-André Lureau, Bin Meng, Alex Bennée, Beraldo Leal,
	Philippe Mathieu-Daudé, Wainer dos Santos Moschetta

On 25/11/2022 11.49, Bin Meng wrote:
> From: Bin Meng <bin.meng@windriver.com>
> 
> qTests don't run successfully with "--without-default-devices",
> so let's exclude the qtests from CI for now.
> 
> Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
> Signed-off-by: Bin Meng <bin.meng@windriver.com>
> ---
> 
>   .gitlab-ci.d/windows.yml | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/.gitlab-ci.d/windows.yml b/.gitlab-ci.d/windows.yml
> index c6de65c784..fce9a02387 100644
> --- a/.gitlab-ci.d/windows.yml
> +++ b/.gitlab-ci.d/windows.yml
> @@ -73,7 +73,9 @@ msys2-64bit:
>     - ..\msys64\usr\bin\bash -lc '../configure --target-list=x86_64-softmmu
>         --enable-capstone --without-default-devices'
>     - ..\msys64\usr\bin\bash -lc 'make'
> -  - ..\msys64\usr\bin\bash -lc 'make check || { cat meson-logs/testlog.txt; exit 1; } ;'
> +  # qTests don't run successfully with "--without-default-devices",
> +  # so let's exclude the qtests from CI for now.
> +  - ..\msys64\usr\bin\bash -lc 'make check MTESTARGS=\"--no-suite qtest\" || { cat meson-logs/testlog.txt; exit 1; } ;'
>   
>   msys2-32bit:
>     extends: .shared_msys2_builder

Reviewed-by: Thomas Huth <thuth@redhat.com>



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-11-25 13:22 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-11-25 10:49 [PATCH 1/4] .gitlab-ci.d/windows.yml: Unify the prerequisite packages Bin Meng
2022-11-25 10:49 ` [PATCH 2/4] .gitlab-ci.d/windows.yml: Keep 64-bit and 32-bit build scripts consistent Bin Meng
2022-11-25 10:56   ` Thomas Huth
2022-11-25 11:11     ` Bin Meng
2022-11-25 10:49 ` [PATCH 3/4] .gitlab-ci.d/windows.yml: Exclude qTests from 64-bit CI job for now Bin Meng
2022-11-25 13:21   ` Thomas Huth
2022-11-25 10:49 ` [PATCH 4/4] tests/qtest: Enable qtest build on Windows Bin Meng

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).