Browse Source

Working on windows installer

JoshEngebretson 10 years ago
parent
commit
329e2ec2e5

+ 18 - 1
Build/CIScripts/GenWindowsEditor.js

@@ -16,14 +16,31 @@ namespace('build', function() {
 
     bcommon.cleanCreateDir(bcommon.artifactsRoot + "Build/WindowsInstaller");
 
+    var installerName = "AtomicEditorSetup_" + bcommon.buildSHA + ".exe";
+    var installerPath = bcommon.artifactsRoot + "Build/WindowsInstaller/" + installerName;
+
     var nsisDefines = "/DATOMIC_ROOT=" + atomicRoot;
     nsisDefines += " /DEDITOR_VERSION=1";
+    nsisDefines += " /DINSTALLER_NAME=" + installerName;
 
     var makeNSISCmd = atomicRoot + "\\Build\\CIScripts\\Windows\\CreateInstaller.bat";
 
     makeNSISCmd += " " + nsisDefines + " " + atomicRoot + "/Build/CIScripts/Windows/Installer/AtomicEditor.nsi";
 
-    var cmds = [makeNSISCmd];
+    var editorExe = dstDir + "AtomicEditor/AtomicEditor.exe";
+
+    var pfxFile = process.env.ATOMIC_PFX_FILE;
+    var pfxPW = process.env.ATOMIC_PFX_PW;
+
+    var signBaseCmd = "signtool.exe sign /f " + pfxFile;
+    signBaseCmd += " /p " + pfxPW;
+    signBaseCmd += " /t http://timestamp.verisign.com/scripts/timestamp.dll";
+    signBaseCmd += " /v ";
+
+    var signEditorCmd = signBaseCmd + editorExe;
+    var signInstallerCmd = signBaseCmd + installerPath;
+
+    var cmds = [signEditorCmd, makeNSISCmd, signInstallerCmd];
 
     jake.exec(cmds, function() {
       complete();

+ 1 - 1
Build/CIScripts/Windows/CreateInstaller.bat

@@ -1 +1 @@
-"C:\Program Files (x86)\NSIS\makensis.exe" %1=%2 %3=%4 %5
+"C:\Program Files (x86)\NSIS\makensis.exe" %1=%2 %3=%4 %5=%6 %7

+ 5 - 1
Build/CIScripts/Windows/Installer/AtomicEditor.nsi

@@ -10,9 +10,13 @@
 !error "EDITOR_VERSION NOT DEFINED"
 !endif
 
+!ifndef INSTALLER_NAME
+!error "INSTALLER_NAME NOT DEFINED"
+!endif
+
 !define prodname "Atomic Editor"
 !define coname "THUNDERBEAST GAMES LLC"
-!define outfile "${ATOMIC_ROOT}\Artifacts\Build\WindowsInstaller\AtomicEditorSetup.exe"
+!define outfile "${ATOMIC_ROOT}\Artifacts\Build\WindowsInstaller\${INSTALLER_NAME}"
 !define appexe "AtomicEditor.exe"
 !define produrl "http://www.atomicgameengine.com/"