summaryrefslogtreecommitdiffstats
path: root/mmc_updater
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2013-12-17 00:37:56 +0100
committerPetr Mrázek <peterix@gmail.com>2013-12-17 00:37:56 +0100
commitf8067a60346207d4b9b9f0c0eb5b1c3a70e28485 (patch)
treeb92aaa6d70543dfa15852231fff4423ed3ea53a2 /mmc_updater
parentbe8dba9ee2573062dc689041874bade27504f045 (diff)
downloadMultiMC-f8067a60346207d4b9b9f0c0eb5b1c3a70e28485.tar
MultiMC-f8067a60346207d4b9b9f0c0eb5b1c3a70e28485.tar.gz
MultiMC-f8067a60346207d4b9b9f0c0eb5b1c3a70e28485.tar.lz
MultiMC-f8067a60346207d4b9b9f0c0eb5b1c3a70e28485.tar.xz
MultiMC-f8067a60346207d4b9b9f0c0eb5b1c3a70e28485.zip
Magical pixie dust for windows updater reliability
Don't ask.
Diffstat (limited to 'mmc_updater')
-rw-r--r--mmc_updater/CMakeLists.txt8
-rw-r--r--mmc_updater/src/resources/updater.manifest27
-rw-r--r--mmc_updater/src/resources/updater.rc30
3 files changed, 50 insertions, 15 deletions
diff --git a/mmc_updater/CMakeLists.txt b/mmc_updater/CMakeLists.txt
index 61c8cd09..971ac153 100644
--- a/mmc_updater/CMakeLists.txt
+++ b/mmc_updater/CMakeLists.txt
@@ -9,6 +9,14 @@ include_directories(depends)
if (WIN32)
include_directories(depends/win32cpp)
+ # static all the things. The updater must have no dependencies, or it will fail.
+ if (MINGW)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -static-libgcc -static")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -static-libgcc -static-libstdc++ -static")
+#set(CMAKE_SHARED_LIBRARY_LINK_C_FLAGS "${CMAKE_SHARED_LIBRARY_LINK_C_FLAGS} -static-libgcc -s")
+#set(CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS "${CMAKE_SHARED_LIBRARY_LINK_CXX_FLAGS} -static-libgcc -static-libstdc++ -s")
+ endif()
+
if(MSVC)
# - Link the updater binary statically with the Visual C++ runtime
# so that the executable can function standalone.
diff --git a/mmc_updater/src/resources/updater.manifest b/mmc_updater/src/resources/updater.manifest
new file mode 100644
index 00000000..cafc47d3
--- /dev/null
+++ b/mmc_updater/src/resources/updater.manifest
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
+<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0" xmlns:asmv3="urn:schemas-microsoft-com:asm.v3">
+ <assemblyIdentity name="MultiMC.Updater.1" type="win32" version="1.0.0.0" />
+ <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
+ <security>
+ <requestedPrivileges>
+ <requestedExecutionLevel level="asInvoker" uiAccess="false"/>
+ </requestedPrivileges>
+ </security>
+ </trustInfo>
+ <dependency>
+ <dependentAssembly>
+ <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*"/>
+ </dependentAssembly>
+ </dependency>
+ <description>Software updater for MultiMC.</description>
+ <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
+ <application>
+ <!--The ID below indicates app support for Windows Vista -->
+ <supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
+ <!--The ID below indicates app support for Windows 7 -->
+ <supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
+ <!--The ID below indicates app support for Windows Developer Preview / Windows 8 -->
+ <supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
+ </application>
+ </compatibility>
+</assembly> \ No newline at end of file
diff --git a/mmc_updater/src/resources/updater.rc b/mmc_updater/src/resources/updater.rc
index 550970a8..9c7c5711 100644
--- a/mmc_updater/src/resources/updater.rc
+++ b/mmc_updater/src/resources/updater.rc
@@ -1,30 +1,30 @@
+#ifndef WIN32_LEAN_AND_MEAN
+#define WIN32_LEAN_AND_MEAN
+#endif
+#include <windows.h>
+
IDI_APPICON ICON DISCARDABLE "updater.ico"
-1 VERSIONINFO
-FILEVERSION 0,0,1,0
-PRODUCTVERSION 1,0,1,0
-FILEFLAGSMASK 0X3FL
-FILEFLAGS 0X8L
-FILEOS 0X40004L
-FILETYPE 0X1
-FILESUBTYPE 0
+1 RT_MANIFEST "updater.manifest"
+
+VS_VERSION_INFO VERSIONINFO
+FILEVERSION 1,0,0,0
+FILEOS VOS_NT_WINDOWS32
+FILETYPE VFT_APP
BEGIN
BLOCK "StringFileInfo"
BEGIN
BLOCK "000004b0"
BEGIN
- VALUE "FileVersion", "0.0.1.0"
- VALUE "ProductVersion", "1.0.1.0"
- VALUE "OriginalFilename", "updater.exe"
- VALUE "InternalName", "updater.exe"
- VALUE "FileDescription", "Software Update Tool"
VALUE "CompanyName", "MultiMC Contributors"
+ VALUE "FileDescription", "Software Update Tool"
+ VALUE "FileVersion", "1.0.0.0"
VALUE "ProductName", "MultiMC Software Updater"
- VALUE "PrivateBuild", "Built by BuildBot"
+ VALUE "ProductVersion", "1.0"
END
END
BLOCK "VarFileInfo"
BEGIN
- VALUE "Translation", 0x0000, 0x04b0
+ VALUE "Translation", 0x0000, 0x04b0 // Unicode
END
END \ No newline at end of file