From b5974f22aeefe67b7752533ed771fa281e578c7c Mon Sep 17 00:00:00 2001 From: eabdullin Date: Wed, 15 May 2024 07:51:50 +0000 Subject: [PATCH] Import from AlmaLinux stable repository --- .gitignore | 2 +- .mingw-qemu-ga-win.metadata | 2 +- SOURCES/0001-Change-Version.patch | 4 +- ...igure-Add-cross-prefix-for-widl-tool.patch | 46 -------- SOURCES/0001-qga-Log-version-on-start.patch | 25 ----- ...to-generated-headers-to-dependencies.patch | 25 ----- ...se-a-proper-function-for-free-memory.patch | 33 ------ ...uild-qga-vss.tlb-when-qga-vss.dll-is.patch | 32 ------ SPECS/mingw-qemu-ga-win.spec | 101 ++++++++++++------ 9 files changed, 75 insertions(+), 195 deletions(-) delete mode 100644 SOURCES/0001-configure-Add-cross-prefix-for-widl-tool.patch delete mode 100644 SOURCES/0001-qga-Log-version-on-start.patch delete mode 100644 SOURCES/0001-qga-vss-Add-auto-generated-headers-to-dependencies.patch delete mode 100644 SOURCES/0001-qga-vss-Use-a-proper-function-for-free-memory.patch delete mode 100644 SOURCES/0002-qga-vss-always-build-qga-vss.tlb-when-qga-vss.dll-is.patch diff --git a/.gitignore b/.gitignore index 981c174..3c156a4 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/qemu-7.0.0.tar.bz2 +SOURCES/qemu-8.2.0.tar.bz2 diff --git a/.mingw-qemu-ga-win.metadata b/.mingw-qemu-ga-win.metadata index 7b6b8d2..f93aa6d 100644 --- a/.mingw-qemu-ga-win.metadata +++ b/.mingw-qemu-ga-win.metadata @@ -1 +1 @@ -d56af4231110566e7eabe44ed16c41de58d6435b SOURCES/qemu-7.0.0.tar.bz2 +c654f3f1fef5c704a8bb5147e37c6d26d0b835bf SOURCES/qemu-8.2.0.tar.bz2 diff --git a/SOURCES/0001-Change-Version.patch b/SOURCES/0001-Change-Version.patch index 9795475..6c5adf1 100644 --- a/SOURCES/0001-Change-Version.patch +++ b/SOURCES/0001-Change-Version.patch @@ -13,7 +13,7 @@ index 91ff57278e..586de296f5 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ --7.0.0 -+104.0.2 +-8.2.0 ++107.0.1 -- 2.17.2 diff --git a/SOURCES/0001-configure-Add-cross-prefix-for-widl-tool.patch b/SOURCES/0001-configure-Add-cross-prefix-for-widl-tool.patch deleted file mode 100644 index e5c4529..0000000 --- a/SOURCES/0001-configure-Add-cross-prefix-for-widl-tool.patch +++ /dev/null @@ -1,46 +0,0 @@ -From c0d0aa99062d0084c2c24ebd16fd59ce1819277b Mon Sep 17 00:00:00 2001 -From: Konstantin Kostiuk -Date: Thu, 28 Apr 2022 16:37:38 +0000 -Subject: [PATCH 1/2] configure: Add cross prefix for widl tool - -The mingw-w64-tool package in Fedora provides widl tool with a -cross prefix, so adds it automatically for cross builds. - -WIDL env can be used to redefine the path to tool. -The same behavior as with windres. - -Signed-off-by: Konstantin Kostiuk ---- - configure | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/configure b/configure -index 59c43bea05..8b775492d0 100755 ---- a/configure -+++ b/configure -@@ -415,6 +415,7 @@ ranlib="${RANLIB-${cross_prefix}ranlib}" - nm="${NM-${cross_prefix}nm}" - smbd="$SMBD" - strip="${STRIP-${cross_prefix}strip}" -+widl="${WIDL-${cross_prefix}widl}" - windres="${WINDRES-${cross_prefix}windres}" - pkg_config_exe="${PKG_CONFIG-${cross_prefix}pkg-config}" - query_pkg_config() { -@@ -2786,6 +2787,7 @@ if test "$skip_meson" = no; then - echo "sdl2-config = [$(meson_quote $sdl2_config)]" >> $cross - fi - echo "strip = [$(meson_quote $strip)]" >> $cross -+ echo "widl = [$(meson_quote $widl)]" >> $cross - echo "windres = [$(meson_quote $windres)]" >> $cross - if test "$cross_compile" = "yes"; then - cross_arg="--cross-file config-meson.cross" -@@ -2907,6 +2909,7 @@ preserve_env PYTHON - preserve_env SDL2_CONFIG - preserve_env SMBD - preserve_env STRIP -+preserve_env WIDL - preserve_env WINDRES - - printf "exec" >>config.status --- -2.25.1 diff --git a/SOURCES/0001-qga-Log-version-on-start.patch b/SOURCES/0001-qga-Log-version-on-start.patch deleted file mode 100644 index 49df653..0000000 --- a/SOURCES/0001-qga-Log-version-on-start.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 66fc295c9a2e29d04fafe729a384e321a347eca3 Mon Sep 17 00:00:00 2001 -From: Kostiantyn Kostiuk -Date: Tue, 20 Jul 2021 17:19:34 +0000 -Subject: [PATCH 1/2] qga: Log version on start - -Signed-off-by: Kostiantyn Kostiuk ---- - qga/main.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/qga/main.c b/qga/main.c -index dea6a3aa64..bce93dfdd0 100644 ---- a/qga/main.c -+++ b/qga/main.c -@@ -1538,6 +1538,7 @@ int main(int argc, char **argv) - goto end; - } - -+ slog("Guest agent version %s started", QEMU_VERSION); - #ifdef _WIN32 - if (config->daemonize) { - SERVICE_TABLE_ENTRY service_table[] = { --- -2.25.1 - diff --git a/SOURCES/0001-qga-vss-Add-auto-generated-headers-to-dependencies.patch b/SOURCES/0001-qga-vss-Add-auto-generated-headers-to-dependencies.patch deleted file mode 100644 index 58bc425..0000000 --- a/SOURCES/0001-qga-vss-Add-auto-generated-headers-to-dependencies.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 0b188ab30b32fc16adbcb2da768edfa0ec1fc805 Mon Sep 17 00:00:00 2001 -From: Konstantin Kostiuk -Date: Thu, 12 May 2022 15:41:43 +0000 -Subject: [PATCH] qga-vss: Add auto generated headers to dependencies - -Signed-off-by: Konstantin Kostiuk ---- - qga/vss-win32/meson.build | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/qga/vss-win32/meson.build b/qga/vss-win32/meson.build -index 26c5dd6e0e..9483ccd3b8 100644 ---- a/qga/vss-win32/meson.build -+++ b/qga/vss-win32/meson.build -@@ -7,7 +7,7 @@ link_args = cc.get_supported_link_arguments([ - - qga_vss = shared_module( - 'qga-vss', -- ['requester.cpp', 'provider.cpp', 'install.cpp'], -+ ['requester.cpp', 'provider.cpp', 'install.cpp', genh], - name_prefix: '', - cpp_args: ['-Wno-unknown-pragmas', '-Wno-delete-non-virtual-dtor', '-Wno-non-virtual-dtor'], - link_args: link_args, --- -2.25.1 diff --git a/SOURCES/0001-qga-vss-Use-a-proper-function-for-free-memory.patch b/SOURCES/0001-qga-vss-Use-a-proper-function-for-free-memory.patch deleted file mode 100644 index 6bcbaea..0000000 --- a/SOURCES/0001-qga-vss-Use-a-proper-function-for-free-memory.patch +++ /dev/null @@ -1,33 +0,0 @@ -From 4ee7074cdf48e77886637e12f148e267329978d3 Mon Sep 17 00:00:00 2001 -From: Konstantin Kostiuk -Date: Thu, 12 May 2022 15:43:37 +0000 -Subject: [PATCH] qga-vss: Use a proper function for free memory - -volume_name_wchar is allocated by 'void* operator new [](long long unsigned int) - -Signed-off-by: Konstantin Kostiuk ---- - qga/vss-win32/requester.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/qga/vss-win32/requester.cpp b/qga/vss-win32/requester.cpp -index 4513324dd2..b371affeab 100644 ---- a/qga/vss-win32/requester.cpp -+++ b/qga/vss-win32/requester.cpp -@@ -354,12 +354,12 @@ void requester_freeze(int *num_vols, void *mountpoints, ErrorSet *errset) - if (FAILED(hr)) { - err_set(errset, hr, "failed to add %S to snapshot set", - volume_name_wchar); -- delete volume_name_wchar; -+ delete[] volume_name_wchar; - goto out; - } - num_mount_points++; - -- delete volume_name_wchar; -+ delete[] volume_name_wchar; - } - - if (num_mount_points == 0) { --- -2.25.1 diff --git a/SOURCES/0002-qga-vss-always-build-qga-vss.tlb-when-qga-vss.dll-is.patch b/SOURCES/0002-qga-vss-always-build-qga-vss.tlb-when-qga-vss.dll-is.patch deleted file mode 100644 index 6ffff1e..0000000 --- a/SOURCES/0002-qga-vss-always-build-qga-vss.tlb-when-qga-vss.dll-is.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 338883766e88555287c3685c55a909eac5ab0f64 Mon Sep 17 00:00:00 2001 -From: Konstantin Kostiuk -Date: Thu, 28 Apr 2022 16:41:13 +0000 -Subject: [PATCH 2/2] qga-vss: always build qga-vss.tlb when qga-vss.dll is - built - -Signed-off-by: Konstantin Kostiuk ---- - qga/vss-win32/meson.build | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/qga/vss-win32/meson.build b/qga/vss-win32/meson.build -index 71c50d0866..26c5dd6e0e 100644 ---- a/qga/vss-win32/meson.build -+++ b/qga/vss-win32/meson.build -@@ -23,8 +23,6 @@ qga_vss = shared_module( - ] - ) - --all_qga += qga_vss -- - if midl.found() - gen_tlb = custom_target('gen-tlb', - input: 'qga-vss.idl', -@@ -36,3 +34,5 @@ else - output: 'qga-vss.tlb', - command: [widl, '-t', '@INPUT@', '-o', '@OUTPUT@']) - endif -+ -+all_qga += [ qga_vss, gen_tlb ] --- -2.25.1 diff --git a/SPECS/mingw-qemu-ga-win.spec b/SPECS/mingw-qemu-ga-win.spec index cd9616e..451e6b6 100644 --- a/SPECS/mingw-qemu-ga-win.spec +++ b/SPECS/mingw-qemu-ga-win.spec @@ -1,44 +1,50 @@ %{?mingw_package_header} %define with_vss 1 -%define qemu_version 7.0.0 +%define qemu_version 8.2.0 %define ga_manufacturer "RedHat" %define ga_distro "RHEL" Name: mingw-qemu-ga-win -Version: 104.0.2 +Version: 107.0.1 Release: 1%{?dist} Summary: Qemus Guest agent for Windows Group: System Environment/Daemons -License: GPLv2+ and LGPLv2+ and BSD +License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND FSFAP AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-2.0-or-later WITH GCC-exception-2.0 AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only and LGPL-2.1-or-later AND MIT and LicenseRef-Fedora-Public-Domain and CC-BY-3.0 URL: http://www.qemu.org/ -Requires(post): system-units +Requires(post): systemd-units Requires(preun): systemd-units Requires(postun): systemd-units Source0: http://wiki.qemu.org/download/qemu-%{qemu_version}.tar.bz2 Patch0001: 0001-Change-Version.patch -Patch0002: 0001-qga-Log-version-on-start.patch -Patch0003: 0001-configure-Add-cross-prefix-for-widl-tool.patch -Patch0004: 0002-qga-vss-always-build-qga-vss.tlb-when-qga-vss.dll-is.patch -Patch0005: 0001-qga-vss-Add-auto-generated-headers-to-dependencies.patch -Patch0006: 0001-qga-vss-Use-a-proper-function-for-free-memory.patch BuildArch: noarch +Provides: bundled(mingw-gcc) +Provides: bundled(mingw-gcc-c++) +Provides: bundled(mingw-gettext) +Provides: bundled(mingw-glib2) +Provides: bundled(mingw-pcre) +Provides: qemu-ga-win = %{version} +Obsoletes: qemu-ga-win < 105.0.0 +# based on https://gitlab.com/qemu-project/qemu/-/blob/v7.1.0/qga/installer/qemu-ga.wxs + BuildRequires: libtool BuildRequires: zlib-devel BuildRequires: glib2-devel BuildRequires: python3-devel BuildRequires: gettext BuildRequires: gettext-devel -BuildRequires: mingw32-pixman -BuildRequires: mingw64-pixman +BuildRequires: mingw32-pixman >= 0.42.2 +BuildRequires: mingw64-pixman >= 0.42.2 BuildRequires: mingw32-gcc >= 7.4.0 +BuildRequires: mingw32-gcc-c++ >= 7.4.0 BuildRequires: mingw64-gcc >= 7.4.0 -BuildRequires: mingw32-glib2 -BuildRequires: mingw64-glib2 +BuildRequires: mingw64-gcc-c++ >= 7.4.0 +BuildRequires: mingw32-glib2 >= 2.78.0 +BuildRequires: mingw64-glib2 >= 2.78.0 BuildRequires: mingw64-headers >= 10.0.0 BuildRequires: mingw32-headers >= 10.0.0 BuildRequires: mingw-w64-tools >= 10.0.0 @@ -47,6 +53,8 @@ BuildRequires: meson BuildRequires: ninja-build %description +Qemu Guest Agent for Windows. + qemu-kvm is an open source virtualizer that provides hardware emulation for the KVM hypervisor. @@ -55,20 +63,9 @@ with the host over a virtio-serial channel named "org.qemu.guest_agent.0" This package does not need to be installed on the host OS. -%package -n qemu-ga-win -Summary: %{summary} - -%description -n qemu-ga-win -Qemu Guest Agent for Windows - %prep %setup -q -n qemu-%{qemu_version} %patch0001 -p1 -%patch0002 -p1 -%patch0003 -p1 -%patch0004 -p1 -%patch0005 -p1 -%patch0006 -p1 %build @@ -82,9 +79,10 @@ export QEMU_GA_VERSION="%{version}" %{mingw32_env} ./configure \ --disable-docs \ - --disable-zlib-test \ - --target-list=x86_64-softmmu \ + --disable-system \ + --disable-user \ --cross-prefix=i686-w64-mingw32- \ + --enable-guest-agent \ --enable-guest-agent-msi \ %if %{with_vss} --enable-qga-vss \ @@ -94,16 +92,17 @@ export QEMU_GA_VERSION="%{version}" make -j$(nproc) qemu-ga mkdir -p $RPM_BUILD_ROOT%{mingw32_bindir} -# cp build/qga/qemu-ga.exe $RPM_BUILD_ROOT%{mingw32_bindir} +#cp build/qga/qemu-ga.exe $RPM_BUILD_ROOT%{mingw32_bindir} cp build/qga/qemu-ga-i386.msi $RPM_BUILD_ROOT%{mingw32_bindir} #Build for Win64 %{mingw64_env} ./configure \ --disable-docs \ - --disable-zlib-test \ - --target-list=x86_64-softmmu \ + --disable-system \ + --disable-user \ --cross-prefix=x86_64-w64-mingw32- \ + --enable-guest-agent \ --enable-guest-agent-msi \ %if %{with_vss} --enable-qga-vss \ @@ -117,12 +116,54 @@ mkdir -p $RPM_BUILD_ROOT%{mingw64_bindir} cp build/qga/qemu-ga-x86_64.msi $RPM_BUILD_ROOT%{mingw64_bindir} -%files -n qemu-ga-win +%files %defattr(-,root,root) %{mingw32_bindir}/qemu-ga* %{mingw64_bindir}/qemu-ga* %changelog +* Mon Jan 15 2024 Konstantin Kostiuk 107.0.1 +- Set version to 107.0.1 +- RHEL-21655 - Fix mingw-qemu-ga-win licenses + +* Mon Jan 15 2024 Konstantin Kostiuk 107.0.0 +- Set version to 107.0.0 +- RHEL-15491 - Rebase qemu-ga to 8.2.0 + +* Mon Jul 10 2023 Konstantin Kostiuk 106.0.1 +- Set version to 106.0.1 +- RHELPLAN-147763 - [mingw-qemu-ga-win] VSS DLL: Add logging mechanism +- RHEL-581 - Use the SPDX vocabulary to specify the license + +* Sun Apr 23 2023 Konstantin Kostiuk 106.0.0 +- Set version to 106.0.0 +- RHEL-408 - Add provides, obsoletes for mingw-qemu-ga-win +- RHEL-385 - Rebase mingw-qemu-ga-win to QEMU 8.0 + +* Wed Feb 15 2023 Konstantin Kostiuk 105.0.4 +- Set version to 105.0.4 +- BZ#2167436 + +* Mon Dec 26 2022 Konstantin Kostiuk 105.0.3 +- Set version to 105.0.3 +- BZ#2090250 - mingw-qemu-ga-win: Add Provides: bundled() to rpm packages [rhel-9] + +* Tue Dec 6 2022 Konstantin Kostiuk 105.0.2 +- Set version to 105.0.2 +- Fix wrong requires +- Fix missing patch0002 +- Remove extra Summary +- BZ#2090333 - [mingw-qemu-ga-win] qga command 'guest-get-fsinfo' can't query bus-type of USB + +* Tue Dec 6 2022 Konstantin Kostiuk 105.0.1 +- Set version to 105.0.1 +- Remove redundant package +- BZ#2090333 - [mingw-qemu-ga-win] qga command 'guest-get-fsinfo' can't query bus-type of USB + +* Mon Oct 24 2022 Konstantin Kostiuk 105.0.0 +- Set version to 105.0.0 +- BZ#2137262 - qemu-ga-win: Rebase qemu-ga to 7.1.0 + * Tue May 17 2022 Konstantin Kostiuk 104.0.2 - Set version to 104.0.2 - BZ#2084608 - Fix mismatched allocation function