All of lore.kernel.org
 help / color / mirror / Atom feed
From: Michael Roth <mdroth@linux.vnet.ibm.com>
To: Leonid Bloch <leonid@daynix.com>, qemu-devel@nongnu.org
Cc: marcandre.lureau@gmail.com
Subject: Re: [Qemu-devel] [PATCH v3 3/4] qemu-ga: Created a separate component for each installed file in the MSI
Date: Tue, 25 Aug 2015 16:48:25 -0500	[thread overview]
Message-ID: <20150825214825.11069.67802@loki> (raw)
In-Reply-To: <1438624464-22770-4-git-send-email-leonid@daynix.com>

Quoting Leonid Bloch (2015-08-03 12:54:23)
> This is done to follow the recommendations given here: https://msdn.microsoft.com/en-us/library/aa368269%28VS.85%29.aspx
> 
> Signed-off-by: Leonid Bloch <leonid@daynix.com>
> ---
>  qga/installer/qemu-ga.wxs | 47 ++++++++++++++++++++++++++++++++++++-----------
>  1 file changed, 36 insertions(+), 11 deletions(-)
> 
> diff --git a/qga/installer/qemu-ga.wxs b/qga/installer/qemu-ga.wxs
> index dac1df0..2302745 100644
> --- a/qga/installer/qemu-ga.wxs
> +++ b/qga/installer/qemu-ga.wxs
> @@ -71,16 +71,6 @@
>          <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"
> @@ -97,7 +87,32 @@
>              </ServiceInstall>
>              <ServiceControl Id="StartService" Start="install" Stop="both" Remove="uninstall" Name="QEMU-GA" Wait="no" />
>            </Component>
> -
> +          <?ifdef var.InstallVss?>
> +          <Component Id="qga_vss_dll" Guid="{CB19C453-FABB-4BB1-ABAB-6B74F687BFBB}">
> +            <File Id="qga_vss.dll" Name="qga-vss.dll" Source="../vss-win32/qga-vss.dll" KeyPath="yes" DiskId="1"/>

Is there a reason these paths are seemingly relative to
qga/installer/qemu-ga.wxs? I'd imagine that works for running wixl
command within that directly, but top-level Makefile 'msi' ends up
bombing if I do 'make msi':

[mdroth@vm4 qemu-build-w64]$ ../w/qemu4.git/configure --cross-prefix=x86_64-w64-mingw32- \
  --with-vss-sdk=/home/mdroth/w/vss-win32/ --target-list=x86_64-softmmu
  --extra-cflags=-Wall --enable-guest-agent --enable-guest-agent-msi
...

[mdroth@vm4 qemu-build-w64]$ make -j4 qemu
...
  CC    trace/generated-events.o
  AR    libqemustub.a
  CC    qemu-img.o
  CC    qmp-marshal.o
  AR    libqemuutil.a
  LINK  qemu-ga.exe
  LINK  qemu-img.exe
  LINK  qemu-io.exe
...

[mdroth@vm4 qemu-build-w64]$ make msi
     LEX convert-dtsv0-lexer.lex.c
make[1]: flex: Command not found
     BISON dtc-parser.tab.c
make[1]: bison: Command not found
     LEX dtc-lexer.lex.c
make[1]: flex: Command not found
  WIXL  qemu-ga-x86_64.msi
Couldn't find file ../../qemu-ga.exe
make: *** [qemu-ga-x86_64.msi] Error 1

The fix seems simple enough, but I want to make sure I'm not doing something
stupid and have some idea of how people are using the current MSI installer
code.

  parent reply	other threads:[~2015-08-25 21:48 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-03 17:54 [Qemu-devel] [PATCH v3 0/4] qemu-ga: Fixes to the QEMU GA MSI installer Leonid Bloch
2015-08-03 17:54 ` [Qemu-devel] [PATCH v3 1/4] qemu-ga: Fixed GUID capitalization Leonid Bloch
2015-08-03 17:54 ` [Qemu-devel] [PATCH v3 2/4] qemu-ga: Minor cosmetic changes to the WXS file Leonid Bloch
2015-08-03 17:54 ` [Qemu-devel] [PATCH v3 3/4] qemu-ga: Created a separate component for each installed file in the MSI Leonid Bloch
2015-08-03 20:40   ` Marc-André Lureau
2015-08-25 21:48   ` Michael Roth [this message]
2015-08-25 21:58     ` Michael Roth
2015-08-26  9:46     ` Leonid Bloch
2015-08-03 17:54 ` [Qemu-devel] [PATCH v3 4/4] qemu-ga: Prevent QEMU-GA VSS provider from being unregistered on MSI reinstall Leonid Bloch
2015-08-03 20:41   ` Marc-André Lureau
2015-08-25 21:54 ` [Qemu-devel] [PATCH v3 0/4] qemu-ga: Fixes to the QEMU GA MSI installer Michael Roth
2015-08-26 22:29 ` Michael Roth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150825214825.11069.67802@loki \
    --to=mdroth@linux.vnet.ibm.com \
    --cc=leonid@daynix.com \
    --cc=marcandre.lureau@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.