summaryrefslogtreecommitdiff
path: root/xsd/dist/etc/vc-1x.0/xsd-cxx-tree.targets
blob: 6156ec2cfc53470def9003e6d5d575df70a4265d (plain)
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
96
97
98
99
100
101
102
103
104
105
106
107
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup>
    <PropertyPageSchema
      Include="$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml" />
    <AvailableItemName
      Include="CXX_Tree_Mapping_Rule">
      <Targets>XsdCompile</Targets>
    </AvailableItemName>
  </ItemGroup>
  <UsingTask
    TaskName="CXX_Tree_Mapping_Rule"
    TaskFactory="XamlTaskFactory"
    AssemblyName="Microsoft.Build.Tasks.v4.0">
    <Task>$(MSBuildThisFileDirectory)$(MSBuildThisFileName).xml</Task>
  </UsingTask>
  <Target
    Name="XsdCompile"
    BeforeTargets="$(CXX_Tree_Mapping_RuleBeforeTargets)"
    AfterTargets="$(CXX_Tree_Mapping_RuleAfterTargets)"
    Condition="'@(CXX_Tree_Mapping_Rule)' != ''"
    DependsOnTargets="$(CXX_Tree_Mapping_RuleDependsOn);XsdOutputDir"
    Outputs="%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.HeaderSuffix);%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.SourceSuffix)"
    Inputs="%(CXX_Tree_Mapping_Rule.Identity);%(CXX_Tree_Mapping_Rule.AdditionalDependencies);$(MSBuildProjectFile)">
    <ItemGroup
      Condition="'@(SelectedFiles)' != ''">
      <CXX_Tree_Mapping_Rule
        Remove="@(CXX_Tree_Mapping_Rule)"
        Condition="'%(Identity)' != '@(SelectedFiles)'" />
    </ItemGroup>
    <ItemGroup>
      <CXX_Tree_Mapping_Rule_tlog
        Include="%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.HeaderSuffix);%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.SourceSuffix)"
        Condition="'%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.HeaderSuffix);%(CXX_Tree_Mapping_Rule.OutDir)\%(CXX_Tree_Mapping_Rule.Filename)%(CXX_Tree_Mapping_Rule.SourceSuffix)' != '' and '%(CXX_Tree_Mapping_Rule.ExcludedFromBuild)' != 'true'">
        <Source>@(CXX_Tree_Mapping_Rule, '|')</Source>
      </CXX_Tree_Mapping_Rule_tlog>
    </ItemGroup>
    <Message
      Importance="High"
      Text="%(CXX_Tree_Mapping_Rule.ExecutionDescription)" />
    <WriteLinesToFile
      Condition="'@(CXX_Tree_Mapping_Rule_tlog)' != '' and '%(CXX_Tree_Mapping_Rule_tlog.ExcludedFromBuild)' != 'true'"
      File="$(IntDir)$(ProjectName).write.1.tlog"
      Lines="^%(CXX_Tree_Mapping_Rule_tlog.Source);@(CXX_Tree_Mapping_Rule_tlog-&gt;'%(Fullpath)')" />
    <CXX_Tree_Mapping_Rule
      Condition="'@(CXX_Tree_Mapping_Rule)' != '' and '%(CXX_Tree_Mapping_Rule.ExcludedFromBuild)' != 'true'"
      CommandLineTemplate="%(CXX_Tree_Mapping_Rule.CommandLineTemplate)"
      ProprietaryLicense="%(CXX_Tree_Mapping_Rule.ProprietaryLicense)"
      CxxStd="%(CXX_Tree_Mapping_Rule.CxxStd)"
      GenInline="%(CXX_Tree_Mapping_Rule.GenInline)"
      GenForward="%(CXX_Tree_Mapping_Rule.GenForward)"
      GenSerialization="%(CXX_Tree_Mapping_Rule.GenSerialization)"
      SupParsing="%(CXX_Tree_Mapping_Rule.SupParsing)"
      GenPolymorphic="%(CXX_Tree_Mapping_Rule.GenPolymorphic)"
      PolymorphicTypeAll="%(CXX_Tree_Mapping_Rule.PolymorphicTypeAll)"
      GenOstream="%(CXX_Tree_Mapping_Rule.GenOstream)"
      GenDoxygen="%(CXX_Tree_Mapping_Rule.GenDoxygen)"
      GenComparison="%(CXX_Tree_Mapping_Rule.GenComparison)"
      GenDefaultCtor="%(CXX_Tree_Mapping_Rule.GenDefaultCtor)"
      GenFromBaseCtor="%(CXX_Tree_Mapping_Rule.GenFromBaseCtor)"
      GenDetach="%(CXX_Tree_Mapping_Rule.GenDetach)"
      GenWildcard="%(CXX_Tree_Mapping_Rule.GenWildcard)"
      GenAnyType="%(CXX_Tree_Mapping_Rule.GenAnyType)"
      GenElementType="%(CXX_Tree_Mapping_Rule.GenElementType)"
      GenElementMap="%(CXX_Tree_Mapping_Rule.GenElementMap)"
      GenIntellisense="%(CXX_Tree_Mapping_Rule.GenIntellisense)"
      OutDir="%(CXX_Tree_Mapping_Rule.OutDir)"
      HeaderSuffix="%(CXX_Tree_Mapping_Rule.HeaderSuffix)"
      SourceSuffix="%(CXX_Tree_Mapping_Rule.SourceSuffix)"
      InlineSuffix="%(CXX_Tree_Mapping_Rule.InlineSuffix)"
      ForwardSuffix="%(CXX_Tree_Mapping_Rule.ForwardSuffix)"
      NamespaceMap="%(CXX_Tree_Mapping_Rule.NamespaceMap)"
      PolymorphicType="%(CXX_Tree_Mapping_Rule.PolymorphicType)"
      RootElement="%(CXX_Tree_Mapping_Rule.RootElement)"
      ExportSymbol="%(CXX_Tree_Mapping_Rule.ExportSymbol)"
      HxxPrologue="%(CXX_Tree_Mapping_Rule.HxxPrologue)"
      HxxEpilogue="%(CXX_Tree_Mapping_Rule.HxxEpilogue)"
      CharType="%(CXX_Tree_Mapping_Rule.CharType)"
      CharEncoding="%(CXX_Tree_Mapping_Rule.CharEncoding)"
      TypeNaming="%(CXX_Tree_Mapping_Rule.TypeNaming)"
      FunctionNaming="%(CXX_Tree_Mapping_Rule.FunctionNaming)"
      AdditionalOptions="%(CXX_Tree_Mapping_Rule.AdditionalOptions)"
      Inputs="%(CXX_Tree_Mapping_Rule.Identity)" />
  </Target>
  <Target
    Name="XsdClean"
    BeforeTargets="CoreCppClean"
    AfterTargets="_PrepareForClean"
    Condition="'@(CXX_Tree_Mapping_Rule)' != ''">
    <PropertyGroup>
      <XsdCleanFilePatternsToDelete>@(CXX_Tree_Mapping_Rule->Metadata('OutDir')->Distinct())\@(CXX_Tree_Mapping_Rule->Metadata('Filename')->Distinct())@(CXX_Tree_Mapping_Rule->Metadata('HeaderSuffix')->Distinct());@(CXX_Tree_Mapping_Rule->Metadata('OutDir')->Distinct())\@(CXX_Tree_Mapping_Rule->Metadata('Filename')->Distinct())@(CXX_Tree_Mapping_Rule->Metadata('SourceSuffix')->Distinct());@(CXX_Tree_Mapping_Rule->Metadata('OutDir')->Distinct())\@(CXX_Tree_Mapping_Rule->Metadata('Filename')->Distinct())@(CXX_Tree_Mapping_Rule->Metadata('InlineSuffix')->Distinct());@(CXX_Tree_Mapping_Rule->Metadata('OutDir')->Distinct())\@(CXX_Tree_Mapping_Rule->Metadata('Filename')->Distinct())@(CXX_Tree_Mapping_Rule->Metadata('ForwardSuffix')->Distinct())</XsdCleanFilePatternsToDelete>
    </PropertyGroup>
    <ItemGroup>
      <CoreCppClean>
        <FilePatternsToDelete
          Condition="'%(CoreCppClean.FilePatternsToDelete)' != ''">%(CoreCppClean.FilePatternsToDelete);$(XsdCleanFilePatternsToDelete)</FilePatternsToDelete>
        <FilePatternsToDelete
          Condition="'%(CoreCppClean.FilePatternsToDelete)' == ''">$(XsdCleanFilePatternsToDelete)</FilePatternsToDelete>
      </CoreCppClean>
    </ItemGroup>
  </Target>
  <Target
    Name="XsdOutputDir"
    Condition="'@(CXX_Tree_Mapping_Rule)' != ''">
    <MakeDir Directories="@(CXX_Tree_Mapping_Rule->Metadata('OutDir')->Distinct()->ClearMetadata())" />
  </Target>
</Project>