Upgrade to MonoGame 3.5, drop platform hacks

Thanks @cra0zy, that was easy
This commit is contained in:
Drew DeVault 2016-03-17 18:58:25 -04:00
parent 6d36fc82a6
commit 21dcfbd978
6 changed files with 10 additions and 110 deletions

View File

@ -1,25 +0,0 @@
<configuration>
<dllmap os="linux" dll="opengl32.dll" target="libGL.so.1"/>
<dllmap os="linux" dll="glu32.dll" target="libGLU.so.1"/>
<dllmap os="linux" dll="openal32.dll" target="libopenal.so.1"/>
<dllmap os="linux" dll="alut.dll" target="libalut.so.0"/>
<dllmap os="linux" dll="opencl.dll" target="libOpenCL.so"/>
<dllmap os="linux" dll="libX11" target="libX11.so.6"/>
<dllmap os="linux" dll="libXi" target="libXi.so.6"/>
<dllmap os="linux" dll="SDL2.dll" target="libSDL2-2.0.so.0.disabled"/>
<dllmap os="osx" dll="opengl32.dll" target="/System/Library/Frameworks/OpenGL.framework/OpenGL"/>
<dllmap os="osx" dll="openal32.dll" target="/System/Library/Frameworks/OpenAL.framework/OpenAL" />
<dllmap os="osx" dll="alut.dll" target="/System/Library/Frameworks/OpenAL.framework/OpenAL" />
<dllmap os="osx" dll="libGLES.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="libGLESv1_CM.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="libGLESv2.dll" target="/System/Library/Frameworks/OpenGLES.framework/OpenGLES" />
<dllmap os="osx" dll="opencl.dll" target="/System/Library/Frameworks/OpenCL.framework/OpenCL"/>
<dllmap os="osx" dll="SDL2.dll" target="libSDL2.dylib"/>
<!-- XQuartz compatibility (X11 on Mac) -->
<dllmap os="osx" dll="libGL.so.1" target="/usr/X11/lib/libGL.dylib"/>
<dllmap os="osx" dll="libX11" target="/usr/X11/lib/libX11.dylib"/>
<dllmap os="osx" dll="libXcursor.so.1" target="/usr/X11/lib/libXcursor.dylib"/>
<dllmap os="osx" dll="libXi" target="/usr/X11/lib/libXi.dylib"/>
<dllmap os="osx" dll="libXinerama" target="/usr/X11/lib/libXinerama.dylib"/>
<dllmap os="osx" dll="libXrandr.so.2" target="/usr/X11/lib/libXrandr.dylib"/>
</configuration>

View File

@ -13,38 +13,6 @@ namespace TrueCraft.Client
{
[STAThread]
public static void Main(string[] args)
{
AppDomain.CurrentDomain.AssemblyResolve += AppDomain_CurrentDomain_AssemblyResolve;
// We need to run this in another method to avoid referencing MonoGame before registering
// our AssemblyResolve handler
Main_Thread(args);
}
static Assembly AppDomain_CurrentDomain_AssemblyResolve (object sender, ResolveEventArgs args)
{
var assemblyName = new AssemblyName(args.Name);
if (assemblyName.Name != "MonoGame.Framework")
return null;
if (RuntimeInfo.IsLinux)
return Assembly.LoadFile("MonoGame.Framework.Linux.dll");
if (RuntimeInfo.IsWindows)
{
// MS.NET needs the absolute path to an assembly to load it.
var fileInfo = new FileInfo("MonoGame.Framework.Windows.dll");
return Assembly.LoadFile(fileInfo.FullName);
}
if (RuntimeInfo.IsMacOSX)
{
var fileInfo = new FileInfo("MonoGame.Framework.MacOS.dll");
return Assembly.LoadFile(fileInfo.FullName);
}
return null;
}
// We need to spawn the main thread manually so we can register the assembly resolver
// and manage apartment state ourselves.
private static void Main_Thread(string[] args)
{
UserSettings.Local = new UserSettings();
UserSettings.Local.Load();

View File

@ -1,29 +0,0 @@
<configuration>
<dllmap dll="SDL.dll" os="windows" target="SDL.dll"/>
<dllmap dll="SDL.dll" os="osx" target="/Library/Frameworks/SDL.framework/SDL" />
<dllmap dll="SDL.dll" os="!windows,osx" target="libSDL-1.2.so.0"/>
<dllmap dll="SDL_image.dll" os="windows" target="SDL_image.dll"/>
<dllmap dll="SDL_image.dll" os="osx" target="/Library/Frameworks/SDL_image.framework/SDL_image" />
<dllmap dll="SDL_image.dll" os="!windows,osx" target="libSDL_image-1.2.so.0" />
<dllmap dll="SDL_mixer.dll" os="windows" target="SDL_mixer.dll"/>
<dllmap dll="SDL_mixer.dll" os="osx" target="/Library/Frameworks/SDL_mixer.framework/SDL_mixer" />
<dllmap dll="SDL_mixer.dll" os="!windows,osx" target="libSDL_mixer-1.2.so.0" />
<dllmap dll="SDL_ttf.dll" os="windows" target="SDL_ttf.dll"/>
<dllmap dll="SDL_ttf.dll" os="osx" target="/Library/Frameworks/SDL_ttf.framework/SDL_ttf" />
<dllmap dll="SDL_ttf.dll" os="!windows,osx" target="libSDL_ttf-2.0.so.0" />
<dllmap dll="SDL_net.dll" os="windows" target="SDL_net.dll"/>
<dllmap dll="SDL_net.dll" os="osx" target="/Library/Frameworks/SDL_net.framework/SDL_net" />
<dllmap dll="SDL_net.dll" os="!windows,osx" target="libSDL_net-1.2.so.0" />
<dllmap dll="smpeg.dll" os="windows" target="smpeg.dll"/>
<dllmap dll="smpeg.dll" os="osx" target="/Library/Frameworks/smpeg.framework/smpeg" />
<dllmap dll="smpeg.dll" os="!windows,osx" target="libsmpeg-0.4.so.0" />
<dllmap dll="SDL_gfx.dll" os="windows" target="SDL_gfx.dll"/>
<dllmap dll="SDL_gfx.dll" os="osx" target="/Library/Frameworks/SDL_gfx.framework/SDL_gfx" />
<dllmap dll="SDL_gfx.dll" os="!windows,osx" target="libSDL_gfx.so.13" />
</configuration>

View File

@ -75,10 +75,13 @@
<Reference Include="System" />
<Reference Include="System.Xml" />
<Reference Include="MonoGame.Framework">
<HintPath>..\packages\MonoGame.Framework.Linux.3.4.0.459\lib\net40\MonoGame.Framework.dll</HintPath>
<HintPath>..\packages\MonoGame.Framework.DesktopGL.3.5.0.1678\lib\net40\MonoGame.Framework.dll</HintPath>
</Reference>
<Reference Include="NVorbis">
<HintPath>..\packages\NVorbis.0.8.4.0\lib\NVorbis.dll</HintPath>
<HintPath>..\packages\MonoGame.Framework.DesktopGL.3.5.0.1678\lib\net40\NVorbis.dll</HintPath>
</Reference>
<Reference Include="OpenTK">
<HintPath>..\packages\MonoGame.Framework.DesktopGL.3.5.0.1678\lib\net40\OpenTK.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
@ -218,13 +221,7 @@
<None Include="Content\Fonts\Pixel_Regular.fnt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="OpenTK.dll.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<None Include="packages.config" />
<None Include="Tao.Sdl.dll.config">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
<Content Include="Content\Fonts\DejaVu_Bold_0.png">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>

View File

@ -1,7 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="MonoGame.Framework.Linux" version="3.4.0.459" targetFramework="net45" userInstalled="true" />
<package id="MonoGame.Framework.MacOS" version="3.4.0.459" targetFramework="net45" userInstalled="true" />
<package id="MonoGame.Framework.WindowsGL" version="3.4.0.459" targetFramework="net45" userInstalled="true" />
<package id="MonoGame.Framework.DesktopGL" version="3.5.0.1678" targetFramework="net45" />
<package id="NVorbis" version="0.8.4.0" targetFramework="net45" />
</packages>

View File

@ -116,15 +116,6 @@
<EmbeddedResource Include="Content\default-server-icon.png" />
<None Include="Content\truecraft_logo.svg" />
</ItemGroup>
<PropertyGroup Condition=" '$(OS)' == 'UNIX' ">
<PostBuildEvent>rm $(TargetDir)/MonoGame.Framework.dll &amp;&amp; cp $(SolutionDir)/packages/MonoGame.Framework.Linux.3.4.0.459/lib/net40/MonoGame.Framework.dll $(TargetDir)/MonoGame.Framework.Linux.dll &amp;&amp; cp $(SolutionDir)/packages/MonoGame.Framework.WindowsGL.3.4.0.459/lib/net40/MonoGame.Framework.dll $(TargetDir)/MonoGame.Framework.Windows.dll &amp;&amp; cp $(SolutionDir)/packages/MonoGame.Framework.MacOS.3.4.0.459/lib/net40/MonoGame.Framework.dll $(TargetDir)/MonoGame.Framework.MacOS.dll</PostBuildEvent>
</PropertyGroup>
<PropertyGroup Condition=" '$(OS)' == 'Windows_NT' ">
<PostBuildEvent>del $(TargetDir)MonoGame.Framework.dll
copy $(SolutionDir)packages\MonoGame.Framework.Linux.3.4.0.459\lib\net40\MonoGame.Framework.dll $(TargetDir)MonoGame.Framework.Linux.dll
copy $(SolutionDir)packages\MonoGame.Framework.WindowsGL.3.4.0.459\lib\net40\MonoGame.Framework.dll $(TargetDir)MonoGame.Framework.Windows.dll
copy $(SolutionDir)packages\MonoGame.Framework.MacOS.3.4.0.459\lib\net40\MonoGame.Framework.dll $(TargetDir)MonoGame.Framework.MacOS.dll </PostBuildEvent>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Optimized Debug|AnyCPU' ">
<Optimize>true</Optimize>
<OutputPath>bin\Optimized Debug</OutputPath>