[PATCH v3 0/1] plugins: fix win plugin tests on cross compile

Greg Manning posted 1 patch 1 year ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20231109124326.21106-1-gmanning@rapitasystems.com
Maintainers: "Alex Bennée" <alex.bennee@linaro.org>, "Philippe Mathieu-Daudé" <philmd@linaro.org>, Thomas Huth <thuth@redhat.com>, Wainer dos Santos Moschetta <wainersm@redhat.com>, Beraldo Leal <bleal@redhat.com>, Alexandre Iooss <erdnaxe@crans.org>, Mahmoud Mandour <ma.mandourr@gmail.com>
.gitlab-ci.d/crossbuilds.yml | 2 +-
contrib/plugins/Makefile     | 2 +-
plugins/meson.build          | 2 +-
tests/plugin/meson.build     | 3 ++-
4 files changed, 5 insertions(+), 4 deletions(-)
[PATCH v3 0/1] plugins: fix win plugin tests on cross compile
Posted by Greg Manning 1 year ago
v1-v2: Added the signed-off-by line.
v2-v3: Fixed the issue reference.

Greg Manning (1):
  plugins: fix win plugin tests on cross compile

 .gitlab-ci.d/crossbuilds.yml | 2 +-
 contrib/plugins/Makefile     | 2 +-
 plugins/meson.build          | 2 +-
 tests/plugin/meson.build     | 3 ++-
 4 files changed, 5 insertions(+), 4 deletions(-)

-- 
2.42.0
Re: [PATCH v3 0/1] plugins: fix win plugin tests on cross compile
Posted by Alex Bennée 1 year ago
Greg Manning <gmanning@rapitasystems.com> writes:

> v1-v2: Added the signed-off-by line.
> v2-v3: Fixed the issue reference.
>
> Greg Manning (1):
>   plugins: fix win plugin tests on cross compile
>
>  .gitlab-ci.d/crossbuilds.yml | 2 +-
>  contrib/plugins/Makefile     | 2 +-
>  plugins/meson.build          | 2 +-
>  tests/plugin/meson.build     | 3 ++-
>  4 files changed, 5 insertions(+), 4 deletions(-)

Actually I'm still seeing failures:

  FAILED: qemu-system-aarch64.exe 
  x86_64-w64-mingw32-gcc -m64 -mcx16 @qemu-system-aarch64.exe.rsp
  /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: libcommon.fa.p/os-win32.c.obj: in function `set_dll_delaylink_hook':
  /builds/stsquad/qemu/build/../os-win32.c:83: undefined reference to `g_module_symbol'
  /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: /builds/stsquad/qemu/build/../os-win32.c:89: undefined reference to `g_module_symbol'
  collect2: error: ld returned 1 exit status
  [2104/3331] Linking target qemu-system-aarch64w.exe
  FAILED: qemu-system-aarch64w.exe 
  x86_64-w64-mingw32-gcc -m64 -mcx16 @qemu-system-aarch64w.exe.rsp
  /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: libcommon.fa.p/os-win32.c.obj: in function `set_dll_delaylink_hook':
  /builds/stsquad/qemu/build/../os-win32.c:83: undefined reference to `g_module_symbol'
  /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: /builds/stsquad/qemu/build/../os-win32.c:89: undefined reference to `g_module_symbol'
  collect2: error: ld returned 1 exit status
  [2105/3331] Compiling C object libqemu-loongarch64-softmmu.fa.p/hw_loongarch_virt.c.obj
  ninja: build stopped: subcommand failed.
  make: *** [Makefile:162: run-ninja] Error 1

Should I drop the other patch I grabbed:

  plugins: Move the windows linking function to qemu

?

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro
Re: [PATCH v3 0/1] plugins: fix win plugin tests on cross compile
Posted by Greg Manning 1 year ago
Alex Bennée <alex.bennee@linaro.org> writes:

> Greg Manning <gmanning@rapitasystems.com> writes:

> > v1-v2: Added the signed-off-by line.
> > v2-v3: Fixed the issue reference.
> >
> > Greg Manning (1):
> >   plugins: fix win plugin tests on cross compile
> >
> >  .gitlab-ci.d/crossbuilds.yml | 2 +-
> >  contrib/plugins/Makefile     | 2 +-
> >  plugins/meson.build          | 2 +-
> >  tests/plugin/meson.build     | 3 ++-
> >  4 files changed, 5 insertions(+), 4 deletions(-)

> Actually I'm still seeing failures:

>   FAILED: qemu-system-aarch64.exe
>   x86_64-w64-mingw32-gcc -m64 -mcx16 @qemu-system-aarch64.exe.rsp
>   /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: libcommon.fa.p/os-win32.c.obj: in function `set_dll_delaylink_hook':
>   /builds/stsquad/qemu/build/../os-win32.c:83: undefined reference to `g_module_symbol'
>   /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: /builds/stsquad/qemu/build/../os-win32.c:89: undefined reference to `g_module_symbol'
>   collect2: error: ld returned 1 exit status
>   [2104/3331] Linking target qemu-system-aarch64w.exe
>   FAILED: qemu-system-aarch64w.exe
>   x86_64-w64-mingw32-gcc -m64 -mcx16 @qemu-system-aarch64w.exe.rsp
>   /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: libcommon.fa.p/os-win32.c.obj: in function `set_dll_delaylink_hook':
>   /builds/stsquad/qemu/build/../os-win32.c:83: undefined reference to `g_module_symbol'
>   /usr/lib/gcc/x86_64-w64-mingw32/12.2.1/../../../../x86_64-w64-mingw32/bin/ld: /builds/stsquad/qemu/build/../os-win32.c:89: undefined reference to `g_module_symbol'
>   collect2: error: ld returned 1 exit status
>   [2105/3331] Compiling C object libqemu-loongarch64-softmmu.fa.p/hw_loongarch_virt.c.obj
>   ninja: build stopped: subcommand failed.
>   make: *** [Makefile:162: run-ninja] Error 1

Oh, that's weird. I can't immediately repro it on WSL. It reminds me of the thing
I had to do to get the plugins to compile - they needed glib passing to
the linker explicitly (in contrib/plugins/Makefile):

LDLIBS += $(shell $(PKG_CONFIG) --libs glib-2.0)

Greg.
Re: [PATCH v3 0/1] plugins: fix win plugin tests on cross compile
Posted by Paolo Bonzini 1 year ago
Il gio 9 nov 2023, 17:04 Alex Bennée <alex.bennee@linaro.org> ha scritto:

> Should I drop the other patch I grabbed:
>
>   plugins: Move the windows linking function to qemu
>

Yes, go ahead and drop it.

Paolo


> ?
>
> --
> Alex Bennée
> Virtualisation Tech Lead @ Linaro
>
>
Re: [PATCH v3 0/1] plugins: fix win plugin tests on cross compile
Posted by Alex Bennée 1 year ago
Greg Manning <gmanning@rapitasystems.com> writes:

> v1-v2: Added the signed-off-by line.
> v2-v3: Fixed the issue reference.
>
> Greg Manning (1):
>   plugins: fix win plugin tests on cross compile
>
>  .gitlab-ci.d/crossbuilds.yml | 2 +-
>  contrib/plugins/Makefile     | 2 +-
>  plugins/meson.build          | 2 +-
>  tests/plugin/meson.build     | 3 ++-
>  4 files changed, 5 insertions(+), 4 deletions(-)

Queued to for-8.2/random-fixes, thanks.

-- 
Alex Bennée
Virtualisation Tech Lead @ Linaro