mirror of
https://github.com/odrling/Aegisub
synced 2025-04-11 22:56:02 +02:00
Add msbuild build system for FFmpeg
This eliminates the need for a msys environment to build any part of Aegisub. Also happens to make building FFmpeg much faster (~3 minutes vs. ~10 minutes for me).
This commit is contained in:
parent
3d8071df7f
commit
eb2793f88d
@ -133,14 +133,6 @@
|
|||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- Library Paths -->
|
<!-- Library Paths -->
|
||||||
<StringProperty
|
|
||||||
Subtype="folder"
|
|
||||||
Name="MsysBasePath"
|
|
||||||
Category="Paths"
|
|
||||||
DisplayName="MSYS root"
|
|
||||||
Description="Root directory of a copy of msys with git installed. Only required if it is not on your PATH."
|
|
||||||
/>
|
|
||||||
|
|
||||||
<StringProperty
|
<StringProperty
|
||||||
Subtype="folder"
|
Subtype="folder"
|
||||||
Name="WinRarPath"
|
Name="WinRarPath"
|
||||||
|
@ -54,13 +54,9 @@
|
|||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="DownloadTgzFile.cs" />
|
<Compile Include="DownloadTgzFile.cs" />
|
||||||
<Compile Include="ExecShellScript.cs" />
|
|
||||||
<Compile Include="GitVersion.cs" />
|
<Compile Include="GitVersion.cs" />
|
||||||
<Compile Include="MsysPath.cs" />
|
|
||||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||||
<Compile Include="ShellWrapper.cs" />
|
|
||||||
<Compile Include="TarballProject.cs" />
|
<Compile Include="TarballProject.cs" />
|
||||||
<Compile Include="Utils.cs" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<None Include="packages.config" />
|
<None Include="packages.config" />
|
||||||
|
@ -1,48 +0,0 @@
|
|||||||
// Copyright (c) 2014, Thomas Goyne <plorkyeran@aegisub.org>
|
|
||||||
//
|
|
||||||
// Permission to use, copy, modify, and distribute this software for any
|
|
||||||
// purpose with or without fee is hereby granted, provided that the above
|
|
||||||
// copyright notice and this permission notice appear in all copies.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
||||||
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
||||||
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
||||||
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
||||||
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
||||||
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
||||||
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
//
|
|
||||||
// Aegisub Project http://www.aegisub.org/
|
|
||||||
|
|
||||||
using Microsoft.Build.Framework;
|
|
||||||
using Microsoft.Build.Utilities;
|
|
||||||
using System;
|
|
||||||
|
|
||||||
namespace BuildTasks {
|
|
||||||
public class ExecShellScript : Task {
|
|
||||||
[Required] public string WorkingDirectory { get; set; }
|
|
||||||
[Required] public string Command { get; set; }
|
|
||||||
[Required] public ITaskItem Configuration { get; set; }
|
|
||||||
public string Arguments { get; set; }
|
|
||||||
|
|
||||||
private string RealArgs() {
|
|
||||||
return string.Format("-c '{0} {1}'", Utils.MungePath(this.Command),
|
|
||||||
(this.Arguments ?? "").Replace("\r", "").Replace('\n', ' '));
|
|
||||||
}
|
|
||||||
|
|
||||||
public override bool Execute() {
|
|
||||||
try {
|
|
||||||
var sw = new ShellWrapper(this.Configuration);
|
|
||||||
sw.BuildEngine = this.BuildEngine;
|
|
||||||
sw.HostObject = this.HostObject;
|
|
||||||
sw.Arguments = this.RealArgs();
|
|
||||||
sw.WorkingDirectory = this.WorkingDirectory;
|
|
||||||
return sw.Execute();
|
|
||||||
}
|
|
||||||
catch (Exception e) {
|
|
||||||
this.Log.LogErrorFromException(e);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
// Copyright (c) 2014, Thomas Goyne <plorkyeran@aegisub.org>
|
|
||||||
//
|
|
||||||
// Permission to use, copy, modify, and distribute this software for any
|
|
||||||
// purpose with or without fee is hereby granted, provided that the above
|
|
||||||
// copyright notice and this permission notice appear in all copies.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
||||||
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
||||||
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
||||||
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
||||||
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
||||||
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
||||||
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
//
|
|
||||||
// Aegisub Project http://www.aegisub.org/
|
|
||||||
|
|
||||||
using Microsoft.Build.Framework;
|
|
||||||
using Microsoft.Build.Utilities;
|
|
||||||
using System;
|
|
||||||
|
|
||||||
namespace BuildTasks {
|
|
||||||
public class MsysPath : Task {
|
|
||||||
public string Path { get; set; }
|
|
||||||
[Output] public string Result { get; set; }
|
|
||||||
|
|
||||||
public override bool Execute() {
|
|
||||||
try {
|
|
||||||
this.Result = Utils.MungePath(this.Path);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
catch (Exception e) {
|
|
||||||
this.Log.LogErrorFromException(e);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,55 +0,0 @@
|
|||||||
// Copyright (c) 2014, Thomas Goyne <plorkyeran@aegisub.org>
|
|
||||||
//
|
|
||||||
// Permission to use, copy, modify, and distribute this software for any
|
|
||||||
// purpose with or without fee is hereby granted, provided that the above
|
|
||||||
// copyright notice and this permission notice appear in all copies.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
||||||
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
||||||
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
||||||
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
||||||
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
||||||
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
||||||
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
//
|
|
||||||
// Aegisub Project http://www.aegisub.org/
|
|
||||||
|
|
||||||
using Microsoft.Build.Framework;
|
|
||||||
using Microsoft.Build.Utilities;
|
|
||||||
using System;
|
|
||||||
using System.IO;
|
|
||||||
using System.Linq;
|
|
||||||
|
|
||||||
namespace BuildTasks {
|
|
||||||
public class ShellWrapper : ToolTask {
|
|
||||||
private ITaskItem _conf;
|
|
||||||
|
|
||||||
public string Arguments { get; set; }
|
|
||||||
public string WorkingDirectory { get; set; }
|
|
||||||
|
|
||||||
protected override string ToolName { get { return "sh.exe"; } }
|
|
||||||
protected override string GenerateFullPathToTool() { return _conf.GetMetadata("Sh"); }
|
|
||||||
protected override string GenerateCommandLineCommands() { return this.Arguments; }
|
|
||||||
protected override string GetWorkingDirectory() { return this.WorkingDirectory; }
|
|
||||||
|
|
||||||
public ShellWrapper(ITaskItem conf) {
|
|
||||||
_conf = conf;
|
|
||||||
}
|
|
||||||
|
|
||||||
public override bool Execute() {
|
|
||||||
if (!File.Exists(this.GenerateFullPathToTool()))
|
|
||||||
throw new Exception("sh.exe not found. Make sure the MSYS root is set to a correct location.");
|
|
||||||
if (!Directory.Exists(this.WorkingDirectory))
|
|
||||||
Directory.CreateDirectory(this.WorkingDirectory);
|
|
||||||
|
|
||||||
this.UseCommandProcessor = false;
|
|
||||||
this.StandardOutputImportance = "High";
|
|
||||||
this.EnvironmentVariables =
|
|
||||||
new string[] {"CC", "CPP", "CFLAGS", "PATH", "INCLUDE", "LIB"}
|
|
||||||
.Select(x => string.Format("{0}={1}", x, _conf.GetMetadata(x).Replace("\n", "").Replace(" ", "")))
|
|
||||||
.ToArray();
|
|
||||||
|
|
||||||
return base.Execute();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,29 +0,0 @@
|
|||||||
// Copyright (c) 2014, Thomas Goyne <plorkyeran@aegisub.org>
|
|
||||||
//
|
|
||||||
// Permission to use, copy, modify, and distribute this software for any
|
|
||||||
// purpose with or without fee is hereby granted, provided that the above
|
|
||||||
// copyright notice and this permission notice appear in all copies.
|
|
||||||
//
|
|
||||||
// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
|
||||||
// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
|
||||||
// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
|
||||||
// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
|
||||||
// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
|
||||||
// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
||||||
// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
//
|
|
||||||
// Aegisub Project http://www.aegisub.org/
|
|
||||||
|
|
||||||
using System.Text.RegularExpressions;
|
|
||||||
|
|
||||||
namespace BuildTasks {
|
|
||||||
static class Utils {
|
|
||||||
/// Convert an absolute windows path to an msys path
|
|
||||||
static public string MungePath(string path) {
|
|
||||||
var match = Regex.Match(path, @"([A-Za-z]):\\(.*)");
|
|
||||||
if (!match.Success)
|
|
||||||
return path;
|
|
||||||
return string.Format("/{0}/{1}", match.Groups[1].Value, match.Groups[2].Value.Replace('\\', '/'));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
@ -63,12 +63,4 @@
|
|||||||
<WxSrcDir>..\..\vendor\wxWidgets</WxSrcDir>
|
<WxSrcDir>..\..\vendor\wxWidgets</WxSrcDir>
|
||||||
<ZlibSrcDir>..\..\vendor\zlib</ZlibSrcDir>
|
<ZlibSrcDir>..\..\vendor\zlib</ZlibSrcDir>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(MsysBasePath)' == ''">
|
|
||||||
<MsysBasePath Condition="Exists('c:\msys\bin\git.exe')">c:\msys</MsysBasePath>
|
|
||||||
<MsysBasePath Condition="Exists('c:\msysgit\bin\git.exe')">c:\msysgit</MsysBasePath>
|
|
||||||
<MsysBasePath Condition="Exists('%PROGRAMFILES%\Git\bin\git.exe')">%PROGRAMFILES%\Git</MsysBasePath>
|
|
||||||
<MsysBasePath Condition="Exists('%PROGRAMFILES(X86)%\Git\bin\git.exe')">%PROGRAMFILES(X86)%\Git</MsysBasePath>
|
|
||||||
<MsysBasePath Condition="Exists('%PROGRAMW6432%\Git\bin\git.exe')">%PROGRAMW6432%\Git</MsysBasePath>
|
|
||||||
</PropertyGroup>
|
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
<PropertyGroup Label="AegisubConfiguration">
|
<PropertyGroup Label="AegisubConfiguration">
|
||||||
<AegisubProjectType>lib</AegisubProjectType>
|
<AegisubProjectType>lib</AegisubProjectType>
|
||||||
<SrcDir>..\..\vendor\csri\</SrcDir>
|
<SrcDir>..\..\vendor\csri\</SrcDir>
|
||||||
|
<HeaderRoot>$(SrcDir)include</HeaderRoot>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ImportGroup Label="PropertySheets">
|
<ImportGroup Label="PropertySheets">
|
||||||
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
|
<Import Project="$(MSBuildThisFileDirectory)..\aegisub.props" />
|
||||||
@ -25,9 +26,7 @@
|
|||||||
|
|
||||||
<!-- Source files -->
|
<!-- Source files -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<InstallHeader Include="$(SrcDir)\include\csri\*.h">
|
<InstallHeader Include="$(SrcDir)include\csri\*.h" />
|
||||||
<Destination>csri\</Destination>
|
|
||||||
</InstallHeader>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="$(SrcDir)include\csri\csri.h" />
|
<ClInclude Include="$(SrcDir)include\csri\csri.h" />
|
||||||
|
1724
build/ffmpeg/config-x64.asm
Normal file
1724
build/ffmpeg/config-x64.asm
Normal file
File diff suppressed because it is too large
Load Diff
1740
build/ffmpeg/config-x64.h
Normal file
1740
build/ffmpeg/config-x64.h
Normal file
File diff suppressed because it is too large
Load Diff
1724
build/ffmpeg/config-x86.asm
Normal file
1724
build/ffmpeg/config-x86.asm
Normal file
File diff suppressed because it is too large
Load Diff
1740
build/ffmpeg/config-x86.h
Normal file
1740
build/ffmpeg/config-x86.h
Normal file
File diff suppressed because it is too large
Load Diff
5
build/ffmpeg/config.h
Normal file
5
build/ffmpeg/config.h
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
#ifdef _WIN64
|
||||||
|
#include "config-x64.h"
|
||||||
|
#else
|
||||||
|
#include "config-x86.h"
|
||||||
|
#endif
|
1
build/ffmpeg/configure.sh
Executable file
1
build/ffmpeg/configure.sh
Executable file
@ -0,0 +1 @@
|
|||||||
|
./configure $@ --disable-avfilter --disable-avresample --disable-bzlib --disable-devices --disable-doc --disable-encoders --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-filters --disable-hwaccels --disable-muxers --disable-network --disable-postproc --disable-pthreads --disable-shared --disable-swresample --enable-avresample --enable-gpl --enable-runtime-cpudetect --enable-static --enable-zlib --extra-cflags=-D_SYSCRT --extra-cflags=-wd4005 --extra-cflags=-wd4189 --toolchain=msvc
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
7
build/ffmpeg/libavutil/avconfig.h
Normal file
7
build/ffmpeg/libavutil/avconfig.h
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
/* Generated by ffconf */
|
||||||
|
#ifndef AVUTIL_AVCONFIG_H
|
||||||
|
#define AVUTIL_AVCONFIG_H
|
||||||
|
#define AV_HAVE_BIGENDIAN 0
|
||||||
|
#define AV_HAVE_FAST_UNALIGNED 1
|
||||||
|
#define AV_HAVE_INCOMPATIBLE_LIBAV_ABI 0
|
||||||
|
#endif /* AVUTIL_AVCONFIG_H */
|
@ -16,6 +16,7 @@
|
|||||||
|
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Ffms2PreprocessorHaalisource Condition="'$(Ffms2UseAtl)'!='0'">HAALISOURCE;</Ffms2PreprocessorHaalisource>
|
<Ffms2PreprocessorHaalisource Condition="'$(Ffms2UseAtl)'!='0'">HAALISOURCE;</Ffms2PreprocessorHaalisource>
|
||||||
|
<HeaderRoot>$(FfmsSrcDir)\include</HeaderRoot>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
@ -56,7 +57,6 @@
|
|||||||
<None Include="$(FfmsSrcDir)\src\vapoursynth\vapoursynth.cpp" />
|
<None Include="$(FfmsSrcDir)\src\vapoursynth\vapoursynth.cpp" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\config\libs.cpp" />
|
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\core\audiosource.cpp" />
|
<ClCompile Include="$(FfmsSrcDir)\src\core\audiosource.cpp" />
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\core\codectype.cpp" />
|
<ClCompile Include="$(FfmsSrcDir)\src\core\codectype.cpp" />
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\core\ffms.cpp" />
|
<ClCompile Include="$(FfmsSrcDir)\src\core\ffms.cpp" />
|
||||||
@ -89,7 +89,6 @@
|
|||||||
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\avssources.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\avssources.h" />
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\avsutils.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\avsutils.h" />
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\ffswscale.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\ffswscale.h" />
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\config\msvc-config.h" />
|
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\core\audiosource.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\core\audiosource.h" />
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\core\codectype.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\core\codectype.h" />
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\core\coparser.h" />
|
<ClInclude Include="$(FfmsSrcDir)\src\core\coparser.h" />
|
||||||
|
@ -19,9 +19,6 @@
|
|||||||
<Filter Include="Avisynth">
|
<Filter Include="Avisynth">
|
||||||
<UniqueIdentifier>{fab6c2c7-eeae-4009-a932-fc079402db63}</UniqueIdentifier>
|
<UniqueIdentifier>{fab6c2c7-eeae-4009-a932-fc079402db63}</UniqueIdentifier>
|
||||||
</Filter>
|
</Filter>
|
||||||
<Filter Include="Config">
|
|
||||||
<UniqueIdentifier>{ac81097c-9043-43fa-a184-ea4c22091059}</UniqueIdentifier>
|
|
||||||
</Filter>
|
|
||||||
<Filter Include="VapourSynth">
|
<Filter Include="VapourSynth">
|
||||||
<UniqueIdentifier>{8a87437e-fe04-4b74-a917-f8c108247e3f}</UniqueIdentifier>
|
<UniqueIdentifier>{8a87437e-fe04-4b74-a917-f8c108247e3f}</UniqueIdentifier>
|
||||||
</Filter>
|
</Filter>
|
||||||
@ -93,9 +90,6 @@
|
|||||||
<None Include="$(FfmsSrcDir)\src\avisynth\ffswscale.cpp">
|
<None Include="$(FfmsSrcDir)\src\avisynth\ffswscale.cpp">
|
||||||
<Filter>Avisynth</Filter>
|
<Filter>Avisynth</Filter>
|
||||||
</None>
|
</None>
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\config\libs.cpp">
|
|
||||||
<Filter>Config</Filter>
|
|
||||||
</ClCompile>
|
|
||||||
<ClCompile Include="$(FfmsSrcDir)\src\core\videoutils.cpp">
|
<ClCompile Include="$(FfmsSrcDir)\src\core\videoutils.cpp">
|
||||||
<Filter>Video</Filter>
|
<Filter>Video</Filter>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
@ -170,9 +164,6 @@
|
|||||||
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\ffswscale.h">
|
<ClInclude Include="$(FfmsSrcDir)\src\avisynth\ffswscale.h">
|
||||||
<Filter>Avisynth</Filter>
|
<Filter>Avisynth</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\config\msvc-config.h">
|
|
||||||
<Filter>Config</Filter>
|
|
||||||
</ClInclude>
|
|
||||||
<ClInclude Include="$(FfmsSrcDir)\src\core\videoutils.h">
|
<ClInclude Include="$(FfmsSrcDir)\src\core\videoutils.h">
|
||||||
<Filter>Video</Filter>
|
<Filter>Video</Filter>
|
||||||
</ClInclude>
|
</ClInclude>
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<HeaderRoot>$(FftwSrcDir)\api</HeaderRoot>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<HeaderRoot>$(FontconfigSrcDir)</HeaderRoot>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>
|
||||||
@ -31,9 +34,7 @@
|
|||||||
|
|
||||||
<!-- Source files -->
|
<!-- Source files -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<InstallHeader Include="$(FontconfigSrcDir)\fontconfig\*.h">
|
<InstallHeader Include="$(FontconfigSrcDir)\fontconfig\*.h" />
|
||||||
<Destination>fontconfig\</Destination>
|
|
||||||
</InstallHeader>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(FontconfigSrcDir)\src\fcatomic.c" />
|
<ClCompile Include="$(FontconfigSrcDir)\src\fcatomic.c" />
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<HeaderRoot>$(Freetype2SrcDir)\include</HeaderRoot>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>$(Freetype2SrcDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(Freetype2SrcDir)\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
@ -30,16 +33,7 @@
|
|||||||
|
|
||||||
<!-- Source files -->
|
<!-- Source files -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<InstallHeader Include="$(Freetype2SrcDir)\include\*.h" />
|
<InstallHeader Include="$(Freetype2SrcDir)\include\**\*.h" />
|
||||||
<InstallHeader Include="$(Freetype2SrcDir)\include\config\*.h">
|
|
||||||
<Destination>config\</Destination>
|
|
||||||
</InstallHeader>
|
|
||||||
<InstallHeader Include="$(Freetype2SrcDir)\include\internal\*.h">
|
|
||||||
<Destination>internal\</Destination>
|
|
||||||
</InstallHeader>
|
|
||||||
<InstallHeader Include="$(Freetype2SrcDir)\include\internal\services*.h">
|
|
||||||
<Destination>internal\services\</Destination>
|
|
||||||
</InstallHeader>
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(Freetype2SrcDir)\src\autofit\autofit.c" />
|
<ClCompile Include="$(Freetype2SrcDir)\src\autofit\autofit.c" />
|
||||||
|
@ -54,8 +54,8 @@
|
|||||||
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi-run.c" />
|
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi-run.c" />
|
||||||
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi-shape.c" />
|
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi-shape.c" />
|
||||||
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi.c" />
|
<ClCompile Include="$(FribidiSrcDir)\lib\fribidi.c" />
|
||||||
<InstallHeader Include="$(FribidiSrcDir)\lib\*.h;$(MSBuildThisFileDirectory)fribidi-config.h">
|
<InstallHeaderTo Include="$(FribidiSrcDir)\lib\*.h;$(MSBuildThisFileDirectory)fribidi-config.h">
|
||||||
<Destination>fribidi\</Destination>
|
<Destination>fribidi\</Destination>
|
||||||
</InstallHeader>
|
</InstallHeaderTo>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
||||||
|
@ -355,9 +355,9 @@
|
|||||||
<ClInclude Include="$(IcuSrcDir)\common\uvectr32.h" />
|
<ClInclude Include="$(IcuSrcDir)\common\uvectr32.h" />
|
||||||
<ClInclude Include="$(IcuSrcDir)\common\uvectr64.h" />
|
<ClInclude Include="$(IcuSrcDir)\common\uvectr64.h" />
|
||||||
<ClInclude Include="$(IcuSrcDir)\common\wintz.h" />
|
<ClInclude Include="$(IcuSrcDir)\common\wintz.h" />
|
||||||
<InstallHeader Include="$(IcuSrcDir)\common\unicode\*.h">
|
<InstallHeaderTo Include="$(IcuSrcDir)\common\unicode\*.h">
|
||||||
<Destination>unicode\</Destination>
|
<Destination>unicode\</Destination>
|
||||||
</InstallHeader>
|
</InstallHeaderTo>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(IcuSrcDir)\i18n\filteredbrk.cpp" />
|
<ClCompile Include="$(IcuSrcDir)\i18n\filteredbrk.cpp" />
|
||||||
@ -680,9 +680,9 @@
|
|||||||
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_conf.h" />
|
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_conf.h" />
|
||||||
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_impl.h" />
|
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_impl.h" />
|
||||||
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_wsconf.h" />
|
<ClInclude Include="$(IcuSrcDir)\i18n\uspoof_wsconf.h" />
|
||||||
<InstallHeader Include="$(IcuSrcDir)\i18n\unicode\*.h">
|
<InstallHeaderTo Include="$(IcuSrcDir)\i18n\unicode\*.h">
|
||||||
<Destination>unicode\</Destination>
|
<Destination>unicode\</Destination>
|
||||||
</InstallHeader>
|
</InstallHeaderTo>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ProjectReference Include="..\luajit-minilua\luajit-minilua.vcxproj">
|
<ProjectReference Include="..\luajit-minilua\luajit-minilua.vcxproj">
|
||||||
|
@ -4,11 +4,23 @@
|
|||||||
Name="InstallHeaders"
|
Name="InstallHeaders"
|
||||||
AfterTargets="ClCompile"
|
AfterTargets="ClCompile"
|
||||||
Inputs="@(InstallHeader)"
|
Inputs="@(InstallHeader)"
|
||||||
Outputs="$(AegisubSourceBase)include\%(InstallHeader.Destination)%(Filename)%(Extension)"
|
Outputs="@(InstallHeader->Replace($(HeaderRoot), $(AegisubSourceBase)include))"
|
||||||
>
|
>
|
||||||
<Copy
|
<Copy
|
||||||
SourceFiles="@(InstallHeader)"
|
SourceFiles="@(InstallHeader)"
|
||||||
DestinationFiles="$(AegisubSourceBase)include\%(InstallHeader.Destination)%(Filename)%(Extension)"
|
DestinationFiles="@(InstallHeader->Replace($(HeaderRoot), $(AegisubSourceBase)include))"
|
||||||
|
SkipUnchangedFiles="true"
|
||||||
|
/>
|
||||||
|
</Target>
|
||||||
|
<Target
|
||||||
|
Name="InstallHeadersTo"
|
||||||
|
AfterTargets="ClCompile"
|
||||||
|
Inputs="@(InstallHeaderTo)"
|
||||||
|
Outputs="@(InstallHeaderTo -> '$(AegisubSourceBase)include\%(Destination)%(Filename)%(Extension)')"
|
||||||
|
>
|
||||||
|
<Copy
|
||||||
|
SourceFiles="@(InstallHeaderTo)"
|
||||||
|
DestinationFiles="@(InstallHeaderTo -> '$(AegisubSourceBase)include\%(Destination)%(Filename)%(Extension)')"
|
||||||
SkipUnchangedFiles="true"
|
SkipUnchangedFiles="true"
|
||||||
/>
|
/>
|
||||||
</Target>
|
</Target>
|
||||||
|
@ -29,15 +29,15 @@
|
|||||||
%(PreprocessorDefinitions)
|
%(PreprocessorDefinitions)
|
||||||
</PreprocessorDefinitions>
|
</PreprocessorDefinitions>
|
||||||
</ClCompile>
|
</ClCompile>
|
||||||
<InstallHeader>
|
<InstallHeaderTo>
|
||||||
<Destination>ass\</Destination>
|
<Destination>ass\</Destination>
|
||||||
</InstallHeader>
|
</InstallHeaderTo>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
|
||||||
<!-- Source files -->
|
<!-- Source files -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<InstallHeader Include="$(LibassSrcDir)\libass\ass.h" />
|
<InstallHeaderTo Include="$(LibassSrcDir)\libass\ass.h" />
|
||||||
<InstallHeader Include="$(LibassSrcDir)\libass\ass_types.h" />
|
<InstallHeaderTo Include="$(LibassSrcDir)\libass\ass_types.h" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClInclude Include="$(LibassSrcDir)\libass\ass.h" />
|
<ClInclude Include="$(LibassSrcDir)\libass\ass.h" />
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<HeaderRoot>$(SrcDir)\include</HeaderRoot>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<AdditionalIncludeDirectories>$(SrcDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
<AdditionalIncludeDirectories>$(SrcDir)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||||
|
@ -15,6 +15,9 @@
|
|||||||
</ImportGroup>
|
</ImportGroup>
|
||||||
|
|
||||||
<!-- Project specific configuration -->
|
<!-- Project specific configuration -->
|
||||||
|
<PropertyGroup>
|
||||||
|
<HeaderRoot>$(SrcDir)\include</HeaderRoot>
|
||||||
|
</PropertyGroup>
|
||||||
<ItemDefinitionGroup>
|
<ItemDefinitionGroup>
|
||||||
<ClCompile>
|
<ClCompile>
|
||||||
<PreprocessorDefinitions>
|
<PreprocessorDefinitions>
|
||||||
|
@ -4,27 +4,6 @@
|
|||||||
<_PropertySheetDisplayName>Custom Tasks</_PropertySheetDisplayName>
|
<_PropertySheetDisplayName>Custom Tasks</_PropertySheetDisplayName>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<ExecShellScript Include=".">
|
|
||||||
<CC>cl</CC>
|
|
||||||
<CFLAGS>-nologo</CFLAGS>
|
|
||||||
<Configuration>$(Configuration)</Configuration>
|
|
||||||
<Platform>$(Platform)</Platform>
|
|
||||||
<Sh>$(MsysBasePath)\bin\sh.exe</Sh>
|
|
||||||
<INCLUDE>$(MSBuildProjectDirectory);$(AegisubSourceBase)\include;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\include;C:\Program Files (x86)\Windows Kits\8.1\Include\um;C:\Program Files (x86)\Windows Kits\8.1\Include\shared;</INCLUDE>
|
|
||||||
<PATH Condition="'$(Platform)'=='Win32'">$(MsysBasePath)\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin;</PATH>
|
|
||||||
<PATH Condition="'$(Platform)'=='x64'">$(MsysBasePath)\bin;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\amd64;</PATH>
|
|
||||||
<LIB Condition="'$(Platform)'=='Win32'">$(AegisubLibraryDir);C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x86;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib;</LIB>
|
|
||||||
<LIB Condition="'$(Platform)'=='x64'">$(AegisubLibraryDir);C:\Program Files (x86)\Windows Kits\8.1\Lib\winv6.3\um\x64;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\amd64;C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\atlmfc\lib\amd64;</LIB>
|
|
||||||
</ExecShellScript>
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<GmakeParallelBuild Condition="'$(GmakeParallelBuild)'==''">-j$(NUMBER_OF_PROCESSORS)</GmakeParallelBuild>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<UsingTask TaskName="ExecShellScript" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
|
|
||||||
<UsingTask TaskName="MsysPath" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
|
|
||||||
<UsingTask TaskName="GitVersion" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
|
<UsingTask TaskName="GitVersion" AssemblyFile="$(AegisubBinaryDir)BuildTasks.dll" />
|
||||||
</Project>
|
</Project>
|
||||||
|
|
||||||
|
@ -3,10 +3,6 @@
|
|||||||
<PropertyGroup Label="Globals">
|
<PropertyGroup Label="Globals">
|
||||||
<ProjectGuid>{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}</ProjectGuid>
|
<ProjectGuid>{10F22A5A-DD9E-44A1-BA2E-2A9A7C78B0EE}</ProjectGuid>
|
||||||
<RootNamespace>zlib</RootNamespace>
|
<RootNamespace>zlib</RootNamespace>
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<!-- Aegisub project configuration -->
|
|
||||||
<PropertyGroup Label="AegisubConfiguration">
|
|
||||||
<AegisubProjectType>lib</AegisubProjectType>
|
<AegisubProjectType>lib</AegisubProjectType>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
@ -24,8 +20,8 @@
|
|||||||
|
|
||||||
<!-- Source files -->
|
<!-- Source files -->
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<InstallHeader Include="$(ZlibSrcDir)\zlib.h" />
|
<InstallHeaderTo Include="$(ZlibSrcDir)\zlib.h" />
|
||||||
<InstallHeader Include="$(MSBuildThisFileDirectory)\zconf.h" />
|
<InstallHeaderTo Include="$(MSBuildThisFileDirectory)\zconf.h" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<ClCompile Include="$(ZlibSrcDir)\*.c" />
|
<ClCompile Include="$(ZlibSrcDir)\*.c" />
|
||||||
|
Loading…
x
Reference in New Issue
Block a user