OSDN Git Service

PATCH: [ 2690509 ] Installer: First MSI setup
authorTim Gerundt <tim@gerundt.de>
Wed, 18 Mar 2009 19:45:22 +0000 (19:45 +0000)
committerTim Gerundt <tim@gerundt.de>
Wed, 18 Mar 2009 19:45:22 +0000 (19:45 +0000)
Installer/WiX/WinMerge.wxs [new file with mode: 0644]

diff --git a/Installer/WiX/WinMerge.wxs b/Installer/WiX/WinMerge.wxs
new file mode 100644 (file)
index 0000000..a4a3030
--- /dev/null
@@ -0,0 +1,397 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">\r
+  <!--\r
+    TODO:\r
+      * Install all files\r
+      * Make a different between 32bit and 64bit\r
+      * Register shell extension\r
+      * Create start menu items\r
+      * Mutli-language support\r
+      * GUI\r
+      * ...\r
+  -->\r
+  <Product Id="055366D2-F7D1-4888-A923-C3DC004E55E4" \r
+    Codepage="1252" \r
+    Language="1033" \r
+    Manufacturer="Thingamahoochie Software" \r
+    Name="WinMerge" \r
+    UpgradeCode="3C974FF6-9076-46EB-A65F-A53931EAF942" \r
+    Version="0.0.1">\r
+    \r
+    <Package Id="*" \r
+      Comments="WinMerge" \r
+      Compressed="yes" \r
+      Description="WinMerge Installer" \r
+      InstallerVersion="200" \r
+      Keywords="Installer" \r
+      Languages="1033" \r
+      Manufacturer="Thingamahoochie Software" \r
+      SummaryCodepage="1252" />\r
+    \r
+    <Media Id="1"\r
+      Cabinet="winmerge.cab"\r
+      EmbedCab="yes" />\r
+    \r
+    <Directory Id="TARGETDIR" Name="SourceDir">\r
+      <Directory Id="ProgramFilesFolder">\r
+        <Directory Id="INSTALLDIR" Name="WinMerge">\r
+          <Directory Id="DOCSDIR" Name="Docs" />\r
+          <Directory Id="LANGDIR" Name="Languages" />\r
+        </Directory>\r
+      </Directory>\r
+    </Directory>\r
+    \r
+    <DirectoryRef Id="INSTALLDIR">\r
+      <Component Id="WinMergeU" Guid="*">\r
+        <File Id="WinMergeUEXE" \r
+          Name="WinMergeU.exe" \r
+          Source="..\..\Build\MergeUnicodeRelease\WinMergeU.exe" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <!--TODO: Windows 32bit -->\r
+      <Component Id="ShellExtension" Guid="*">\r
+        <File Id="ShellExtensionUDLL" \r
+          Name="ShellExtensionU.dll" \r
+          Source="..\..\Build\MergeUnicodeRelease\ShellExtensionU.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <!--TODO: Windows 64bit -->\r
+      <Component Id="ShellExtensionX64" Guid="*">\r
+        <File Id="ShellExtensionX64DLL" \r
+          Name="ShellExtensionX64.dll" \r
+          Source="..\..\Build\ShellExtensionX64\ShellExtensionX64.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <Component Id="libexpat" Guid="*">\r
+        <File Id="libexpatDLL" \r
+          Name="libexpat.dll" \r
+          Source="..\..\Build\expat\libexpat.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <Component Id="pcre" Guid="*">\r
+        <File Id="pcreDLL" \r
+          Name="pcre.dll" \r
+          Source="..\..\Build\pcre\pcre.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <Component Id="MergeLang" Guid="*">\r
+        <File Id="MergeLangDLL" \r
+          Name="MergeLang.dll" \r
+          Source="..\..\Build\MergeUnicodeRelease\MergeLang.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <Component Id="heksedit" Guid="*">\r
+        <File Id="hekseditUDLL" \r
+          Name="hekseditU.dll" \r
+          Source="..\..\Build\heksedit\hekseditU.dll" \r
+          Vital="yes" />\r
+      </Component>\r
+      \r
+      <Component Id="Files" Guid="*">\r
+        <File Id="FilesTXT" \r
+          Name="Files.txt" \r
+          Source="..\..\Docs\Users\Files.txt" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Contributors" Guid="*">\r
+        <File Id="ContributorsTXT" \r
+          Name="Contributors.txt" \r
+          Source="..\..\Docs\Users\Contributors.txt" \r
+          Vital="no" />\r
+      </Component>\r
+    </DirectoryRef>\r
+    \r
+    <DirectoryRef Id="DOCSDIR">\r
+      <Component Id="ReadMe" Guid="*">\r
+        <File Id="ReadMeTXT" \r
+          Name="ReadMe.txt" \r
+          Source="..\..\Docs\Users\ReadMe.txt" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="ReleaseNotes" Guid="*">\r
+        <File Id="ReleaseNotesHTML" \r
+          Name="ReleaseNotes.html" \r
+          Source="..\..\Docs\Users\ReleaseNotes.html" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="ChangeLog" Guid="*">\r
+        <File Id="ChangeLogTXT" \r
+          Name="ChangeLog.txt" \r
+          Source="..\..\Docs\Users\ChangeLog.txt" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="WinMergeHelp" Guid="*">\r
+        <File Id="WinMergeCHM" \r
+          Name="WinMerge.chm" \r
+          Source="..\..\Build\Manual\htmlhelp\WinMerge.chm" \r
+          Vital="no" />\r
+      </Component>\r
+    </DirectoryRef>\r
+    \r
+    <DirectoryRef Id="LANGDIR">\r
+      <Component Id="Brazilian" Guid="*">\r
+        <File Id="BrazilianPO" \r
+          Name="Brazilian.po" \r
+          Source="..\..\Src\Languages\Brazilian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Bulgarian" Guid="*">\r
+        <File Id="BulgarianPO" \r
+          Name="Bulgarian.po" \r
+          Source="..\..\Src\Languages\Bulgarian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Catalan" Guid="*">\r
+        <File Id="CatalanPO" \r
+          Name="Catalan.po" \r
+          Source="..\..\Src\Languages\Catalan.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="ChineseSimplified" Guid="*">\r
+        <File Id="ChineseSimplifiedPO" \r
+          Name="ChineseSimplified.po" \r
+          Source="..\..\Src\Languages\ChineseSimplified.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="ChineseTraditional" Guid="*">\r
+        <File Id="ChineseTraditionalPO" \r
+          Name="ChineseTraditional.po" \r
+          Source="..\..\Src\Languages\ChineseTraditional.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Croatian" Guid="*">\r
+        <File Id="CroatianPO" \r
+          Name="Croatian.po" \r
+          Source="..\..\Src\Languages\Croatian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Czech" Guid="*">\r
+        <File Id="CzechPO" \r
+          Name="Czech.po" \r
+          Source="..\..\Src\Languages\Czech.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Danish" Guid="*">\r
+        <File Id="DanishPO" \r
+          Name="Danish.po" \r
+          Source="..\..\Src\Languages\Danish.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Dutch" Guid="*">\r
+        <File Id="DutchPO" \r
+          Name="Dutch.po" \r
+          Source="..\..\Src\Languages\Dutch.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="French" Guid="*">\r
+        <File Id="FrenchPO" \r
+          Name="French.po" \r
+          Source="..\..\Src\Languages\French.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Galician" Guid="*">\r
+        <File Id="GalicianPO" \r
+          Name="Galician.po" \r
+          Source="..\..\Src\Languages\Galician.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="German" Guid="*">\r
+        <File Id="GermanPO" \r
+          Name="German.po" \r
+          Source="..\..\Src\Languages\German.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Greek" Guid="*">\r
+        <File Id="GreekPO" \r
+          Name="Greek.po" \r
+          Source="..\..\Src\Languages\Greek.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Hungarian" Guid="*">\r
+        <File Id="HungarianPO" \r
+          Name="Hungarian.po" \r
+          Source="..\..\Src\Languages\Hungarian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Italian" Guid="*">\r
+        <File Id="ItalianPO" \r
+          Name="Italian.po" \r
+          Source="..\..\Src\Languages\Italian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Japanese" Guid="*">\r
+        <File Id="JapanesePO" \r
+          Name="Japanese.po" \r
+          Source="..\..\Src\Languages\Japanese.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Korean" Guid="*">\r
+        <File Id="KoreanPO" \r
+          Name="Korean.po" \r
+          Source="..\..\Src\Languages\Korean.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Norwegian" Guid="*">\r
+        <File Id="NorwegianPO" \r
+          Name="Norwegian.po" \r
+          Source="..\..\Src\Languages\Norwegian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Polish" Guid="*">\r
+        <File Id="PolishPO" \r
+          Name="Polish.po" \r
+          Source="..\..\Src\Languages\Polish.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Portuguese" Guid="*">\r
+        <File Id="PortuguesePO" \r
+          Name="Portuguese.po" \r
+          Source="..\..\Src\Languages\Portuguese.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Romanian" Guid="*">\r
+        <File Id="RomanianPO" \r
+          Name="Romanian.po" \r
+          Source="..\..\Src\Languages\Romanian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Russian" Guid="*">\r
+        <File Id="RussianPO" \r
+          Name="Russian.po" \r
+          Source="..\..\Src\Languages\Russian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Slovak" Guid="*">\r
+        <File Id="SlovakPO" \r
+          Name="Slovak.po" \r
+          Source="..\..\Src\Languages\Slovak.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Slovenian" Guid="*">\r
+        <File Id="SlovenianPO" \r
+          Name="Slovenian.po" \r
+          Source="..\..\Src\Languages\Slovenian.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Spanish" Guid="*">\r
+        <File Id="SpanishPO" \r
+          Name="Spanish.po" \r
+          Source="..\..\Src\Languages\Spanish.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Swedish" Guid="*">\r
+        <File Id="SwedishPO" \r
+          Name="Swedish.po" \r
+          Source="..\..\Src\Languages\Swedish.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Turkish" Guid="*">\r
+        <File Id="TurkishPO" \r
+          Name="Turkish.po" \r
+          Source="..\..\Src\Languages\Turkish.po" \r
+          Vital="no" />\r
+      </Component>\r
+      \r
+      <Component Id="Ukrainian" Guid="*">\r
+        <File Id="UkrainianPO" \r
+          Name="Ukrainian.po" \r
+          Source="..\..\Src\Languages\Ukrainian.po" \r
+          Vital="no" />\r
+      </Component>\r
+    </DirectoryRef>\r
+    \r
+    <Feature Id="Complete" Level="1">\r
+      <Feature Id="Core" Level="1">\r
+        <ComponentRef Id="WinMergeU" />\r
+        <ComponentRef Id="ShellExtension" />\r
+        <ComponentRef Id="ShellExtensionX64" />\r
+        <ComponentRef Id="libexpat" />\r
+        <ComponentRef Id="pcre" />\r
+        <ComponentRef Id="MergeLang" />\r
+        <ComponentRef Id="heksedit" />\r
+      </Feature>\r
+      <Feature Id="Documentation" Level="1">\r
+        <ComponentRef Id="Files" />\r
+        <ComponentRef Id="Contributors" />\r
+        <ComponentRef Id="ReadMe" />\r
+        <ComponentRef Id="ReleaseNotes" />\r
+        <ComponentRef Id="ChangeLog" />\r
+        <ComponentRef Id="WinMergeHelp" />\r
+      </Feature>\r
+      <Feature Id="Languages" Level="1">\r
+        <ComponentRef Id="Brazilian" />\r
+        <ComponentRef Id="Bulgarian" />\r
+        <ComponentRef Id="Catalan" />\r
+        <ComponentRef Id="ChineseSimplified" />\r
+        <ComponentRef Id="ChineseTraditional" />\r
+        <ComponentRef Id="Croatian" />\r
+        <ComponentRef Id="Czech" />\r
+        <ComponentRef Id="Danish" />\r
+        <ComponentRef Id="Dutch" />\r
+        <ComponentRef Id="French" />\r
+        <ComponentRef Id="Galician" />\r
+        <ComponentRef Id="German" />\r
+        <ComponentRef Id="Greek" />\r
+        <ComponentRef Id="Hungarian" />\r
+        <ComponentRef Id="Italian" />\r
+        <ComponentRef Id="Japanese" />\r
+        <ComponentRef Id="Korean" />\r
+        <ComponentRef Id="Norwegian" />\r
+        <ComponentRef Id="Polish" />\r
+        <ComponentRef Id="Portuguese" />\r
+        <ComponentRef Id="Romanian" />\r
+        <ComponentRef Id="Russian" />\r
+        <ComponentRef Id="Slovak" />\r
+        <ComponentRef Id="Slovenian" />\r
+        <ComponentRef Id="Spanish" />\r
+        <ComponentRef Id="Swedish" />\r
+        <ComponentRef Id="Turkish" />\r
+        <ComponentRef Id="Ukrainian" />\r
+      </Feature>\r
+    </Feature>\r
+    \r
+    <!-- TODO: Works this really? -->\r
+    <Condition Message="WinMerge requires Windows 2000/XP/2003/Vista/2008 or later to install.">\r
+      <![CDATA[( VersionNT <= 500 ) OR ( Version9x <> 0 )]]>\r
+    </Condition>\r
+    \r
+    <UI />\r
+    \r
+  </Product>\r
+</Wix>
\ No newline at end of file