Skip to content
This repository has been archived by the owner on Apr 22, 2023. It is now read-only.

Commit

Permalink
wix project to create msi installer for windows
Browse files Browse the repository at this point in the history
  • Loading branch information
tjanczuk committed Sep 14, 2011
1 parent d2dadf3 commit fcc520f
Show file tree
Hide file tree
Showing 5 changed files with 130 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -18,6 +18,7 @@ node_g
Debug/
Release/
*.sln
!nodemsi.sln
*.suo
*.vcproj
*.vcxproj
Expand Down
Binary file added tools/msi/LICENSE.rtf
Binary file not shown.
20 changes: 20 additions & 0 deletions tools/msi/nodemsi.sln
@@ -0,0 +1,20 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{930C7802-8A8C-48F9-8165-68863BCCD9DD}") = "nodemsi", "nodemsi.wixproj", "{1D808FF0-B5A9-4BE9-859D-B334B6F48BE2}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1D808FF0-B5A9-4BE9-859D-B334B6F48BE2}.Debug|x86.ActiveCfg = Debug|x86
{1D808FF0-B5A9-4BE9-859D-B334B6F48BE2}.Debug|x86.Build.0 = Debug|x86
{1D808FF0-B5A9-4BE9-859D-B334B6F48BE2}.Release|x86.ActiveCfg = Release|x86
{1D808FF0-B5A9-4BE9-859D-B334B6F48BE2}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
46 changes: 46 additions & 0 deletions tools/msi/nodemsi.wixproj
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>3.5</ProductVersion>
<ProjectGuid>{1d808ff0-b5a9-4be9-859d-b334b6f48be2}</ProjectGuid>
<SchemaVersion>2.0</SchemaVersion>
<OutputName>node</OutputName>
<OutputType>Package</OutputType>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' AND '$(MSBuildExtensionsPath32)' != '' ">$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<WixTargetsPath Condition=" '$(WixTargetsPath)' == '' ">$(MSBuildExtensionsPath)\Microsoft\WiX\v3.x\Wix.targets</WixTargetsPath>
<NodeVersion Condition=" '$(NodeVersion)' == '' ">0.0.0.0</NodeVersion>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<OutputPath>..\..\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug;ProductVersion=$(NodeVersion)</DefineConstants>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<OutputPath>..\..\$(Configuration)\</OutputPath>
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
<DefineConstants>Debug;ProductVersion=$(NodeVersion)</DefineConstants>
</PropertyGroup>
<ItemGroup>
<Compile Include="product.wxs" />
</ItemGroup>
<ItemGroup>
<Content Include="LICENSE.rtf" />
</ItemGroup>
<ItemGroup>
<WixExtension Include="WixUIExtension">
<HintPath>$(WixExtDir)\WixUIExtension.dll</HintPath>
<Name>WixUIExtension</Name>
</WixExtension>
</ItemGroup>
<Import Project="$(WixTargetsPath)" />
<!--
To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Wix.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
63 changes: 63 additions & 0 deletions tools/msi/product.wxs
@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">

<?define sourcedir="$(var.ProjectDir)..\..\$(var.Configuration)\" ?>

<Product Id="cc6c176e-e26c-48ec-8970-f58bd1d046cf"
Name="node.js"
Language="1033"
Version="$(var.ProductVersion)"
Manufacturer="Joyent, Inc"
UpgradeCode="1d60944c-b9ce-4a71-a7c0-0384eb884baa">

<Package InstallerVersion="200" Compressed="yes" Platform="x86" />

<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />

<CustomAction Id='SetRootDrive' Property='SD' Value='[%SystemDrive]\'/>

<InstallExecuteSequence>
<Custom Action="SetRootDrive" Before="CostInitialize"></Custom>
</InstallExecuteSequence>

<InstallUISequence>
<Custom Action="SetRootDrive" Before="CostInitialize"></Custom>
</InstallUISequence>

<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="SD">
<Directory Id="NodeRoot" Name="node">
<Component Id="nodeexe" Guid="AEC0F08E-89B3-4C35-A286-8DB8598597F2">
<File Id="filenodeexe" KeyPath="yes" Source="$(var.sourcedir)\node.exe" />
</Component>
<?if $(var.Configuration) = Debug ?>
<Component Id="nodepdb" Guid="BEC0F08E-89B3-4C35-A286-8DB8598597F2">
<File Id="filenodepdb" KeyPath="yes" Source="$(var.sourcedir)\node.pdb" />
</Component>
<?endif?>
<Component Id="license" Guid="CEC0F08E-89B3-4C35-A286-8DB8598597F2">
<File Id="filelicense" KeyPath="yes" Source="$(var.sourcedir)\..\LICENSE" />
</Component>
</Directory>
</Directory>
</Directory>

<ComponentGroup Id="allfiles">
<ComponentRef Id="nodeexe"/>
<?if $(var.Configuration) = Debug ?>
<ComponentRef Id="nodepdb"/>
<?endif?>
<ComponentRef Id="license"/>
</ComponentGroup>

<Feature Id="nodejs" Title="node.js engine" Level="1" Description="evented I/O for V8 javascript">
<ComponentGroupRef Id="allfiles" />
<ComponentGroupRef Id="Product.Generated" />
</Feature>

<WixVariable Id="WixUILicenseRtf" Value="$(var.ProjectDir)\license.rtf" />
<UIRef Id="WixUI_Minimal" />

</Product>

</Wix>

0 comments on commit fcc520f

Please sign in to comment.