[PATCH v10 00/26] W32, W64 msys2/mingw patches

Yonggang Luo posted 26 patches 3 years, 7 months ago
Test docker-quick@centos7 failed
Test docker-mingw@fedora failed
Test checkpatch failed
Test FreeBSD failed
Failed in applying to current master (apply log)
.cirrus.yml                      | 97 +++++++++++++++++++++++---------
block/nfs.c                      | 37 +++++++++---
capstone                         |  2 +-
configure                        | 61 ++++++--------------
include/qemu/osdep.h             |  3 +-
include/qemu/rcu.h               |  1 +
include/sysemu/os-win32.h        |  9 ++-
meson                            |  2 +-
meson.build                      |  6 --
tests/crypto-tls-psk-helpers.c   |  6 +-
tests/crypto-tls-x509-helpers.c  |  6 +-
tests/crypto-tls-x509-helpers.h  |  5 +-
tests/qapi-schema/meson.build    |  2 +-
tests/test-char.c                | 27 +++++----
tests/test-crypto-tlscredsx509.c | 47 ++++++++--------
tests/test-crypto-tlssession.c   | 64 ++++++++++++---------
tests/test-io-channel-file.c     | 12 +++-
tests/test-io-channel-socket.c   |  2 +
tests/test-io-channel-tls.c      | 49 +++++++++-------
tests/test-logging.c             |  6 +-
tests/test-qdev-global-props.c   |  9 ++-
tests/test-replication.c         | 22 ++++++--
tests/test-util-sockets.c        |  6 +-
tests/test-vmstate.c             |  3 +-
ui/curses.c                      | 14 ++---
util/aio-win32.c                 | 12 +++-
util/osdep.c                     | 16 ++++++
util/oslib-win32.c               | 78 ++++++++++++++++++++++++-
util/rcu.c                       | 55 ++++++++++++++++++
29 files changed, 459 insertions(+), 200 deletions(-)
[PATCH v10 00/26] W32, W64 msys2/mingw patches
Posted by Yonggang Luo 3 years, 7 months ago
V9-V10
* gcrypt: test_tls_psk_init should write binary file instead text file.
  Split #include <glib/gstdio.h> out, that line not belong this patch

* tests: Enable crypto tests under msys2/mingw
  move qemu_socketpair into oslib-win32.c and rename to socketpair
  move qemu_link into osdep.c
  Fixes code style warning

* tests: Fixes test-io-channel-file by mask only owner file state mask bits
  Update comment place

* ci: Enable msys2 ci in cirrus
  Fixes misleading error message

Fixes all checkpatch error messages

V8-V9

* ci: Enable msys2 ci in cirrus
  do not install libnfs, libcapstone and jemalloc
  ident lines properly
  Do not install libnfs when the add the msys2 ci,

* Revert "configure: add --ninja option"
  Skip this revision

* block: Fixes nfs compiling error on msys2/mingw
  Use typedef long long blkcnt_t; for libnfs on msys2/mingw
  for futher implemenation, still disable nfs_get_allocated_file_size
  on win32 as it not working yet, but preserve the possibility implemenation
  it in futher

* gcrypt: test_tls_psk_init should write binary file instead text file.
  only fixes the file open mode parameter

* osdep: file locking functions are not available on Win32:
  Reword with "Do not declare the following locking functions on Win32:"

* meson: Use -b to ignore CR vs. CR-LF issues on Windows
  Reword of commit message

* tests: Enable crypto tests under msys2/mingw
  Reimplement qemu_socketpair in a simpler way. without thirdparty code

* block: enable libnfs on msys2/mingw in cirrus.yml
  New commit

* tests: disable /char/stdio/* tests in test-char.c on win32
  Needs review

* tests: fixes aio-win32 about aio_remove_fd_handler, get it consistence with=
 aio-posix.c
  Needs review

* rcu: fixes test-logging.c by call drain_call_rcu before rmdir_full
  Needs review

It first introduce msys2 CI on cirrus by fixes nfs, capstone, curses and
disable partial test-char tests.
And then fixes all unit tests failure on msys2/mingw
This fixes the reviews suggested in the mailling list
All cirrus CI are passed

Maxim Levitsky (1):
  rcu: Implement drain_call_rcu

Yonggang Luo (25):
  ci: fixes msys2 build by upgrading capstone to 4.0.2
  configure: Fixes ncursesw detection under msys2/mingw and enable
    curses
  win32: Simplify gmtime_r detection direct base on
    _POSIX_THREAD_SAFE_FUNCTIONS.
  curses: Fixes curses compiling errors.
  tests: disable /char/stdio/* tests in test-char.c on win32
  tests: Fixes test-replication.c on msys2/mingw.
  tests: test-replication disable /replication/secondary/* on
    msys2/mingw.
  osdep: file locking functions are not available on Win32
  meson: Use -b to ignore CR vs. CR-LF issues on Windows
  gcrypt: test_tls_psk_init should write binary file instead text file.
  tests: Enable crypto tests under msys2/mingw
  meson: remove empty else and duplicated gio deps
  vmstate: Fixes test-vmstate.c on msys2/mingw
  cirrus: Building freebsd in a single short
  tests: Convert g_free to g_autofree macro in test-logging.c
  tests: Fixes test-io-channel-socket.c tests under msys2/mingw
  tests: fixes aio-win32 about aio_remove_fd_handler, get it consistence
    with aio-posix.c
  tests: Fixes test-io-channel-file by mask only owner file state mask
    bits
  tests: fix test-util-sockets.c
  tests: Fixes test-qdev-global-props.c
  rcu: fixes test-logging.c by call drain_call_rcu before rmdir_full
  meson: upgrade meson for execute custom ninjatool under msys2 properly
  ci: Enable msys2 ci in cirrus
  block: Fixes nfs compiling error on msys2/mingw
  block: enable libnfs on msys2/mingw in cirrus.yml

 .cirrus.yml                      | 97 +++++++++++++++++++++++---------
 block/nfs.c                      | 37 +++++++++---
 capstone                         |  2 +-
 configure                        | 61 ++++++--------------
 include/qemu/osdep.h             |  3 +-
 include/qemu/rcu.h               |  1 +
 include/sysemu/os-win32.h        |  9 ++-
 meson                            |  2 +-
 meson.build                      |  6 --
 tests/crypto-tls-psk-helpers.c   |  6 +-
 tests/crypto-tls-x509-helpers.c  |  6 +-
 tests/crypto-tls-x509-helpers.h  |  5 +-
 tests/qapi-schema/meson.build    |  2 +-
 tests/test-char.c                | 27 +++++----
 tests/test-crypto-tlscredsx509.c | 47 ++++++++--------
 tests/test-crypto-tlssession.c   | 64 ++++++++++++---------
 tests/test-io-channel-file.c     | 12 +++-
 tests/test-io-channel-socket.c   |  2 +
 tests/test-io-channel-tls.c      | 49 +++++++++-------
 tests/test-logging.c             |  6 +-
 tests/test-qdev-global-props.c   |  9 ++-
 tests/test-replication.c         | 22 ++++++--
 tests/test-util-sockets.c        |  6 +-
 tests/test-vmstate.c             |  3 +-
 ui/curses.c                      | 14 ++---
 util/aio-win32.c                 | 12 +++-
 util/osdep.c                     | 16 ++++++
 util/oslib-win32.c               | 78 ++++++++++++++++++++++++-
 util/rcu.c                       | 55 ++++++++++++++++++
 29 files changed, 459 insertions(+), 200 deletions(-)

--=20
2.28.0.windows.1


Re: [PATCH v10 00/26] W32, W64 msys2/mingw patches
Posted by Thomas Huth 3 years, 7 months ago
On 15/09/2020 19.12, Yonggang Luo wrote:
[...]
> It first introduce msys2 CI on cirrus by fixes nfs, capstone, curses and
> disable partial test-char tests.
> And then fixes all unit tests failure on msys2/mingw
> This fixes the reviews suggested in the mailling list
> All cirrus CI are passed

Thanks a lot for your work, I've added most of your patches to my latest
"testing" pull request now, so that we should get basic test coverage on
msys2 now in the Cirrus-CI if it gets merged.

I skipped the NFS, capstone, test-char and crypto patches for now (and
replaced them with older versions of your patches where you've disabled
them) - I think these patches still need some more review / work and
then should go through the trees of the corresponding maintainers later.

 Cheers,
  Thomas


Re: [PATCH v10 00/26] W32, W64 msys2/mingw patches
Posted by 罗勇刚 (Yonggang Luo) 3 years, 7 months ago
On Wed, Sep 16, 2020 at 7:52 PM Thomas Huth <thuth@redhat.com> wrote:
>
> On 15/09/2020 19.12, Yonggang Luo wrote:
> [...]
> > It first introduce msys2 CI on cirrus by fixes nfs, capstone, curses and
> > disable partial test-char tests.
> > And then fixes all unit tests failure on msys2/mingw
> > This fixes the reviews suggested in the mailling list
> > All cirrus CI are passed
>
> Thanks a lot for your work, I've added most of your patches to my latest
> "testing" pull request now, so that we should get basic test coverage on
> msys2 now in the Cirrus-CI if it gets merged.
>
> I skipped the NFS, capstone, test-char and crypto patches for now (and
> replaced them with older versions of your patches where you've disabled
> them) - I think these patches still need some more review / work and
> then should go through the trees of the corresponding maintainers later.
Happy to see, once your branch merged, I'll rebase these patches and resend
them
separately
>
>  Cheers,
>   Thomas
>


--
         此致
礼
罗勇刚
Yours
    sincerely,
Yonggang Luo