[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 24/24] ci: Enable msys2 ci in cirrus
From: |
Daniel P . Berrangé |
Subject: |
Re: [PATCH v4 24/24] ci: Enable msys2 ci in cirrus |
Date: |
Wed, 9 Sep 2020 17:33:10 +0100 |
User-agent: |
Mutt/1.14.6 (2020-07-11) |
On Thu, Sep 10, 2020 at 12:14:30AM +0800, Yonggang Luo wrote:
> Install msys2 in a proper way refer to
> https://github.com/cirruslabs/cirrus-ci-docs/issues/699
> The https://wiki.qemu.org/Hosts/W32#Native_builds_with_MSYS2 need to be
> updated.
> There is no need of --cross-prefix, open mingw64.exe instead of msys2.exe
> then we don't
> need the --cross-prefix, besides we using environment variable settings:
> MSYS: winsymlinks:nativestrict
> MSYSTEM: MINGW64
> CHERE_INVOKING: 1
> to opening mingw64 native shell.
> We now running tests with make -i check to skip tests errors.
>
> Signed-off-by: Yonggang Luo <luoyonggang@gmail.com>
> ---
> .cirrus.yml | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 59 insertions(+)
>
> diff --git a/.cirrus.yml b/.cirrus.yml
> index a18971aac4..f819d202db 100644
> --- a/.cirrus.yml
> +++ b/.cirrus.yml
> @@ -44,3 +44,62 @@ macos_xcode_task:
> --enable-werror --cc=clang || { cat config.log; exit 1; }
> - gmake -j$(sysctl -n hw.ncpu)
> - gmake check
> +
> +windows_msys2_task:
> + windows_container:
> + image: cirrusci/windowsservercore:cmake
> + os_version: 2019
> + cpu: 8
> + memory: 8G
> + env:
> + MSYS: winsymlinks:nativestrict
> + MSYSTEM: MINGW64
> + CHERE_INVOKING: 1
> + printenv_script:
> + - C:\tools\msys64\usr\bin\bash.exe -lc 'printenv'
> + install_script:
> + - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && curl -O
> http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz"
> + - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && curl -O
> http://repo.msys2.org/msys/x86_64/msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz.sig"
> + - C:\tools\msys64\usr\bin\bash.exe -lc "cd /c/tools && pacman -U
> --noconfirm msys2-keyring-r21.b39fb11-1-any.pkg.tar.xz"
> + - C:\tools\msys64\usr\bin\bash.exe -lc "pacman -Sy --noconfirm"
> + - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --needed --noconfirm -S
> bash pacman pacman-mirrors msys2-runtime"
> + - taskkill /F /IM gpg-agent.exe
> + - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -Su"
> + - C:\tools\msys64\usr\bin\bash.exe -lc "pacman --noconfirm -S --needed
> + base-devel
> + git
> + mingw-w64-x86_64-python
> + mingw-w64-x86_64-python-setuptools
> + mingw-w64-x86_64-toolchain
> + mingw-w64-x86_64-SDL2
> + mingw-w64-x86_64-SDL2_image
> + mingw-w64-x86_64-gtk3
> + mingw-w64-x86_64-glib2
> + mingw-w64-x86_64-ninja
> + mingw-w64-x86_64-make
> + mingw-w64-x86_64-jemalloc
> + mingw-w64-x86_64-lzo2
> + mingw-w64-x86_64-zstd
> + mingw-w64-x86_64-libjpeg-turbo
> + mingw-w64-x86_64-pixman
> + mingw-w64-x86_64-libgcrypt
> + mingw-w64-x86_64-capstone
> + mingw-w64-x86_64-libpng
> + mingw-w64-x86_64-libssh
> + mingw-w64-x86_64-libxml2
> + mingw-w64-x86_64-snappy
> + mingw-w64-x86_64-libusb
> + mingw-w64-x86_64-usbredir
> + mingw-w64-x86_64-libtasn1
> + mingw-w64-x86_64-libnfs
> + mingw-w64-x86_64-nettle
> + mingw-w64-x86_64-cyrus-sasl
> + mingw-w64-x86_64-curl
> + mingw-w64-x86_64-gnutls
> + mingw-w64-x86_64-zstd"
> + script:
> + - mkdir build
> + - cd build
> + - ../configure --python=python3 --enable-werror --ninja=ninja
> --disable-pie
You shouldn't need --disable-pie anymore, as this is merged:
commit fb648e9cacf4209ddaa8ee67d1a87a9b78a001c6
Author: Daniel P. Berrangé <berrange@redhat.com>
Date: Mon Aug 24 17:31:09 2020 +0100
configure: default to PIE disabled on Windows platforms
If Windows EXE files are built with -pie/-fpie they will fail to
launch. Historically QEMU defaulted to disabling PIE for Windows,
but this setting was accidentally lost when the configure summary
text was removed in
commit f9332757898a764d85e19d339ec421236e885b68
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: Mon Feb 3 13:28:38 2020 +0100
meson: move summary to meson.build
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
IIUC, the --enable-werror is present by default too thanks to this code
snippet:
if test -z "$werror" ; then
if test -e "$source_path/.git" && \
{ test "$linux" = "yes" || test "$mingw32" = "yes"; }; then
werror="yes"
else
werror="no"
fi
fi
If you remove the --disable-pie && --enable-werror args then you can add
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
- [PATCH v4 01/24] file-win32: Fix "locking" option, (continued)
- [PATCH v4 01/24] file-win32: Fix "locking" option, Yonggang Luo, 2020/09/09
- [PATCH v4 02/24] rcu: Implement drain_call_rcu, Yonggang Luo, 2020/09/09
- [PATCH v4 04/24] ci: fixes msys2 build by upgrading capstone to 4.0.2, Yonggang Luo, 2020/09/09
- [PATCH v4 05/24] configure: Fixes ncursesw detection under msys2/mingw and enable curses, Yonggang Luo, 2020/09/09
- [PATCH v4 06/24] win32: Simplify gmtime_r detection direct base on _POSIX_THREAD_SAFE_FUNCTIONS., Yonggang Luo, 2020/09/09
- [PATCH v4 15/24] vmstate: Fixes test-vmstate.c on msys2/mingw, Yonggang Luo, 2020/09/09
- [PATCH v4 16/24] cirrus: Building freebsd in a single short, Yonggang Luo, 2020/09/09
- [PATCH v4 20/24] tests: Fixes test-io-channel-file by mask only owner file state mask bits, Yonggang Luo, 2020/09/09
- [PATCH v4 23/24] rcu: fixes test-logging.c by call drain_call_rcu before rmdir_full, Yonggang Luo, 2020/09/09
- [PATCH v4 24/24] ci: Enable msys2 ci in cirrus, Yonggang Luo, 2020/09/09
- Re: [PATCH v4 24/24] ci: Enable msys2 ci in cirrus,
Daniel P . Berrangé <=