[banshee] windows: Reorganize, clean up installer build dir
- From: Gabriel Burt <gburt src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [banshee] windows: Reorganize, clean up installer build dir
- Date: Thu, 27 Jan 2011 04:33:34 +0000 (UTC)
commit 3d66b85ad1956ea35e1213a4be7c6f366c9c34ce
Author: Gabriel Burt <gabriel burt gmail com>
Date: Wed Jan 26 22:01:15 2011 -0600
windows: Reorganize, clean up installer build dir
.../{WixSetup.wixproj => Installer.wixproj} | 19 ++++++-------------
.../{Product.wxs => InstallerDefinition.wxs} | 5 +++--
build/windows/README.txt | 13 +++++++++++++
build/windows/WixSetup.sln | 20 --------------------
build/windows/{build.js => build-installer.js} | 18 +++++++++++-------
5 files changed, 33 insertions(+), 42 deletions(-)
---
diff --git a/build/windows/WixSetup.wixproj b/build/windows/Installer.wixproj
similarity index 68%
rename from build/windows/WixSetup.wixproj
rename to build/windows/Installer.wixproj
index b00ff28..ebe2921 100644
--- a/build/windows/WixSetup.wixproj
+++ b/build/windows/Installer.wixproj
@@ -1,29 +1,22 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
- <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.0</ProductVersion>
<ProjectGuid>{33f58ffc-956e-4079-b27a-160a57ffea7a}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>Banshee-1.9.3</OutputName>
<OutputType>Package</OutputType>
+ <ApplicationIcon>..\..\data\banshee.ico</ApplicationIcon>
+ <OutputPath>.</OutputPath>
+ <IntermediateOutputPath>obj\</IntermediateOutputPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
</PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
- <OutputPath>bin\$(Configuration)\</OutputPath>
- <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
- <DefineConstants>Debug</DefineConstants>
- </PropertyGroup>
- <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
- <OutputPath>bin\$(Configuration)\</OutputPath>
- <IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
- </PropertyGroup>
<ItemGroup>
- <Compile Include="Product.wxs" />
+ <Compile Include="InstallerDefinition.wxs" />
</ItemGroup>
<ItemGroup>
- <None Include="binaries.wxi" />
- <None Include="share.wxi" />
+ <None Include="generated_binaries.wxi" />
+ <None Include="generated_share.wxi" />
</ItemGroup>
<ItemGroup>
<WixExtension Include="WixNetFxExtension">
diff --git a/build/windows/Product.wxs b/build/windows/InstallerDefinition.wxs
similarity index 97%
rename from build/windows/Product.wxs
rename to build/windows/InstallerDefinition.wxs
index f62adf8..3524b4b 100644
--- a/build/windows/Product.wxs
+++ b/build/windows/InstallerDefinition.wxs
@@ -92,8 +92,9 @@
<!-- This is for the icon that is shown in the Add/Remove Programs dialog and menu shortcut -->
<Icon Id="Nereid.exe" SourceFile="Bitmaps\Banshee.ico" />
<Property Id="ARPPRODUCTICON" Value="Nereid.exe" />
+ <Property Id="ARPHELPLINK" Value="http://banshee.fm/" />
</Product>
- <?include share.wxi ?>
- <?include binaries.wxi ?>
+ <?include generated_share.wxi ?>
+ <?include generated_binaries.wxi ?>
</Wix>
diff --git a/build/windows/README.txt b/build/windows/README.txt
new file mode 100644
index 0000000..ba1ebdc
--- /dev/null
+++ b/build/windows/README.txt
@@ -0,0 +1,13 @@
+== Building
+
+See http://banshee.fm/download/development/#windows for instructions for building Banshee on Windows.
+
+== Creating the Banshee.msi installer
+
+You need
+- WIX 3.5
+- GStreamer and GStreamer# (DotNet bindings)
+- Gtk#
+- Banshee built
+
+With that, you should be able to run build-installer.js and have it produce the installer.
diff --git a/build/windows/build.js b/build/windows/build-installer.js
similarity index 72%
rename from build/windows/build.js
rename to build/windows/build-installer.js
index 6df5cf0..ac0fd51 100644
--- a/build/windows/build.js
+++ b/build/windows/build-installer.js
@@ -6,6 +6,9 @@ var version = "1.9.3";
var sh = new ActiveXObject("WScript.Shell");
var fs = new ActiveXObject("Scripting.FileSystemObject");
+// FIXME if heat isn't here, it might be at v3.x\bin
+var heat = "\"C:\\Program Files\\Windows Installer XML v3.5\\bin\\heat.exe\"";
+
// Build Banshee
//build ("..\\..\\Banshee.sln");
@@ -23,19 +26,20 @@ run ('xcopy /D ..\\..\\bin\\gst-plugins\\* dlls\\gst-plugins\\');
if (fs.FileExists ("dlls\\Nereid.exe")) fs.DeleteFile ("dlls\\Nereid.exe");
// Generate the list of binary files (managed and native .dlls and .pdb and .config files)
-run ('heat dir dlls -cg binaries -srd -scom -sreg -ag -sfrag -suid -indent 2 -var var.BinDir -dr INSTALLLOCATION -out binaries.wxi');
+run (heat + ' dir dlls -cg binaries -srd -scom -sreg -ag -sfrag -suid -indent 2 -var var.BinDir -dr INSTALLLOCATION -out generated_binaries.wxi');
+if (fs.FolderExists ("dlls")) fs.DeleteFolder ("dlls");
// Heat has no option to output Include (wxi) files instead of Wix (wxs) ones, so do a little regex
-regexreplace ('binaries.wxi', /Wix xmlns/, 'Include xmlns');
-regexreplace ('binaries.wxi', /Wix>/, 'Include>');
+regexreplace ('generated_binaries.wxi', /Wix xmlns/, 'Include xmlns');
+regexreplace ('generated_binaries.wxi', /Wix>/, 'Include>');
// Generate the list of files in share/ (icons, i18n, and GStreamer audio-profiles)
-run ('heat dir ..\\..\\bin\\share -cg share -scom -ag -sfrag -suid -indent 2 -var var.ShareDir -dr INSTALLLOCATION -out share.wxi');
-regexreplace ('share.wxi', /Wix xmlns/, 'Include xmlns');
-regexreplace ('share.wxi', /Wix>/, 'Include>');
+run (heat + ' dir ..\\..\\bin\\share -cg share -scom -ag -sfrag -suid -indent 2 -var var.ShareDir -dr INSTALLLOCATION -out generated_share.wxi');
+regexreplace ('generated_share.wxi', /Wix xmlns/, 'Include xmlns');
+regexreplace ('generated_share.wxi', /Wix>/, 'Include>');
// Create the installer, will be outputted to bin/Debug/
-build ("WixSetup.sln")
+build ("Installer.wixproj")
WScript.Echo ("Setup successfully generated");
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]