mirror of
https://github.com/crskycode/GARbro.git
synced 2024-11-30 17:05:37 +08:00
14a94d20f1
use LEX/YACC to parse IPT files.
184 lines
9.1 KiB
XML
184 lines
9.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
|
<PropertyGroup>
|
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
|
<ProjectGuid>{60054FD9-4472-4BB4-9E3D-2F80D3D22468}</ProjectGuid>
|
|
<OutputType>Library</OutputType>
|
|
<AppDesignerFolder>Properties</AppDesignerFolder>
|
|
<RootNamespace>GameRes.Extra</RootNamespace>
|
|
<AssemblyName>ArcExtra</AssemblyName>
|
|
<TargetFrameworkVersion>v4.6</TargetFrameworkVersion>
|
|
<FileAlignment>512</FileAlignment>
|
|
<NuGetPackageImportStamp>d57ff7cf</NuGetPackageImportStamp>
|
|
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
|
|
<TargetFrameworkProfile />
|
|
<RestorePackages>true</RestorePackages>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
|
<DebugSymbols>true</DebugSymbols>
|
|
<DebugType>full</DebugType>
|
|
<Optimize>false</Optimize>
|
|
<OutputPath>..\bin\Debug\</OutputPath>
|
|
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<BaseAddress>16777216</BaseAddress>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
|
<DebugType>none</DebugType>
|
|
<Optimize>true</Optimize>
|
|
<OutputPath>..\bin\Release\</OutputPath>
|
|
<DefineConstants>
|
|
</DefineConstants>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<WarningLevel>4</WarningLevel>
|
|
<BaseAddress>16777216</BaseAddress>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
</PropertyGroup>
|
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Prerelease|AnyCPU'">
|
|
<OutputPath>..\bin\Prerelease\</OutputPath>
|
|
<BaseAddress>16777216</BaseAddress>
|
|
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
|
|
<Optimize>true</Optimize>
|
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
|
<ErrorReport>prompt</ErrorReport>
|
|
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
|
|
</PropertyGroup>
|
|
<ItemGroup>
|
|
<Reference Include="Concentus">
|
|
<HintPath>..\packages\Concentus.1.1.7\lib\portable-net45+win+wpa81+wp80\Concentus.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Concentus.Oggfile">
|
|
<HintPath>..\packages\Concentus.OggFile.1.0.3\lib\portable-net45+win+wpa81+wp80\Concentus.Oggfile.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Microsoft.Deployment.Compression">
|
|
<HintPath>..\packages\MSFTCompressionCab.1.0.0\lib\Microsoft.Deployment.Compression.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="Microsoft.Deployment.Compression.Cab">
|
|
<HintPath>..\packages\MSFTCompressionCab.1.0.0\lib\Microsoft.Deployment.Compression.Cab.dll</HintPath>
|
|
</Reference>
|
|
<Reference Include="PresentationCore" />
|
|
<Reference Include="System" />
|
|
<Reference Include="System.ComponentModel.Composition" />
|
|
<Reference Include="System.Core" />
|
|
<Reference Include="System.Data.SQLite, Version=1.0.109.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139, processorArchitecture=MSIL">
|
|
<HintPath>..\packages\System.Data.SQLite.Core.1.0.109.2\lib\net46\System.Data.SQLite.dll</HintPath>
|
|
<Private>True</Private>
|
|
</Reference>
|
|
<Reference Include="System.Web.Extensions" />
|
|
<Reference Include="System.Xaml" />
|
|
<Reference Include="System.Xml.Linq" />
|
|
<Reference Include="System.Data.DataSetExtensions" />
|
|
<Reference Include="Microsoft.CSharp" />
|
|
<Reference Include="System.Data" />
|
|
<Reference Include="System.Xml" />
|
|
<Reference Include="WindowsBase" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Compile Include="Artemis\ImageIPT.cs" />
|
|
<Compile Include="Cabinet\ArcCAB.cs" />
|
|
<Compile Include="CellWorks\ArcDB.cs" />
|
|
<Compile Include="Artemis\GplexBuffers.cs" />
|
|
<Compile Include="Opus\AudioOPUS.cs" />
|
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
|
<Compile Include="RPGMaker\ArcRGSS.cs" />
|
|
<Compile Include="RPGMaker\AudioRPGMV.cs" />
|
|
<Compile Include="RPGMaker\ImageRPGMV.cs" />
|
|
<Compile Include="Artemis\ShiftReduceParserCode.cs" />
|
|
<Compile Include="WebP\ImageWEBP.cs" />
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\ArcFormats\ArcFormats.csproj">
|
|
<Project>{a8865685-27cc-427b-ac38-e48d2ad05df4}</Project>
|
|
<Name>ArcFormats</Name>
|
|
</ProjectReference>
|
|
<ProjectReference Include="..\GameRes\GameRes.csproj">
|
|
<Project>{453c087f-e416-4ae9-8c03-d8760da0574b}</Project>
|
|
<Name>GameRes</Name>
|
|
</ProjectReference>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<None Include="packages.config" />
|
|
<None Include="x64\libwebp.dll">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
<None Include="x86\libwebp.dll">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
</None>
|
|
</ItemGroup>
|
|
<ItemGroup>
|
|
<Folder Include="Key\" />
|
|
</ItemGroup>
|
|
<ItemGroup Label="IPTFiles">
|
|
<Compile Include="Artemis\IPT.Parser.cs">
|
|
<DependentUpon>IPT.parser</DependentUpon>
|
|
</Compile>
|
|
<Compile Include="Artemis\IPT.Parser.Generated.cs">
|
|
<AutoGen>True</AutoGen>
|
|
<DesignTime>True</DesignTime>
|
|
<DependentUpon>IPT.Language.grammar.y</DependentUpon>
|
|
</Compile>
|
|
<Compile Include="Artemis\IPT.Scanner.cs">
|
|
<DependentUpon>IPT.parser</DependentUpon>
|
|
</Compile>
|
|
<Compile Include="Artemis\IPT.Scanner.Generated.cs">
|
|
<AutoGen>True</AutoGen>
|
|
<DesignTime>True</DesignTime>
|
|
<DependentUpon>IPT.Language.analyzer.lex</DependentUpon>
|
|
</Compile>
|
|
<None Include="Artemis\IPT.Language.analyzer.lex">
|
|
<DependentUpon>IPT.parser</DependentUpon>
|
|
</None>
|
|
<None Include="Artemis\IPT.Language.grammar.y">
|
|
<DependentUpon>IPT.parser</DependentUpon>
|
|
</None>
|
|
<None Include="Artemis\IPT.parser" />
|
|
</ItemGroup>
|
|
<PropertyGroup Label="YltParsers">
|
|
<Names>ipt</Names>
|
|
</PropertyGroup>
|
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
|
<PropertyGroup>
|
|
<PreBuildEvent>perl "$(SolutionDir)inc-revision.pl" "$(ProjectPath)" $(ConfigurationName)
|
|
exit 0</PreBuildEvent>
|
|
</PropertyGroup>
|
|
<PropertyGroup Label="YltProperties">
|
|
<YltTools>$(SolutionDir)packages\YaccLexTools.0.2.2\tools\</YltTools>
|
|
<GplexTool>"$(YltTools)gplex.exe"</GplexTool>
|
|
<GppgTool>"$(YltTools)gppg.exe"</GppgTool>
|
|
</PropertyGroup>
|
|
<PropertyGroup Label="GenerateIPTProperties">
|
|
<IPTParser>$(ProjectDir)Artemis\IPT</IPTParser>
|
|
</PropertyGroup>
|
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
|
<PropertyGroup>
|
|
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
|
|
</PropertyGroup>
|
|
<Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
|
|
<Error Condition="!Exists('..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets'))" />
|
|
</Target>
|
|
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
|
<Import Project="..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets" Condition="Exists('..\packages\System.Data.SQLite.Core.1.0.109.2\build\net46\System.Data.SQLite.Core.targets')" />
|
|
<Target Name="BeforeBuild" DependsOnTargets="YltBuildGen" />
|
|
<Target Name="YltBuildGen" DependsOnTargets="GenerateIPT" />
|
|
<Target Name="GenerateIPT" Inputs="$(IPTParser).Language.analyzer.lex;$(IPTParser).Language.grammar.y" Outputs="$(IPTParser).Scanner.Generated.cs;$(IPTParser).Parser.Generated.cs">
|
|
<Message Text="Generating scanner for $(IPTParser) ..." />
|
|
<Exec Command="$(GplexTool) /codePage:UTF-8 "/out:$(IPTParser).Scanner.Generated.cs" "$(IPTParser).Language.analyzer.lex"" WorkingDirectory="$(ProjectDir)Artemis" Outputs="$(GenDir)Scanner.cs">
|
|
<Output TaskParameter="Outputs" ItemName="IPTScanner" />
|
|
</Exec>
|
|
<Message Text="Generating parser for $(IPTParser) ..." />
|
|
<Exec Command="$(GppgTool) /no-lines /gplex "$(IPTParser).Language.grammar.y" > "$(IPTParser).Parser.Generated.cs"" WorkingDirectory="$(ProjectDir)" Outputs="$(IPTParser).Parser.Generated.cs">
|
|
<Output TaskParameter="Outputs" ItemName="IPT" />
|
|
</Exec>
|
|
</Target>
|
|
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
|
Other similar extension points exist, see Microsoft.Common.targets.
|
|
<Target Name="BeforeBuild">
|
|
</Target>
|
|
<Target Name="AfterBuild">
|
|
</Target>
|
|
-->
|
|
</Project> |