[virt-tools-list] [PATCH virt-viewer] msi: Do not escape '$' for wixl-heat
Marc-André Lureau
marcandre.lureau at redhat.com
Mon Jul 24 09:47:10 UTC 2017
Hi
----- Original Message -----
> wixl-heat does it itself since its commit 9273514c95e343340d18067b4f1
>
> otherwise msi generation fails with:
> Couldn't find file
> $/tmp/tmp.1MYrxTLd1U/usr/x86_64-w64-mingw32/sys-root/mingw/bin/debug-helper.exe
> ---
> data/Makefile.am | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/data/Makefile.am b/data/Makefile.am
> index 55718d9..d9c7049 100644
> --- a/data/Makefile.am
> +++ b/data/Makefile.am
> @@ -43,7 +43,7 @@ deps.txt:
> virt-viewer-$(WIXL_ARCH)-$(VERSION).msi: virt-viewer.wxs deps.txt
> $(AM_V_GEN)DESTDIR=`mktemp -d` && \
> make -C $(top_builddir) install DESTDIR=$$DESTDIR >/dev/null && \
> - find $$DESTDIR | wixl-heat -p $$DESTDIR$(prefix)/ \
> + find $$DESTDIR | wixl-heat -p $DESTDIR$(prefix)/ \
This doesn't look like the correct fix to me, since -p is only used to match and strip prefix-based filenames.
I think we shouldn't escape the sourcedir instead:
diff --git a/tools/wixl/wixl-heat.vala b/tools/wixl/wixl-heat.vala
index 47013c1..4c828f7 100644
--- a/tools/wixl/wixl-heat.vala
+++ b/tools/wixl/wixl-heat.vala
@@ -106,8 +106,8 @@ public int main (string[] args) {
stdout.printf (indent + "<Component Win64=\"$(var.Win64)\" Id=\"%s\" Guid=\"*\">\n".printf (id));
else
stdout.printf (indent + "<Component Id=\"%s\" Guid=\"*\">\n".printf (id));
- file = sourcedir + Path.DIR_SEPARATOR_S + file;
- stdout.printf (indent + " <File Id=\"%s\" KeyPath=\"yes\" Source=\"%s\"/>\n".printf (generate_id ("fil", 1, file), escape_filename(file)));
+ file = sourcedir + Path.DIR_SEPARATOR_S + escape_filename(file);
+ stdout.printf (indent + " <File Id=\"%s\" KeyPath=\"yes\" Source=\"%s\"/>\n".printf (generate_id ("fil", 1, file), file));
stdout.printf (indent + "</Component>\n");
Could you check before I commit in msitools?
Btw, it might be worth to consider a msitools release too, so virt-viewer msi can be build in fedora 26.
> --component-group CG.virt-viewer --var var.DESTDIR \
> --directory-ref=INSTALLDIR > virt-viewer-files.wxs && \
> MANUFACTURER="$(MANUFACTURER)" wixl -D SourceDir=$(prefix) \
> --
> 2.13.3
>
> _______________________________________________
> virt-tools-list mailing list
> virt-tools-list at redhat.com
> https://www.redhat.com/mailman/listinfo/virt-tools-list
>
More information about the virt-tools-list
mailing list