Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/setup
diff options
context:
space:
mode:
authorLluis Sanchez Gual <lluis@novell.com>2010-10-28 22:45:52 +0400
committerLluis Sanchez Gual <lluis@novell.com>2010-10-28 22:49:11 +0400
commitda0e4575bac5d918b2cf92ce95f69f10313bd161 (patch)
tree39c7c0e3670dafb6cd3ebd0c483d848dde458e42 /setup
parent05fd7210b4660dc11b968e38e5212799fc7fc5a3 (diff)
Fix windows installer
Removed obsolete action reordering in install sequence that was causing the setup to fail in some Wix versions. Added script for generating the setup.
Diffstat (limited to 'setup')
-rw-r--r--setup/WixSetup/Product.wxs8
-rw-r--r--setup/WixSetup/build.js90
2 files changed, 94 insertions, 4 deletions
diff --git a/setup/WixSetup/Product.wxs b/setup/WixSetup/Product.wxs
index edbe335a8d..907a93526b 100644
--- a/setup/WixSetup/Product.wxs
+++ b/setup/WixSetup/Product.wxs
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<?define ProductShortName = "MonoDevelop" ?>
-<?define ProductVersion = "2.1.0" ?>
-<?define ProductVersionText = "2.1" ?>
+<?define ProductVersion = "2.4.1" ?>
+<?define ProductVersionText = "2.4.1" ?>
<?define Manufacturer = "Novell" ?>
<?define UpgradeCode = "9134F74C-E7E3-471A-9833-C86FB45CD38E" ?>
@@ -68,6 +68,8 @@
<File Name="Mono.GetOptions.dll" Source="Libraries\Mono.GetOptions.dll" />
<File Name="monodoc.dll" Source="Libraries\monodoc.dll" />
+ <File Name="updateinfo" Source="updateinfo" />
+
<File Id="file396" Name="Mono.Security.dll" Source="$(var.BuildRoot)\bin\Mono.Security.dll" />
<File Id="file399" Name="Mono.WebServer2.dll" Source="$(var.BuildRoot)\bin\Mono.WebServer2.dll" />
<File Id="file421" Name="monodoc.index" Source="$(var.BuildRoot)\bin\monodoc.index" />
@@ -653,8 +655,6 @@
</InstallExecuteSequence>
<InstallUISequence>
- <!-- Because we have a launch condition that uses the results of FindRelatedProducts, put it first. -->
- <LaunchConditions After="FindRelatedProducts" />
</InstallUISequence>
<!-- This enables the license screen and where to install screen -->
diff --git a/setup/WixSetup/build.js b/setup/WixSetup/build.js
new file mode 100644
index 0000000000..040271fb45
--- /dev/null
+++ b/setup/WixSetup/build.js
@@ -0,0 +1,90 @@
+var MAJOR_VERSION = 2;
+var MINOR_VERSION = 4;
+var POINT_VERSION = 1;
+var BUILD_VERSION = 0;
+
+var sh = new ActiveXObject("WScript.Shell");
+var fs = new ActiveXObject("Scripting.FileSystemObject");
+var MONO_LIBS = "C:\\Program Files\\MonoLibraries\\2.6\\lib\\mono\\2.0";
+var MD_DIR = "..\\..";
+var MD_EXTRAS_DIR = "..\\..\\extras";
+var PRODUCT_VERSION = "" + MAJOR_VERSION + "." + MINOR_VERSION + "." + POINT_VERSION + (BUILD_VERSION != 0 ? "." + BUILD_VERSION : "");
+var PRODUCT_VERSION_TEXT = "" + MAJOR_VERSION + "." + MINOR_VERSION + (POINT_VERSION != 0 || BUILD_VERSION != 0 ? "." + POINT_VERSION : "") + (BUILD_VERSION != 0 ? "." + BUILD_VERSION : "");
+var MONO_PRODUCT_VERSION = "" + MAJOR_VERSION + format (MINOR_VERSION, 2) + format (POINT_VERSION, 2) + format (BUILD_VERSION, 3);
+
+// Build the main solution and the windows-specific add-ins
+
+if (build ("main\\main.sln /p:Configuration=DebugWin32 /p:Platform=\"x86\"") != 0)
+ WScript.Quit (1);
+if (build ("extras\\VersionControl.Subversion.Win32\\VersionControl.Subversion.Win32.sln") != 0)
+ WScript.Quit (1);
+if (build ("extras\\MonoDevelop.Debugger.Win32\\MonoDevelop.Debugger.Win32.sln") != 0)
+ WScript.Quit (1);
+
+// Copy support assemblies
+
+if (!fs.FolderExists ("Libraries"))
+ fs.CreateFolder ("Libraries");
+
+fs.CopyFile (MONO_LIBS + "\\Mono.Addins.dll", "Libraries\\Mono.Addins.dll");
+fs.CopyFile (MONO_LIBS + "\\Mono.Addins.Gui.dll", "Libraries\\Mono.Addins.Gui.dll");
+fs.CopyFile (MONO_LIBS + "\\Mono.Addins.Setup.dll", "Libraries\\Mono.Addins.Setup.dll");
+fs.CopyFile (MONO_LIBS + "\\Mono.Addins.CecilReflector.dll", "Libraries\\Mono.Addins.CecilReflector.dll");
+fs.CopyFile (MONO_LIBS + "\\ICSharpCode.SharpZipLib.dll", "Libraries\\ICSharpCode.SharpZipLib.dll");
+fs.CopyFile (MONO_LIBS + "\\Mono.GetOptions.dll", "Libraries\\Mono.GetOptions.dll");
+fs.CopyFile (MONO_LIBS + "\\monodoc.dll", "Libraries\\monodoc.dll");
+
+// Copy support files
+
+if (!fs.FolderExists ("ExtraFiles")) {
+ WScript.Echo ("./ExtraFiles folder not found.\nYou can get the contents of this folder from:\nhttp://monodevelop.com/files/setup/ExtraFiles.zip");
+ WScript.Quit (1);
+}
+
+fs.CopyFile ("ExtraFiles\\*", MD_DIR + "\\main\\build\\bin\\");
+fs.CopyFolder ("ExtraFiles\\*", MD_DIR + "\\main\\build\\bin\\");
+
+// Set the version numbers
+
+regexreplace ("Product.wxs", /ProductVersionText = ".*?"/g, "ProductVersionText = \"" + PRODUCT_VERSION_TEXT + "\"");
+regexreplace ("Product.wxs", /ProductVersion = ".*?"/g, "ProductVersion = \"" + PRODUCT_VERSION + "\"");
+
+// Create the updateinfo file
+
+var f = fs.CreateTextFile ("updateinfo", true);
+f.WriteLine ("E55A5A70-C6F6-4845-8A01-89DAA5B6DA43 " + MONO_PRODUCT_VERSION);
+f.Close ();
+
+
+// Build the setup
+build ("setup\\WixSetup\\WixSetup.sln");
+
+WScript.Echo ("Setup successfully generated");
+
+function build (file)
+{
+ if (sh.run ("C:\\Windows\\Microsoft.NET\\Framework\\v3.5\\msbuild.exe " + MD_DIR + "\\" + file, 5, true) != 0) {
+ WScript.Echo ("Build failed");
+ return 1;
+ }
+ return 0;
+}
+
+function regexreplace (file, regex, replacement)
+{
+ var f = fs.OpenTextFile (file, 1);
+ var content = f.ReadAll ();
+ f.Close ();
+ content = content.replace (regex, replacement);
+ f = fs.CreateTextFile (file, true);
+ f.Write (content);
+ f.Close ();
+}
+
+function format (num, len)
+{
+ var res = num.toString ();
+ while (res.length < len)
+ res = "0" + res;
+ return res;
+}