Skip to content

Commit 98b07b5

Browse files
author
sdottaka
committed
* Add 3-way diff support for WinMerge
* Add VS2010 project files --HG-- branch : 3way-diff
1 parent 110ce6c commit 98b07b5

19 files changed

+11505
-8983
lines changed

FRHED/Frhed.props

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<PropertyGroup
4+
Condition="'$(impBeforeTargets)' == '' and '$(impAfterTargets)' == '' and '$(ConfigurationType)' != 'Makefile'">
5+
<impBeforeTargets>Midl</impBeforeTargets>
6+
<impAfterTargets>CustomBuild</impAfterTargets>
7+
</PropertyGroup>
8+
<PropertyGroup>
9+
<impDependsOn
10+
Condition="'$(ConfigurationType)' != 'Makefile'">_SelectedFiles;$(impDependsOn)</impDependsOn>
11+
</PropertyGroup>
12+
<ItemDefinitionGroup>
13+
<imp>
14+
<CommandLineTemplate>lib /MACHINE:$(TargetMachine) /DEF:"%(FullPath)" /OUT:"$(IntDir)%(Filename).lib"</CommandLineTemplate>
15+
<Outputs>$(IntDir)%(Filename).lib</Outputs>
16+
</imp>
17+
</ItemDefinitionGroup>
18+
<PropertyGroup
19+
Condition="'$(poBeforeTargets)' == '' and '$(poAfterTargets)' == '' and '$(ConfigurationType)' != 'Makefile'">
20+
<poBeforeTargets>Midl</poBeforeTargets>
21+
<poAfterTargets>CustomBuild</poAfterTargets>
22+
</PropertyGroup>
23+
<PropertyGroup>
24+
<poDependsOn
25+
Condition="'$(ConfigurationType)' != 'Makefile'">_SelectedFiles;$(poDependsOn)</poDependsOn>
26+
</PropertyGroup>
27+
<ItemDefinitionGroup>
28+
<po>
29+
<CommandLineTemplate>copy "%(FullPath)" "$(OutDir)Languages\%(Filename)%(Extension)"</CommandLineTemplate>
30+
<Outputs>$(OutDir)Languages\%(Filename)%(Extension)</Outputs>
31+
</po>
32+
</ItemDefinitionGroup>
33+
<PropertyGroup
34+
Condition="'$(docsBeforeTargets)' == '' and '$(docsAfterTargets)' == '' and '$(ConfigurationType)' != 'Makefile'">
35+
<docsBeforeTargets>Midl</docsBeforeTargets>
36+
<docsAfterTargets>CustomBuild</docsAfterTargets>
37+
</PropertyGroup>
38+
<PropertyGroup>
39+
<docsDependsOn
40+
Condition="'$(ConfigurationType)' != 'Makefile'">_SelectedFiles;$(docsDependsOn)</docsDependsOn>
41+
</PropertyGroup>
42+
<ItemDefinitionGroup>
43+
<docs>
44+
<CommandLineTemplate>copy "%(FullPath)" "$(OutDir)Docs\%(Filename)%(Extension)"</CommandLineTemplate>
45+
<Outputs>$(OutDir)Docs\%(Filename)%(Extension)</Outputs>
46+
</docs>
47+
</ItemDefinitionGroup>
48+
</Project>

FRHED/Frhed.targets

+229
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,229 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3+
<ItemGroup>
4+
<PropertyPageSchema
5+
Include="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml" />
6+
<AvailableItemName
7+
Include="imp">
8+
<Targets>_imp</Targets>
9+
</AvailableItemName>
10+
<AvailableItemName
11+
Include="po">
12+
<Targets>_po</Targets>
13+
</AvailableItemName>
14+
<AvailableItemName
15+
Include="docs">
16+
<Targets>_docs</Targets>
17+
</AvailableItemName>
18+
</ItemGroup>
19+
<UsingTask
20+
TaskName="imp"
21+
TaskFactory="XamlTaskFactory"
22+
AssemblyName="Microsoft.Build.Tasks.v4.0">
23+
<Task>$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml</Task>
24+
</UsingTask>
25+
<UsingTask
26+
TaskName="po"
27+
TaskFactory="XamlTaskFactory"
28+
AssemblyName="Microsoft.Build.Tasks.v4.0">
29+
<Task>$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml</Task>
30+
</UsingTask>
31+
<UsingTask
32+
TaskName="docs"
33+
TaskFactory="XamlTaskFactory"
34+
AssemblyName="Microsoft.Build.Tasks.v4.0">
35+
<Task>$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml</Task>
36+
</UsingTask>
37+
<Target
38+
Name="_imp"
39+
BeforeTargets="$(impBeforeTargets)"
40+
AfterTargets="$(impAfterTargets)"
41+
Condition="'@(imp)' != ''"
42+
DependsOnTargets="$(impDependsOn);ComputeimpOutput"
43+
Outputs="%(imp.Outputs)"
44+
Inputs="%(imp.Identity);%(imp.AdditionalDependencies);$(MSBuildProjectFile)">
45+
<ItemGroup
46+
Condition="'@(SelectedFiles)' != ''">
47+
<imp
48+
Remove="@(imp)"
49+
Condition="'%(Identity)' != '@(SelectedFiles)'" />
50+
</ItemGroup>
51+
<ItemGroup>
52+
<imp_tlog
53+
Include="%(imp.Outputs)"
54+
Condition="'%(imp.Outputs)' != '' and '%(imp.ExcludedFromBuild)' != 'true'">
55+
<Source>@(imp, '|')</Source>
56+
</imp_tlog>
57+
</ItemGroup>
58+
<Message
59+
Importance="High"
60+
Text="%(imp.ExecutionDescription)" />
61+
<WriteLinesToFile
62+
Condition="'@(imp_tlog)' != '' and '%(imp_tlog.ExcludedFromBuild)' != 'true'"
63+
File="$(IntDir)$(ProjectName).write.1.tlog"
64+
Lines="^%(imp_tlog.Source);@(imp_tlog-&gt;'%(Fullpath)')" />
65+
<imp
66+
Condition="'@(imp)' != '' and '%(imp.ExcludedFromBuild)' != 'true'"
67+
CommandLineTemplate="%(imp.CommandLineTemplate)"
68+
AdditionalOptions="%(imp.AdditionalOptions)"
69+
Inputs="%(imp.Identity)" />
70+
</Target>
71+
<PropertyGroup>
72+
<ComputeLinkInputsTargets>
73+
$(ComputeLinkInputsTargets);
74+
ComputeimpOutput;
75+
</ComputeLinkInputsTargets>
76+
<ComputeLibInputsTargets>
77+
$(ComputeLibInputsTargets);
78+
ComputeimpOutput;
79+
</ComputeLibInputsTargets>
80+
</PropertyGroup>
81+
<Target
82+
Name="ComputeimpOutput"
83+
Condition="'@(imp)' != ''">
84+
<ItemGroup>
85+
<impDirsToMake
86+
Condition="'@(imp)' != '' and '%(imp.ExcludedFromBuild)' != 'true'"
87+
Include="%(imp.Outputs)" />
88+
<Link
89+
Include="%(impDirsToMake.Identity)"
90+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
91+
<Lib
92+
Include="%(impDirsToMake.Identity)"
93+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
94+
<ImpLib
95+
Include="%(impDirsToMake.Identity)"
96+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
97+
</ItemGroup>
98+
<MakeDir
99+
Directories="@(impDirsToMake-&gt;'%(RootDir)%(Directory)')" />
100+
</Target>
101+
<Target
102+
Name="_po"
103+
BeforeTargets="$(poBeforeTargets)"
104+
AfterTargets="$(poAfterTargets)"
105+
Condition="'@(po)' != ''"
106+
DependsOnTargets="$(poDependsOn);ComputepoOutput"
107+
Outputs="%(po.Outputs)"
108+
Inputs="%(po.Identity);%(po.AdditionalDependencies);$(MSBuildProjectFile)">
109+
<ItemGroup
110+
Condition="'@(SelectedFiles)' != ''">
111+
<po
112+
Remove="@(po)"
113+
Condition="'%(Identity)' != '@(SelectedFiles)'" />
114+
</ItemGroup>
115+
<ItemGroup>
116+
<po_tlog
117+
Include="%(po.Outputs)"
118+
Condition="'%(po.Outputs)' != '' and '%(po.ExcludedFromBuild)' != 'true'">
119+
<Source>@(po, '|')</Source>
120+
</po_tlog>
121+
</ItemGroup>
122+
<Message
123+
Importance="High"
124+
Text="%(po.ExecutionDescription)" />
125+
<WriteLinesToFile
126+
Condition="'@(po_tlog)' != '' and '%(po_tlog.ExcludedFromBuild)' != 'true'"
127+
File="$(IntDir)$(ProjectName).write.1.tlog"
128+
Lines="^%(po_tlog.Source);@(po_tlog-&gt;'%(Fullpath)')" />
129+
<po
130+
Condition="'@(po)' != '' and '%(po.ExcludedFromBuild)' != 'true'"
131+
CommandLineTemplate="%(po.CommandLineTemplate)"
132+
AdditionalOptions="%(po.AdditionalOptions)"
133+
Inputs="%(po.Identity)" />
134+
</Target>
135+
<PropertyGroup>
136+
<ComputeLinkInputsTargets>
137+
$(ComputeLinkInputsTargets);
138+
ComputepoOutput;
139+
</ComputeLinkInputsTargets>
140+
<ComputeLibInputsTargets>
141+
$(ComputeLibInputsTargets);
142+
ComputepoOutput;
143+
</ComputeLibInputsTargets>
144+
</PropertyGroup>
145+
<Target
146+
Name="ComputepoOutput"
147+
Condition="'@(po)' != ''">
148+
<ItemGroup>
149+
<poDirsToMake
150+
Condition="'@(po)' != '' and '%(po.ExcludedFromBuild)' != 'true'"
151+
Include="%(po.Outputs)" />
152+
<Link
153+
Include="%(poDirsToMake.Identity)"
154+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
155+
<Lib
156+
Include="%(poDirsToMake.Identity)"
157+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
158+
<ImpLib
159+
Include="%(poDirsToMake.Identity)"
160+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
161+
</ItemGroup>
162+
<MakeDir
163+
Directories="@(poDirsToMake-&gt;'%(RootDir)%(Directory)')" />
164+
</Target>
165+
<Target
166+
Name="_docs"
167+
BeforeTargets="$(docsBeforeTargets)"
168+
AfterTargets="$(docsAfterTargets)"
169+
Condition="'@(docs)' != ''"
170+
DependsOnTargets="$(docsDependsOn);ComputedocsOutput"
171+
Outputs="%(docs.Outputs)"
172+
Inputs="%(docs.Identity);%(docs.AdditionalDependencies);$(MSBuildProjectFile)">
173+
<ItemGroup
174+
Condition="'@(SelectedFiles)' != ''">
175+
<docs
176+
Remove="@(docs)"
177+
Condition="'%(Identity)' != '@(SelectedFiles)'" />
178+
</ItemGroup>
179+
<ItemGroup>
180+
<docs_tlog
181+
Include="%(docs.Outputs)"
182+
Condition="'%(docs.Outputs)' != '' and '%(docs.ExcludedFromBuild)' != 'true'">
183+
<Source>@(docs, '|')</Source>
184+
</docs_tlog>
185+
</ItemGroup>
186+
<Message
187+
Importance="High"
188+
Text="%(docs.ExecutionDescription)" />
189+
<WriteLinesToFile
190+
Condition="'@(docs_tlog)' != '' and '%(docs_tlog.ExcludedFromBuild)' != 'true'"
191+
File="$(IntDir)$(ProjectName).write.1.tlog"
192+
Lines="^%(docs_tlog.Source);@(docs_tlog-&gt;'%(Fullpath)')" />
193+
<docs
194+
Condition="'@(docs)' != '' and '%(docs.ExcludedFromBuild)' != 'true'"
195+
CommandLineTemplate="%(docs.CommandLineTemplate)"
196+
AdditionalOptions="%(docs.AdditionalOptions)"
197+
Inputs="%(docs.Identity)" />
198+
</Target>
199+
<PropertyGroup>
200+
<ComputeLinkInputsTargets>
201+
$(ComputeLinkInputsTargets);
202+
ComputedocsOutput;
203+
</ComputeLinkInputsTargets>
204+
<ComputeLibInputsTargets>
205+
$(ComputeLibInputsTargets);
206+
ComputedocsOutput;
207+
</ComputeLibInputsTargets>
208+
</PropertyGroup>
209+
<Target
210+
Name="ComputedocsOutput"
211+
Condition="'@(docs)' != ''">
212+
<ItemGroup>
213+
<docsDirsToMake
214+
Condition="'@(docs)' != '' and '%(docs.ExcludedFromBuild)' != 'true'"
215+
Include="%(docs.Outputs)" />
216+
<Link
217+
Include="%(docsDirsToMake.Identity)"
218+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
219+
<Lib
220+
Include="%(docsDirsToMake.Identity)"
221+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
222+
<ImpLib
223+
Include="%(docsDirsToMake.Identity)"
224+
Condition="'%(Extension)'=='.obj' or '%(Extension)'=='.res' or '%(Extension)'=='.rsc' or '%(Extension)'=='.lib'" />
225+
</ItemGroup>
226+
<MakeDir
227+
Directories="@(docsDirsToMake-&gt;'%(RootDir)%(Directory)')" />
228+
</Target>
229+
</Project>

0 commit comments

Comments
 (0)