qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package
@ 2015-05-06 11:57 Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 1/4] qemu-ga: adding vss-[un]install options Yossi Hindin
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Yossi Hindin @ 2015-05-06 11:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Yossi Hindin, mdroth

The second version of commits's set take into account Paolo Bonzini remarks.

Typo in WXS file fixed, QEMU GA-related CLI options renamed, '--enable-guest-agent-msi'/
'--disable-guest-agent-msi' processing logic changed so that MSI build is configured
by default, unless some prerequisite is missing and MinGW DLL path variable is computed
together with all QEMU GA MSI variables. 

Also, I've slightly changed Makefile structure so that if MSI build was not configured,
Makefile prints suitable message.


Yossi Hindin (4):
  qemu-ga: adding vss-[un]install options
  qemu-ga: debug printouts to help troubleshoot installation
  qemu-ga: Introduce Windows MSI script
  qemu-ga: Building Windows MSI installation with configure/Makefile

 Makefile                  |  24 +++++++-
 configure                 |  66 +++++++++++++++++++++
 qga/channel-win32.c       |   2 +-
 qga/commands-win32.c      |   1 +
 qga/installer/qemu-ga.wxs | 145 ++++++++++++++++++++++++++++++++++++++++++++++
 qga/main.c                |  10 +++-
 6 files changed, 245 insertions(+), 3 deletions(-)
 create mode 100644 qga/installer/qemu-ga.wxs

-- 
2.1.0

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

* [Qemu-devel] [Patch V2 1/4] qemu-ga: adding vss-[un]install options
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
@ 2015-05-06 11:57 ` Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 2/4] qemu-ga: debug printouts to help troubleshoot installation Yossi Hindin
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Yossi Hindin @ 2015-05-06 11:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Yossi Hindin, mdroth

Existing command line options include '-s install' and '-s uninstall'.
These options install/uninstall both Windows QEMU GA service
and optional VSS COM server. The QEMU GA Windows service allows
always-on serving guest agent's QMP commands and VSS COM server
enables guest agent integration with Volume Shadow Service.

This commit introdices new options '-s vss-install' and '-s vss-uninstall',
affecting only GA VSS COM server registration. The new options are useful
for registering and unregistering the COM server during MSI installation,
upgrade and uninstallation.

Signed-off-by: Yossi Hindin <yhindin@redhat.com>
---
 qga/main.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/qga/main.c b/qga/main.c
index 9939a2b..7e1e438 100644
--- a/qga/main.c
+++ b/qga/main.c
@@ -211,7 +211,7 @@ static void usage(const char *cmd)
 "  -V, --version     print version information and exit\n"
 "  -d, --daemonize   become a daemon\n"
 #ifdef _WIN32
-"  -s, --service     service commands: install, uninstall\n"
+"  -s, --service     service commands: install, uninstall, vss-install, vss-uninstall\n"
 #endif
 "  -b, --blacklist   comma-separated list of RPCs to disable (no spaces, \"?\"\n"
 "                    to list available RPCs)\n"
@@ -1036,6 +1036,14 @@ int main(int argc, char **argv)
             } else if (strcmp(service, "uninstall") == 0) {
                 ga_uninstall_vss_provider();
                 return ga_uninstall_service();
+            } else if (strcmp(service, "vss-install") == 0) {
+                if (ga_install_vss_provider()) {
+                    return EXIT_FAILURE;
+                }
+                return EXIT_SUCCESS;
+            } else if (strcmp(service, "vss-uninstall") == 0) {
+                ga_uninstall_vss_provider();
+                return EXIT_SUCCESS;
             } else {
                 printf("Unknown service command.\n");
                 return EXIT_FAILURE;
-- 
2.1.0

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

* [Qemu-devel] [Patch V2 2/4] qemu-ga: debug printouts to help troubleshoot installation
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 1/4] qemu-ga: adding vss-[un]install options Yossi Hindin
@ 2015-05-06 11:57 ` Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 3/4] qemu-ga: Introduce Windows MSI script Yossi Hindin
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Yossi Hindin @ 2015-05-06 11:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Yossi Hindin, mdroth

Debug printouts extended, helps installation troubleshooting

Signed-off-by: Yossi Hindin <yhindin@redhat.com>
---
 qga/channel-win32.c  | 2 +-
 qga/commands-win32.c | 1 +
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/qga/channel-win32.c b/qga/channel-win32.c
index 0d5e5f5..04fa5e4 100644
--- a/qga/channel-win32.c
+++ b/qga/channel-win32.c
@@ -306,7 +306,7 @@ static gboolean ga_channel_open(GAChannel *c, GAChannelMethod method,
                            OPEN_EXISTING,
                            FILE_FLAG_NO_BUFFERING | FILE_FLAG_OVERLAPPED, NULL);
     if (c->handle == INVALID_HANDLE_VALUE) {
-        g_critical("error opening path");
+        g_critical("error opening path %s", newpath);
         return false;
     }
 
diff --git a/qga/commands-win32.c b/qga/commands-win32.c
index 3ef0549..d0aaec7 100644
--- a/qga/commands-win32.c
+++ b/qga/commands-win32.c
@@ -721,6 +721,7 @@ GList *ga_command_blacklist_init(GList *blacklist)
     }
 
     if (!vss_init(true)) {
+        g_debug("vss_init failed, vss commands are going to be disabled");
         const char *list[] = {
             "guest-get-fsinfo", "guest-fsfreeze-status",
             "guest-fsfreeze-freeze", "guest-fsfreeze-thaw", NULL};
-- 
2.1.0

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

* [Qemu-devel] [Patch V2 3/4] qemu-ga: Introduce Windows MSI script
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 1/4] qemu-ga: adding vss-[un]install options Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 2/4] qemu-ga: debug printouts to help troubleshoot installation Yossi Hindin
@ 2015-05-06 11:57 ` Yossi Hindin
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 4/4] qemu-ga: Building Windows MSI installation with configure/Makefile Yossi Hindin
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 8+ messages in thread
From: Yossi Hindin @ 2015-05-06 11:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Yossi Hindin, mdroth

The script enables building Windows MSI installation package on Linux with wixl tool.

Signed-off-by: Yossi Hindin <yhindin@redhat.com>
---
 qga/installer/qemu-ga.wxs | 145 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 145 insertions(+)
 create mode 100644 qga/installer/qemu-ga.wxs

diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs
new file mode 100644
index 0000000..2c43f1b
--- /dev/null
+++ b/qga/installer/qemu-ga.wxs
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
+  <?ifndef env.QEMU_GA_VERSION ?>
+    <?error Environment variable QEMU_GA_VERSION undefined?>
+  <?endif?>
+
+  <?ifndef env.QEMU_GA_DISTRO ?>
+    <?error Environment variable QEMU_GA_DISTRO undefined?>
+  <?endif?>
+
+  <?ifndef env.QEMU_GA_MANUFACTURER ?>
+    <?error Environment variable QEMU_GA_MANUFACTURER undefined?>
+  <?endif?>
+
+  <?ifndef var.Arch?>
+    <?error Define Arch to 32 or 64?>
+  <?endif?>
+
+  <?ifndef var.Mingw_bin?>
+    <?if $(var.Arch) = "64"?>
+      <?define Mingw_bin=/usr/x86_64-w64-mingw32/sys-root/mingw/bin ?>
+    <?endif?>
+    <?if $(var.Arch) = "32"?>
+      <?define Mingw_bin=/usr/i686-w64-mingw32/sys-root/mingw/bin ?>
+    <?endif?>
+  <?endif?>
+
+  <?if $(var.Arch) = "64"?>
+    <?define ArchLib=libgcc_s_seh-1.dll?>
+    <?define GaProgramFilesFolder="ProgramFiles64Folder" ?>
+  <?endif?>
+
+  <?if $(var.Arch) = "32"?>
+    <?define ArchLib=libgcc_s_sjlj-1.dll?>
+    <?define GaProgramFilesFolder="ProgramFilesFolder" ?>
+  <?endif?>
+
+  <?ifndef var.ArchLib ?>
+    <?error Unexpected Arch value $(var.Arch)?>
+  <?endif?>
+
+  <Product
+    Name="QEMU guest agent"
+    Id="*"
+    UpgradeCode="{EB6B8302-C06E-4bec-ADAC-932C68A3A98D}"
+    Manufacturer="$(env.QEMU_GA_MANUFACTURER)"
+    Version="$(env.QEMU_GA_VERSION)"
+    Language="1033">
+    <?if $(var.Arch) = 32 ?>
+    <Condition Message="Error: 32-bit version of Qemu GA can not be installed on 64-bit Windows.">NOT VersionNT64</Condition>
+    <?endif?>
+    <Package
+      Manufacturer="$(env.QEMU_GA_MANUFACTURER)"
+      InstallerVersion="200"
+      Languages="1033"
+      Compressed="yes"
+      InstallScope="perMachine"
+      />
+    <Media Id="1" Cabinet="qemu_ga.$(env.QEMU_GA_VERSION).cab" EmbedCab="yes" />
+    <Property Id="WHSLogo">1</Property>
+    <Property Id="PREVIOUSVERSIONSINSTALLED" />
+    <Upgrade Id="{EB6B8302-C06E-4bec-ADAC-932C68A3A98D}">
+      <UpgradeVersion
+        Minimum="1.0.0.0" Maximum="$(env.QEMU_GA_VERSION)"
+        Property="PREVIOUSVERSIONSINSTALLED"
+        IncludeMinimum="yes" IncludeMaximum="no" />
+    </Upgrade>
+
+    <Directory Id="TARGETDIR" Name="SourceDir">
+      <Directory Id="$(var.GaProgramFilesFolder)" Name="QEMU Guest Agent">
+        <Directory Id="qemu_ga_directory" Name="Qemu-ga">
+          <Component Id="qemu_ga" Guid="{908B7199-DE2A-4dc6-A8D0-27A5AE444FEA}">
+            <File Id="qemu_ga.exe" Name="qemu-ga.exe" Source="../../qemu-ga.exe" KeyPath="yes" DiskId="1"/>
+            <?ifdef var.InstallVss ?>
+            <File Id="qga_vss.dll" Name="qga-vss.dll" Source="../vss-win32/qga-vss.dll" KeyPath="no" DiskId="1"/>
+            <File Id="qga_vss.tlb" Name="qga-vss.tlb" Source="../vss-win32/qga-vss.tlb" KeyPath="no" DiskId="1"/>
+            <?endif?>
+            <File Id="iconv.dll" Name="iconv.dll" Source="$(var.Mingw_bin)/iconv.dll" KeyPath="no" DiskId="1"/>
+            <File Id="libgcc_arch_lib" Name="$(var.ArchLib)" Source="$(var.Mingw_bin)/$(var.ArchLib)" KeyPath="no" DiskId="1"/>
+            <File Id="libglib_2.0_0.dll" Name="libglib-2.0-0.dll" Source="$(var.Mingw_bin)/libglib-2.0-0.dll" KeyPath="no" DiskId="1"/>
+            <File Id="libintl_8.dll" Name="libintl-8.dll" Source="$(var.Mingw_bin)/libintl-8.dll" KeyPath="no" DiskId="1"/>
+            <File Id="libssp_0.dll" Name="libssp-0.dll" Source="$(var.Mingw_bin)/libssp-0.dll" KeyPath="no" DiskId="1"/>
+            <File Id="libwinpthread_1.dll" Name="libwinpthread-1.dll" Source="$(var.Mingw_bin)/libwinpthread-1.dll" KeyPath="no" DiskId="1"/>
+            <ServiceInstall
+              Id="ServiceInstaller"
+              Type="ownProcess"
+              Vital="yes"
+              Name="QEMU-GA"
+              DisplayName="QEMU Guest Agent"
+              Description="QEMU Guest Agent"
+              Start="auto"
+              Account="LocalSystem"
+              ErrorControl="ignore"
+              Interactive="no"
+              Arguments="-d"
+              >
+            </ServiceInstall>
+            <ServiceControl Id="StartService" Start="install" Stop="both" Remove="uninstall" Name="QEMU-GA" Wait="no" />
+          </Component>
+
+          <Component Id="registry_entries" Guid="d075d109-51ca-11e3-9f8b-000c29858960">
+            <RegistryKey Root="HKLM"
+                         Key="Software\$(env.QEMU_GA_MANUFACTURER)\$(env.QEMU_GA_DISTRO)\Tools\QemuGA">
+              <RegistryValue Type="string" Name="ProductID" Value="fb0a0d66-c7fb-4e2e-a16b-c4a3bfe8d13b" />
+              <RegistryValue Type="string" Name="Version" Value="$(env.QEMU_GA_VERSION)" />
+            </RegistryKey>
+          </Component>
+        </Directory>
+      </Directory>
+    </Directory>
+
+    <Property Id="cmd" Value="cmd.exe"/>
+
+    <?ifdef var.InstallVss ?>
+    <CustomAction Id="RegisterCom"
+             ExeCommand='/c "[qemu_ga_directory]qemu-ga.exe" -s vss-install'
+              Execute="deferred"
+              Property="cmd"
+              Impersonate="no"
+              Return="check"
+              >
+    </CustomAction>
+    <CustomAction Id="UnRegisterCom"
+              ExeCommand='/c "[qemu_ga_directory]qemu-ga.exe" -s vss-uninstall'
+              Execute="deferred"
+              Property="cmd"
+              Impersonate="no"
+              Return="check"
+              ></CustomAction>
+    <?endif?>
+
+    <Feature Id="QEMUFeature" Title="QEMU Guest Agent" Level="1">
+      <ComponentRef Id="qemu_ga" />
+      <ComponentRef Id="registry_entries" />
+    </Feature>
+
+    <InstallExecuteSequence>
+      <RemoveExistingProducts Before="InstallInitialize" />
+      <?ifdef var.InstallVss ?>
+      <Custom Action="RegisterCom" After="InstallServices">NOT Installed</Custom>
+      <Custom Action="UnRegisterCom" After="StopServices">Installed</Custom>
+      <?endif?>
+    </InstallExecuteSequence>
+  </Product>
+</Wix>
-- 
2.1.0

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

* [Qemu-devel] [Patch V2 4/4] qemu-ga: Building Windows MSI installation with configure/Makefile
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
                   ` (2 preceding siblings ...)
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 3/4] qemu-ga: Introduce Windows MSI script Yossi Hindin
@ 2015-05-06 11:57 ` Yossi Hindin
  2015-05-06 14:14 ` [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Paolo Bonzini
  2015-06-17 13:25 ` Paolo Bonzini
  5 siblings, 0 replies; 8+ messages in thread
From: Yossi Hindin @ 2015-05-06 11:57 UTC (permalink / raw)
  To: qemu-devel; +Cc: pbonzini, Yossi Hindin, mdroth

New options were added to enable Windows MSI installation package
creation:

Option --enable-guest-agent-msi, like the name suggests, enables building
Windows MSI package for QEMU guest agent; option --disable-guest-agent-msi
disables MSI package creation; by default, no MSI package is created

Signed-off-by: Yossi Hindin <yhindin@redhat.com>
---
 Makefile  | 24 ++++++++++++++++++++++-
 configure | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 89 insertions(+), 1 deletion(-)

diff --git a/Makefile b/Makefile
index 93af871..ef14cb8 100644
--- a/Makefile
+++ b/Makefile
@@ -74,7 +74,7 @@ Makefile: ;
 configure: ;
 
 .PHONY: all clean cscope distclean dvi html info install install-doc \
-	pdf recurse-all speed test dist
+	pdf recurse-all speed test dist msi
 
 $(call set-vpath, $(SRC_PATH))
 
@@ -287,10 +287,32 @@ $(qga-obj-y) qemu-ga.o: $(QGALIB_GEN)
 qemu-ga$(EXESUF): $(qga-obj-y) libqemuutil.a libqemustub.a
 	$(call LINK, $^)
 
+ifdef QEMU_GA_MSI_ENABLED
+QEMU_GA_MSI=qemu-ga-$(ARCH).msi
+
+msi: ${QEMU_GA_MSI}
+
+$(QEMU_GA_MSI): qemu-ga.exe
+
+ifdef QEMU_GA_MSI_WITH_VSS
+$(QEMU_GA_MSI): qga/vss-win32/qga-vss.dll
+endif
+
+$(QEMU_GA_MSI): config-host.mak
+
+$(QEMU_GA_MSI):  qga/installer/qemu-ga.wxs
+	$(call quiet-command,QEMU_GA_VERSION="$(QEMU_GA_VERSION)" QEMU_GA_MANUFACTURER="$(QEMU_GA_MANUFACTURER)" QEMU_GA_DISTRO="$(QEMU_GA_DISTRO)" \
+	wixl -o $@ $(QEMU_GA_MSI_ARCH) $(QEMU_GA_MSI_WITH_VSS) $(QEMU_GA_MSI_MINGW_DLL_PATH) $<, "  WIXL  $@")
+else
+msi:
+	@echo MSI build not configured or dependency resolution failed (reconfigure with --enable-guest-agent-msi option)
+endif
+
 clean:
 # avoid old build problems by removing potentially incorrect old files
 	rm -f config.mak op-i386.h opc-i386.h gen-op-i386.h op-arm.h opc-arm.h gen-op-arm.h
 	rm -f qemu-options.def
+	rm -f *.msi
 	find . \( -name '*.l[oa]' -o -name '*.so' -o -name '*.dll' -o -name '*.mo' -o -name '*.[oda]' \) -type f -exec rm {} +
 	rm -f $(filter-out %.tlb,$(TOOLS)) $(HELPERS-y) qemu-ga TAGS cscope.* *.pod *~ */*~
 	rm -f fsdev/*.pod
diff --git a/configure b/configure
index 6969f6f..76b5560 100755
--- a/configure
+++ b/configure
@@ -316,6 +316,7 @@ snappy=""
 bzip2=""
 guest_agent=""
 guest_agent_with_vss="no"
+guest_agent_msi=""
 vss_win32_sdk=""
 win_sdk="no"
 want_tools="yes"
@@ -1069,6 +1070,10 @@ for opt do
   ;;
   --disable-guest-agent) guest_agent="no"
   ;;
+  --enable-guest-agent-msi) guest_agent_msi="yes"
+  ;;
+  --disable-guest-agent-msi) guest_agent_msi="no"
+  ;;
   --with-vss-sdk) vss_win32_sdk=""
   ;;
   --with-vss-sdk=*) vss_win32_sdk="$optarg"
@@ -1383,6 +1388,8 @@ Advanced options (experts only):
                            reading bzip2-compressed dmg images)
   --disable-guest-agent    disable building of the QEMU Guest Agent
   --enable-guest-agent     enable building of the QEMU Guest Agent
+  --enable-guest-agent-msi enable building guest agent Windows MSI installation package
+  --disable-guest-agent-msi disable building guest agent Windows MSI installation
   --with-vss-sdk=SDK-path  enable Windows VSS support in QEMU Guest Agent
   --with-win-sdk=SDK-path  path to Windows Platform SDK (to build VSS .tlb)
   --disable-seccomp        disable seccomp support
@@ -3832,6 +3839,56 @@ if test "$mingw32" = "yes" -a "$guest_agent" != "no" -a "$guest_agent_with_vss"
 fi
 
 ##########################################
+# Guest agent Window MSI  package
+
+if test "$guest_agent" != yes; then
+  if test "$guest_agent_msi" = yes; then
+    error_exit "MSI guest agent package requires guest agent enabled"
+  fi
+  guest_agent_msi=no
+elif test "$mingw32" != "yes"; then
+  if test "$guest_agent_msi" = "yes"; then
+    error_exit "MSI guest agent package is available only for MinGW Windows cross-compilation"
+  fi
+  guest_agent_msi=no
+elif ! has wixl; then
+  if test "$guest_agent_msi" = "yes"; then
+    error_exit "MSI guest agent package requires wixl tool installed ( usually from msitools package )"
+  fi
+  guest_agent_msi=no
+fi
+
+if test "$guest_agent_msi" != "no"; then
+  if test "$guest_agent_with_vss" = "yes"; then
+    QEMU_GA_MSI_WITH_VSS="-D InstallVss"
+  fi
+
+  if test "$QEMU_GA_MANUFACTURER" = ""; then
+    QEMU_GA_MANUFACTURER=QEMU
+  fi
+
+  if test "$QEMU_GA_DISTRO" = ""; then
+    QEMU_GA_DISTRO=Linux
+  fi
+
+  if test "$QEMU_GA_VERSION" = ""; then
+      QEMU_GA_VERSION=`cat $source_path/VERSION`
+  fi
+
+  QEMU_GA_MSI_MINGW_DLL_PATH="-D Mingw_dlls=`$pkg_config --variable=prefix glib-2.0`/bin"
+  
+  case "$cpu" in
+  x86_64)
+    QEMU_GA_MSI_ARCH="-a x64 -D Arch=64"
+    ;;
+  i386)
+    QEMU_GA_MSI_ARCH="-D Arch=32"
+    ;;
+  *)
+    error_exit "CPU $cpu not supported for building installation package"
+    ;;
+  esac
+fi
 
 ##########################################
 # check if we have fdatasync
@@ -4500,6 +4557,15 @@ if test "$mingw32" = "yes" ; then
     echo "CONFIG_QGA_VSS=y" >> $config_host_mak
     echo "WIN_SDK=\"$win_sdk\"" >> $config_host_mak
   fi
+  if test "$guest_agent_msi" != "no"; then
+    echo "QEMU_GA_MSI_ENABLED=yes" >> $config_host_mak  
+    echo "QEMU_GA_MSI_MINGW_DLL_PATH=${QEMU_GA_MSI_MINGW_DLL_PATH}" >> $config_host_mak
+    echo "QEMU_GA_MSI_WITH_VSS=${QEMU_GA_MSI_WITH_VSS}" >> $config_host_mak
+    echo "QEMU_GA_MSI_ARCH=${QEMU_GA_MSI_ARCH}" >> $config_host_mak
+    echo "QEMU_GA_MANUFACTURER=${QEMU_GA_MANUFACTURER}" >> $config_host_mak
+    echo "QEMU_GA_DISTRO=${QEMU_GA_DISTRO}" >> $config_host_mak
+    echo "QEMU_GA_VERSION=${QEMU_GA_VERSION}" >> $config_host_mak
+  fi
 else
   echo "CONFIG_POSIX=y" >> $config_host_mak
 fi
-- 
2.1.0

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

* Re: [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
                   ` (3 preceding siblings ...)
  2015-05-06 11:57 ` [Qemu-devel] [Patch V2 4/4] qemu-ga: Building Windows MSI installation with configure/Makefile Yossi Hindin
@ 2015-05-06 14:14 ` Paolo Bonzini
  2015-06-04 15:00   ` Yan Vugenfirer
  2015-06-17 13:25 ` Paolo Bonzini
  5 siblings, 1 reply; 8+ messages in thread
From: Paolo Bonzini @ 2015-05-06 14:14 UTC (permalink / raw)
  To: Yossi Hindin, qemu-devel; +Cc: mdroth



On 06/05/2015 13:57, Yossi Hindin wrote:
> The second version of commits's set take into account Paolo Bonzini remarks.
> 
> Typo in WXS file fixed, QEMU GA-related CLI options renamed, '--enable-guest-agent-msi'/
> '--disable-guest-agent-msi' processing logic changed so that MSI build is configured
> by default, unless some prerequisite is missing and MinGW DLL path variable is computed
> together with all QEMU GA MSI variables. 
> 
> Also, I've slightly changed Makefile structure so that if MSI build was not configured,
> Makefile prints suitable message.
> 
> 
> Yossi Hindin (4):
>   qemu-ga: adding vss-[un]install options
>   qemu-ga: debug printouts to help troubleshoot installation
>   qemu-ga: Introduce Windows MSI script
>   qemu-ga: Building Windows MSI installation with configure/Makefile
> 
>  Makefile                  |  24 +++++++-
>  configure                 |  66 +++++++++++++++++++++
>  qga/channel-win32.c       |   2 +-
>  qga/commands-win32.c      |   1 +
>  qga/installer/qemu-ga.wxs | 145 ++++++++++++++++++++++++++++++++++++++++++++++
>  qga/main.c                |  10 +++-
>  6 files changed, 245 insertions(+), 3 deletions(-)
>  create mode 100644 qga/installer/qemu-ga.wxs
> 

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>

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

* Re: [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package
  2015-05-06 14:14 ` [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Paolo Bonzini
@ 2015-06-04 15:00   ` Yan Vugenfirer
  0 siblings, 0 replies; 8+ messages in thread
From: Yan Vugenfirer @ 2015-06-04 15:00 UTC (permalink / raw)
  To: Paolo Bonzini; +Cc: qemu-devel, mdroth


> On May 6, 2015, at 5:14 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
> 
> 
> 
> On 06/05/2015 13:57, Yossi Hindin wrote:
>> The second version of commits's set take into account Paolo Bonzini remarks.
>> 
>> Typo in WXS file fixed, QEMU GA-related CLI options renamed, '--enable-guest-agent-msi'/
>> '--disable-guest-agent-msi' processing logic changed so that MSI build is configured
>> by default, unless some prerequisite is missing and MinGW DLL path variable is computed
>> together with all QEMU GA MSI variables. 
>> 
>> Also, I've slightly changed Makefile structure so that if MSI build was not configured,
>> Makefile prints suitable message.
>> 
>> 
>> Yossi Hindin (4):
>>  qemu-ga: adding vss-[un]install options
>>  qemu-ga: debug printouts to help troubleshoot installation
>>  qemu-ga: Introduce Windows MSI script
>>  qemu-ga: Building Windows MSI installation with configure/Makefile
>> 
>> Makefile                  |  24 +++++++-
>> configure                 |  66 +++++++++++++++++++++
>> qga/channel-win32.c       |   2 +-
>> qga/commands-win32.c      |   1 +
>> qga/installer/qemu-ga.wxs | 145 ++++++++++++++++++++++++++++++++++++++++++++++
>> qga/main.c                |  10 +++-
>> 6 files changed, 245 insertions(+), 3 deletions(-)
>> create mode 100644 qga/installer/qemu-ga.wxs
>> 
> 
> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
> 
> 

Ping.

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

* Re: [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package
  2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
                   ` (4 preceding siblings ...)
  2015-05-06 14:14 ` [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Paolo Bonzini
@ 2015-06-17 13:25 ` Paolo Bonzini
  5 siblings, 0 replies; 8+ messages in thread
From: Paolo Bonzini @ 2015-06-17 13:25 UTC (permalink / raw)
  To: Yossi Hindin, qemu-devel; +Cc: mdroth



On 06/05/2015 13:57, Yossi Hindin wrote:
> The second version of commits's set take into account Paolo Bonzini remarks.
> 
> Typo in WXS file fixed, QEMU GA-related CLI options renamed, '--enable-guest-agent-msi'/
> '--disable-guest-agent-msi' processing logic changed so that MSI build is configured
> by default, unless some prerequisite is missing and MinGW DLL path variable is computed
> together with all QEMU GA MSI variables. 
> 
> Also, I've slightly changed Makefile structure so that if MSI build was not configured,
> Makefile prints suitable message.
> 
> 
> Yossi Hindin (4):
>   qemu-ga: adding vss-[un]install options
>   qemu-ga: debug printouts to help troubleshoot installation
>   qemu-ga: Introduce Windows MSI script
>   qemu-ga: Building Windows MSI installation with configure/Makefile
> 
>  Makefile                  |  24 +++++++-
>  configure                 |  66 +++++++++++++++++++++
>  qga/channel-win32.c       |   2 +-
>  qga/commands-win32.c      |   1 +
>  qga/installer/qemu-ga.wxs | 145 ++++++++++++++++++++++++++++++++++++++++++++++
>  qga/main.c                |  10 +++-
>  6 files changed, 245 insertions(+), 3 deletions(-)
>  create mode 100644 qga/installer/qemu-ga.wxs
> 

Applied, thanks.

Paolo

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

end of thread, other threads:[~2015-06-17 13:25 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-06 11:57 [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Yossi Hindin
2015-05-06 11:57 ` [Qemu-devel] [Patch V2 1/4] qemu-ga: adding vss-[un]install options Yossi Hindin
2015-05-06 11:57 ` [Qemu-devel] [Patch V2 2/4] qemu-ga: debug printouts to help troubleshoot installation Yossi Hindin
2015-05-06 11:57 ` [Qemu-devel] [Patch V2 3/4] qemu-ga: Introduce Windows MSI script Yossi Hindin
2015-05-06 11:57 ` [Qemu-devel] [Patch V2 4/4] qemu-ga: Building Windows MSI installation with configure/Makefile Yossi Hindin
2015-05-06 14:14 ` [Qemu-devel] [Patch V2 0/4] [Patch V2 0/4] Windows MSI installation package Paolo Bonzini
2015-06-04 15:00   ` Yan Vugenfirer
2015-06-17 13:25 ` Paolo Bonzini

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