forked from scottlerch/HostsFileEditor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathHostsFileEditor.proj
95 lines (80 loc) · 3.14 KB
/
HostsFileEditor.proj
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<!--
Copyright 2011 Scott M. Lerch
This file is part of HostsFileEditor.
HostsFileEditor is free software: you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation, either version 2 of the License, or (at your option)
any later version.
HostsFileEditor is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
You should have received a copy of the GNU General Public License along
with HostsFileEditor. If not, see http://www.gnu.org/licenses/.
-->
<!-- This is the main MSBuild configuration file -->
<Project DefaultTargets = "Build"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" >
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Release</Configuration>
<Platform Condition=" '$(Platform)' == '' ">Any CPU</Platform>
</PropertyGroup>
<Target Name="CollectBuiltFiles">
<CreateItem
Condition=" '$(Configuration)' == 'Release'"
Include=".\src\\**\bin\$(Configuration)\\**\*.*;.\setup\\**\bin\$(Configuration)\*.*"
Exclude=".\src\\**\bin\$(Configuration)\\**\*.pdb;.\\**\bin\$(Configuration)\\**\*.vshost.exe">
<Output
TaskParameter="Include"
ItemName="BuildFiles"/>
</CreateItem>
<CreateItem
Condition=" '$(Configuration)' == 'Debug'"
Include=".\src\\**\bin\$(Configuration)\\**\*.*;.\setup\\**\bin\$(Configuration)\*.*"
Exclude=".\\**\bin\$(Configuration)\\**\*.vshost.exe">
<Output
TaskParameter="Include"
ItemName="BuildFiles"/>
</CreateItem>
</Target>
<!-- ==================== Clean Targets ====================== -->
<Target Name = "CleanBin">
<CreateItem
Include=".\bin\*.*">
<Output
TaskParameter="Include"
ItemName="BinFiles"/>
</CreateItem>
<Delete Files="@(BinFiles)" />
</Target>
<Target Name = "Clean">
<CreateItem
Include=".\src\\**\bin\\**\*.*;.\setup\\**\bin\\**\*.*">
<Output
TaskParameter="Include"
ItemName="CleanFiles"/>
</CreateItem>
<Delete Files="@(CleanFiles)" />
</Target>
<!-- ==================== Build Targets ====================== -->
<Target Name = "Build" DependsOnTargets="InternalBuild;CollectBuiltFiles">
<Message Text="Copying @(BuildFiles) to bin" />
<Copy SourceFiles="@(BuildFiles)" DestinationFolder="bin" />
<Message Text="Build Complete!"/>
</Target>
<Target Name="InternalBuild" DependsOnTargets = "CleanBin;CreateDirectories">
<CreateItem
Include=".\*.sln">
<Output
TaskParameter="Include"
ItemName="SolutionFiles"/>
</CreateItem>
<MSBuild Projects="@(SolutionFiles)" Targets="Build"
Properties="Configuration=$(Configuration);Platform=$(Platform)" />
</Target>
<Target Name = "CreateDirectories">
<MakeDir Directories="bin" Condition="!Exists('bin')" />
<MakeDir Directories="docs" Condition="!Exists('docs')" />
<MakeDir Directories="logs" Condition="!Exists('logs')" />
</Target>
</Project>