win/msi: separate features for ETW and perfctr support

pull/24507/merge
Bert Belder 2013-03-07 14:08:38 +01:00
parent 51e3a59946
commit 5e832ac7b9
1 changed files with 32 additions and 10 deletions

View File

@ -41,6 +41,20 @@
<Feature Id="nodejs" Title="node.js engine" Level="1" Description="$(var.ProductDescription)" Absent="disallow">
<ComponentGroupRef Id="allfiles" />
<ComponentGroupRef Id="Product.Generated" />
<Feature Id="NodePerfCtrSupport"
Level="1"
Title="Performance counters"
Description="Installs support for Node.js-specific performance counters.">
<ComponentRef Id="NodePerfCtrSupport"/>
</Feature>
<Feature Id="NodeEtwSupport"
Level="1"
Title="Event tracing (ETW)"
Description="Installs support for event tracing (ETW) events generated by Node.js.">
<ComponentRef Id="NodeEtwSupport"/>
</Feature>
</Feature>
<Feature Id="npm"
@ -72,16 +86,6 @@
<Directory Id="INSTALLDIR" Name="nodejs">
<Component Id="nodeexe" Guid="AEC0F08E-89B3-4C35-A286-8DB8598597F2">
<File Id="filenodeexe" KeyPath="yes" Source="$(var.SourceDir)\node.exe" />
<?if $(var.NoETW) != 1 ?>
<File Id="node_etw_provider_man" Name="node_etw_provider.man" Source="$(var.RepoDir)\src\res\node_etw_provider.man" >
<util:EventManifest MessageFile="[INSTALLDIR]node.exe" ResourceFile="[INSTALLDIR]node.exe"/>
</File>
<?endif?>
<?if $(var.NoPerfCtr) != 1 ?>
<File Id="node_perfctr_provider_man" Name="node_perfctr_provider.man" Source="$(var.RepoDir)\src\res\node_perfctr_provider.man" >
<util:PerfCounterManifest ResourceFileDirectory="[INSTALLDIR]"/>
</File>
<?endif?>
<Environment Id="npm_env"
Action="set"
Name="PATH"
@ -108,6 +112,24 @@
</Directory>
</Directory>
<DirectoryRef Id="INSTALLDIR">
<?if $(var.NoPerfCtr) != 1 ?>
<Component Id="NodePerfCtrSupport">
<File Id="node_perfctr_provider_man" Name="node_perfctr_provider.man" Source="$(var.RepoDir)\src\res\node_perfctr_provider.man">
<util:PerfCounterManifest ResourceFileDirectory="[INSTALLDIR]"/>
</File>
</Component>
<?endif?>
<?if $(var.NoETW) != 1 ?>
<Component Id="NodeEtwSupport">
<File Id="node_etw_provider.man" Source="$(var.RepoDir)\src\res\node_etw_provider.man">
<util:EventManifest MessageFile="[INSTALLDIR]node.exe" ResourceFile="[INSTALLDIR]node.exe"/>
</File>
</Component>
<?endif?>
</DirectoryRef>
<DirectoryRef Id="INSTALLDIR">
<Component Id="NpmCmdScript">
<File Id="npm.cmd" KeyPath="yes" Source="$(var.NpmSourceDir)\bin\npm.cmd"/>