From 7fd90804fb346cd9818bdea949c033dc04fa3e79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A0=D1=83=D1=81=D0=BB=D0=B0=D0=BD=20=D0=98=D0=B6=D0=B1?= =?UTF-8?q?=D1=83=D0=BB=D0=B0=D1=82=D0=BE=D0=B2?= Date: Thu, 31 Jul 2014 10:05:29 +0000 Subject: [PATCH] Embed manifest into gtk-update-icon-cache.exe This way it doesn't need to be installed alongside it. https://bugzilla.gnome.org/show_bug.cgi?id=705054 --- gtk/Makefile.am | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/gtk/Makefile.am b/gtk/Makefile.am index 4f74c1507e..0570b82864 100644 --- a/gtk/Makefile.am +++ b/gtk/Makefile.am @@ -1639,12 +1639,12 @@ if OS_WIN32 # Workaround for UAC silliness: programs with "update" in their name # are believed to be installers and require elevated privileges to be -# used... Use a manifest file to tell Windows that +# used... Embed a manifest file into executable to tell Windows that # gtk-update-icon-cache.exe doesn't require any special privileges. GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest - -bin_SCRIPTS = $(GTK_UPDATE_ICON_CACHE_MANIFEST) +GTK_UPDATE_ICON_CACHE_RC = gtk-update-icon-cache.rc +GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT = gtk-update-icon-cache_manifest.o $(GTK_UPDATE_ICON_CACHE_MANIFEST): (echo '' ; \ @@ -1665,6 +1665,12 @@ $(GTK_UPDATE_ICON_CACHE_MANIFEST): echo ' ' ; \ echo '' ) >$@ +$(GTK_UPDATE_ICON_CACHE_RC): + (echo 'CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST '$(GTK_UPDATE_ICON_CACHE_MANIFEST)) >$@ + +$(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT): $(GTK_UPDATE_ICON_CACHE_RC) $(GTK_UPDATE_ICON_CACHE_MANIFEST) + $(WINDRES) --input $< --output $@ --output-format=coff + endif endif @@ -1673,7 +1679,8 @@ gtk_query_immodules_3_0_LDADD = $(LDADDS) $(GMODULE_LIBS) gtk_query_immodules_3_0_SOURCES = queryimmodules.c if BUILD_ICON_CACHE -gtk_update_icon_cache_LDADD = $(GDK_PIXBUF_LIBS) +gtk_update_icon_cache_LDADD = $(GDK_PIXBUF_LIBS) $(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT) +gtk_update_icon_cache_DEPENDENCIES = $(GTK_UPDATE_ICON_CACHE_MANIFEST_OBJECT) gtk_update_icon_cache_SOURCES = updateiconcache.c endif