WinRT: added NuGet-package creation support to WinRT build script

This commit is contained in:
David Ludwig 2015-12-01 22:07:24 -05:00
parent 9d304679f0
commit 357886616e
5 changed files with 164 additions and 16 deletions

View file

@ -0,0 +1,23 @@
<?xml version="1.0"?>
<package >
<metadata>
<id>SDL2-WinRT</id>
<version>2.0.4-Unofficial</version>
<authors>Sam Lantinga</authors>
<owners>David Ludwig</owners>
<licenseUrl>http://libsdl.org/license.php</licenseUrl>
<projectUrl>http://libsdl.org</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Unofficial pre-release of LibSDL2, built for WinRT platforms</description>
<copyright>Copyright 2015</copyright>
<tags>SDL2 SDL LibSDL OpenGL C C++ nativepackage</tags>
</metadata>
<files>
<file src="lib\**\*.dll" target="bin"/>
<file src="lib\**\*.lib" target="bin"/>
<file src="lib\**\*.pdb" target="bin"/>
<file src="..\include\**\*.*" target="include"/>
<file src="..\src\**\*.*" target="src"/>
<file src="SDL2-WinRT.targets" target="build\native"/>
</files>
</package>

View file

@ -0,0 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows' and '$(TargetPlatformVersion)' == '8.0'">WinRT80</LibSDL2-DeviceType>
<LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows' and '$(TargetPlatformVersion)' == '8.1'">WinRT81</LibSDL2-DeviceType>
<LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'Windows Phone' and '$(TargetPlatformVersion)' == '8.0'">WinPhone80</LibSDL2-DeviceType>
<LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'WindowsPhoneApp' and '$(TargetPlatformVersion)' == '8.1'">WinPhone81</LibSDL2-DeviceType>
<LibSDL2-DeviceType Condition="'$(TargetPlatformIdentifier)' == 'UAP'">UWP</LibSDL2-DeviceType>
<LibSDL2-BinPath>$(MSBuildThisFileDirectory)..\..\bin\$(LibSDL2-DeviceType)\$(Platform)</LibSDL2-BinPath>
</PropertyGroup>
<Target Name="LibSDL2-DeviceType-Check" BeforeTargets="ResolveAssemblyReferences">
<Error Condition="'$(LibSDL2-DeviceType)' == ''" Text="Unable to determine which version of Windows is being built-for" />
</Target>
<ItemDefinitionGroup>
<Link>
<AdditionalLibraryDirectories>$(LibSDL2-BinPath);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>SDL2.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup Label="LibSDL2">
<PackagingOutputs Include="$(LibSDL2-BinPath)\SDL2.dll">
<OutputGroup>LibSDL2Binaries</OutputGroup>
<ProjectName>$(ProjectName)</ProjectName>
<TargetPath>%(Filename)%(Extension)</TargetPath>
</PackagingOutputs>
</ItemGroup>
</Project>

View file

@ -0,0 +1,22 @@
<?xml version="1.0"?>
<package >
<metadata>
<id>SDL2main-WinRT-CoreWindow</id>
<version>2.0.4-Unofficial</version>
<authors>Sam Lantinga</authors>
<owners>David Ludwig</owners>
<licenseUrl>http://libsdl.org/license.php</licenseUrl>
<projectUrl>http://libsdl.org</projectUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>WinMain() function for SDL2 + WinRT + CoreWindow (non-XAML) apps</description>
<copyright>Copyright 2015</copyright>
<tags>SDL2 SDL LibSDL OpenGL C C++ nativepackage</tags>
<dependencies>
<dependency id="SDL2-WinRT" version="2.0.4"/>
</dependencies>
</metadata>
<files>
<file src="..\src\main\winrt\SDL_winrt_main_NonXAML.cpp" target="src\main\winrt"/>
<file src="SDL2main-WinRT-CoreWindow.targets" target="build\native"/>
</files>
</package>

View file

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="LibSDL2">
<ClCompile Include="$(MSBuildThisFileDirectory)..\..\src\main\winrt\SDL_winrt_main_NonXAML.cpp">
<CompileAsWinRT>true</CompileAsWinRT>
</ClCompile>
</ItemGroup>
</Project>