mirror of https://github.com/odrling/Aegisub
111 lines
3.7 KiB
XML
111 lines
3.7 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
<PropertyGroup Label="Globals">
|
|
<ProjectGuid>{FB8E8D19-A4D6-4181-943C-282075F49B41}</ProjectGuid>
|
|
<Keyword>MakeFileProj</Keyword>
|
|
<ConfigurationType>Makefile</ConfigurationType>
|
|
</PropertyGroup>
|
|
|
|
<!-- Aegisub project configuration -->
|
|
<ImportGroup Label="PropertySheets">
|
|
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
|
|
</ImportGroup>
|
|
|
|
<PropertyGroup Label="ConfigArgs">
|
|
<Cflags>-nologo -DFRIBIDI_ENTRY=\"\"</Cflags>
|
|
<CfgDebug Condition="'$(Configuration)' == 'Debug'">--enable-debug CFLAGS="-MDd $(Cflags)"</CfgDebug>
|
|
<CfgDebug Condition="'$(Configuration)' == 'Release'">--disable-debug CFLAGS="-MD $(Cflags)"</CfgDebug>
|
|
<CfgArgs>
|
|
--enable-static
|
|
--disable-shared
|
|
--disable-dependency-tracking
|
|
--without-glib
|
|
$(CfgDebug)
|
|
</CfgArgs>
|
|
<AbsSrcDir>$([System.IO.Path]::GetFullPath('$(MSBuildThisFileDirectory)$(FribidiSrcDir)'))</AbsSrcDir>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<AutomakeFiles Include="$(AbsSrcDir)\**\*.am" />
|
|
<SourceFiles Include="$(AbsSrcDir)\**\*.c" />
|
|
<SourceFiles Include="$(AbsSrcDir)\**\*.h" />
|
|
</ItemGroup>
|
|
<Target Name="Bootstrap"
|
|
Inputs="$(AbsSrcDir)\configure.ac;@(AutomakeFiles)"
|
|
Outputs="$(AbsSrcDir)\configure"
|
|
>
|
|
<ExecShellScript
|
|
Command="$(AbsSrcDir)\bootstrap"
|
|
WorkingDirectory="$(AbsSrcDir)"
|
|
Configuration="@(ExecShellScript)"
|
|
/>
|
|
</Target>
|
|
|
|
<Target Name="Configure"
|
|
Inputs="$(AbsSrcDir)\configure"
|
|
Outputs="$(AegisubObjectDir)Makefile"
|
|
>
|
|
<MsysPath Path="$(AegisubObjectDir)\temp">
|
|
<Output TaskParameter="Result" PropertyName="CfgPrefix" />
|
|
</MsysPath>
|
|
|
|
<MsysPath Path="$(MSBuildThisFileDirectory)../../include">
|
|
<Output TaskParameter="Result" PropertyName="CfgIncludePrefix" />
|
|
</MsysPath>
|
|
|
|
<MsysPath Path="$(AegisubLibraryDir)">
|
|
<Output TaskParameter="Result" PropertyName="CfgLibPrefix" />
|
|
</MsysPath>
|
|
|
|
<ExecShellScript
|
|
Command="$(AbsSrcDir)\configure"
|
|
Arguments="$(CfgArgs) --prefix=$(CfgPrefix) --libdir=$(CfgLibPrefix) --includedir=$(CfgIncludePrefix)"
|
|
WorkingDirectory="$(AegisubObjectDir)"
|
|
Configuration="@(ExecShellScript)"
|
|
/>
|
|
|
|
<!-- fribidi defines the symbols to export twice, which causes errors -->
|
|
<UpdateFile File="$(AegisubObjectDir)lib\Makefile" Find=" %24(am__append_1)" Replacement="" />
|
|
<!-- We only want the library and the docs want c2man, so remove
|
|
unused stuff from SUBDIRS -->
|
|
<UpdateFile File="$(AegisubObjectDir)Makefile" Find=" bin doc test" Replacement="" />
|
|
</Target>
|
|
|
|
<Target Name="Compile"
|
|
Inputs="$(AegisubObjectDir)Makefile;@(SourceFiles)"
|
|
Outputs="$(AegisubObjectDir)lib\.libs\fribidi.lib"
|
|
>
|
|
<ExecShellScript
|
|
Command="make"
|
|
Arguments=" "
|
|
WorkingDirectory="$(AegisubObjectDir)"
|
|
Configuration="@(ExecShellScript)"
|
|
/>
|
|
<Touch Files="$(AegisubObjectDir)lib\.libs\fribidi.lib" />
|
|
</Target>
|
|
|
|
<Target Name="Install"
|
|
Inputs="$(AegisubObjectDir)lib\.libs\fribidi.lib"
|
|
Outputs="$(AegisubLibraryDir)fribidi.lib"
|
|
>
|
|
<ExecShellScript
|
|
Command="make install"
|
|
WorkingDirectory="$(AegisubObjectDir)"
|
|
Configuration="@(ExecShellScript)"
|
|
/>
|
|
</Target>
|
|
|
|
<Target Name="Build">
|
|
<Error Condition="!Exists('$(AbsSrcDir)')" Text="Fribidi source not found at '$(AbsSrcDir)'" />
|
|
<CallTarget Targets="Bootstrap;Configure;Compile;Install" />
|
|
</Target>
|
|
|
|
<Target Name="Clean">
|
|
<RemoveDir Directories="$(AegisubObjectDir)" ContinueOnError="WarnAndContinue" />
|
|
</Target>
|
|
|
|
<Target Name="Rebuild">
|
|
<CallTarget Targets="Clean;Build" />
|
|
</Target>
|
|
</Project>
|