OSDN Git Service

add Build and Debug Document
[tortoisegit/TortoiseGitJp.git] / src / TortoiseGitSetup / setup.build
1 <?xml version="1.0"?>\r
2 <project name="Setup" default="setup" basedir=".">\r
3 \r
4         <target name="versioninfo">\r
5                 <nant target="versioninfo">\r
6                         <buildfiles>\r
7                                 <include name="..\..\versioninfo.build" />\r
8                         </buildfiles>\r
9                 </nant>\r
10                 <loadfile file="VersionNumberInclude.in.wxi" property="versionwixfile">\r
11                         <filterchain>\r
12                                 <replacetokens begintoken="$" endtoken="$">\r
13                                         <token key="MajorVersion" value="${environment::get-variable('MajorVersion')}" />\r
14                                         <token key="MinorVersion" value="${environment::get-variable('MinorVersion')}" />\r
15                                         <token key="MicroVersion" value="${environment::get-variable('Microversion')}" />\r
16                                         <token key="WCREV" value="${environment::get-variable('WCREV')}" />\r
17                                 </replacetokens>\r
18                         </filterchain>\r
19                 </loadfile>\r
20                 <echo file="VersionNumberInclude.wxi" message="${versionwixfile}" />\r
21                 <property name="verstring" value="${environment::get-variable('MajorVersion')}.${environment::get-variable('MinorVersion')}.${environment::get-variable('MicroVersion')}.${environment::get-variable('WCREV')}" />\r
22                 <property name="msifilename" value="TortoiseSVN-${verstring}${devrelease}-${platform}-svn-1.6.0-dev" />\r
23         </target>\r
24 \r
25         <target name="setup" depends="versioninfo">\r
26                 <if test="${configuration == 'debug'}">\r
27                         <echo message="Cannot create an installer from debug binaries." />\r
28                 </if>\r
29                 <if test="${configuration == 'release'}">\r
30                   <setenv>\r
31                           <variable name="DictionaryENUS" value="0" />\r
32                           <variable name="DictionaryENGB" value="0" />\r
33                           <variable name="IncludeCrashReportDll" value="0" />\r
34                   </setenv>\r
35         \r
36                   <if test="${file::exists('..\..\..\Common\Spell\en_US.aff')}">\r
37                           <setenv>\r
38                                   <variable name="DictionaryENUS" value="1" />\r
39                           </setenv>\r
40                   </if>\r
41                   <if test="${file::exists('..\..\..\Common\Spell\en_GB.aff')}">\r
42                           <setenv>\r
43                                   <variable name="DictionaryENGB" value="1" />\r
44                           </setenv>\r
45                   </if>\r
46                   <if test="${file::exists('..\..\MYBUILD')}">\r
47                           <setenv>\r
48                                   <variable name="IncludeCrashReportDll" value="1" />\r
49                           </setenv>\r
50                   </if>\r
51                   <if test="${platform == 'x64'}">\r
52                           <setenv>\r
53                                   <variable name="Platform" value="x64" />\r
54                           </setenv>\r
55                   </if>\r
56                   <if test="${platform != 'x64'}">\r
57                           <setenv>\r
58                                   <variable name="Platform" value="win32" />\r
59                           </setenv>\r
60                   </if>\r
61                 \r
62                   <!-- find the path to the merge modules -->\r
63                   <script language="C#">                        \r
64                           <code>\r
65                                   <![CDATA[\r
66                                           public static void ScriptMain(Project project)\r
67                                           {\r
68                                                   project.Properties.Add("mergemodulepath", System.Environment.GetFolderPath(System.Environment.SpecialFolder.CommonProgramFiles)+"\\Merge Modules");\r
69                                           }\r
70                                   ]]>\r
71                           </code>\r
72                   </script>\r
73                   <setenv>\r
74                           <variable name="MergeModules" value="${mergemodulepath}" />\r
75                   </setenv>\r
76 \r
77                   <exec program="candle">\r
78                           <arg value="-nologo" />\r
79                           <arg value="-out" />\r
80                           <arg value="..\..\bin\" />\r
81                           <arg value="TortoiseSVN.wxs" />\r
82                           <arg value="FeaturesFragment.wxs" />\r
83                           <arg value="StructureFragment.wxs" />\r
84                           <arg value="UIFragment.wxs" />\r
85                   </exec>\r
86                   <exec program="light">\r
87                           <arg value="-nologo" />\r
88                           <arg value="-sw1055" />\r
89                           <arg value="-sice:ICE03" />\r
90                           <arg value="-sice:ICE82" />\r
91                           <arg value="-sice:ICE83" />\r
92                           <arg value="-sval" if="${platform == 'x64'}" />\r
93                           <arg value="-out" />\r
94                           <arg value="..\..\bin\${msifilename}.msi" />\r
95                           <arg value="..\..\bin\TortoiseSVN.wixobj" />\r
96                           <arg value="..\..\bin\FeaturesFragment.wixobj" />\r
97                           <arg value="..\..\bin\StructureFragment.wixobj" />\r
98                           <arg value="..\..\bin\UIFragment.wixobj" />\r
99                   </exec>\r
100                   <delete>\r
101                           <fileset>\r
102                                   <include name="..\..\bin\*.wixobj" />\r
103                                   <include name="..\..\bin\*.wixpdb" />\r
104                           </fileset>\r
105                   </delete>\r
106                 \r
107                 <if test="${devrelease == ''}">\r
108                   <exec program="gpg.exe" workingdir="..\..\bin">\r
109                           <arg value="-sba" />\r
110                           <arg value="--yes" />\r
111                           <arg value="--batch" />\r
112                           <arg value="--passphrase" />\r
113                           <arg value="${gpgpassphrase}" />\r
114                           <arg value="${msifilename}.msi" />\r
115                   </exec>\r
116         </if>\r
117           </if>\r
118         </target>\r
119 \r
120 </project>\r
121 \r