From 21e59d76595eea7d2c7ec363d5fc4fc4f1002802 Mon Sep 17 00:00:00 2001 From: "Stefanos A." Date: Fri, 6 Dec 2013 00:46:32 +0100 Subject: [PATCH] Updated dependency documentation Added license files for ikvm, monolinker and cecil. Added usage instructions for monolinker. --- Dependencies/Readme.txt | 36 ++++++++++++++++++---------- Dependencies/cecil.COPYING.txt | 19 +++++++++++++++ Dependencies/ikvm.COPYING.txt | 20 ++++++++++++++++ Dependencies/managed/monolinker.exe | Bin 0 -> 80384 bytes Dependencies/monolinker.COPYING.txt | 21 ++++++++++++++++ 5 files changed, 84 insertions(+), 12 deletions(-) create mode 100644 Dependencies/cecil.COPYING.txt create mode 100644 Dependencies/ikvm.COPYING.txt create mode 100644 Dependencies/managed/monolinker.exe create mode 100644 Dependencies/monolinker.COPYING.txt diff --git a/Dependencies/Readme.txt b/Dependencies/Readme.txt index 53283067..3904f2e0 100644 --- a/Dependencies/Readme.txt +++ b/Dependencies/Readme.txt @@ -3,18 +3,20 @@ dependencies for OpenTK. These are meant for your convenience and are completely optional to use. The folder structure is split by CPU architecture: +Dependencies/license - license files +Dependencies/managed - .Net assemblies compiled for AnyCPU Dependencies/x86/ - compiled for 32bit Intel and AMD processors Dependencies/x64/ - compiled for 64bit Intel and AMD processors -Dependencies/ - contains readme and license files -The dependencies are as follows: +To deploy a dependency, simply copy it to your application directory, along with the relevant license file. + +Detailed instructions follow. [SDL2.dll] [libSDL2.dylib] -The Simple DirectMedia Library compiled for Windows and Mac OS X. -Copy these to your application directory in order to use the SDL2 +The Simple DirectMedia Library compiled for Windows and Mac OS X. Copy to your application directory in order to enable the SDL2 platform backend for OpenTK. http://libsdl.org @@ -55,15 +57,25 @@ Linux and Mac OS X support OpenAL out of the box. [libGLESv2.dll] [d3dcompiler_46.dll] -ANGLE Project compiled for Windows. Copy these to your application -directory in order to use OpenGL ES 2.0 on Windows. +ANGLE Project compiled for Windows. Copy these to your application directory in order to use OpenGL ES 2.0 on Windows. https://code.google.com/p/angleproject/ -"The goal of ANGLE is to allow Windows users to seamlessly run WebGL -and other OpenGL ES 2.0 content by translating OpenGL ES 2.0 API -calls to DirectX 9 or DirectX 11 API calls." +"The goal of ANGLE is to allow Windows users to seamlessly run WebGL and other OpenGL ES 2.0 content by translating OpenGL ES 2.0 API calls to DirectX 9 or DirectX 11 API calls." -These are required if you wish to publish an OpenGL ES application -to the Windows Store. You can also use these in order to port or test -OpenGL ES code from and to mobile devices (Android, iPhone). +These are required if you wish to publish an OpenGL ES application to the Windows Store. You can also use these in order to port or test OpenGL ES code from and to mobile devices (Android, iPhone). + + +[monolinker] + +Mono Linker project. Use this to reduce the size of OpenTK.dll. + +http://www.mono-project.com/Linker + +"The linker is a tool one can use to only ship the minimal possible set of functions that a set of programs might require to run as opposed to the full libraries." + +Execute as follows: + +monolinker.exe -a YourApplication.exe + +where "YourApplication.exe" is the name of your application binary. This command will create a new folder "output/" with a copy of your application and optimized version of OpenTK.dll and any other dll your application is using. \ No newline at end of file diff --git a/Dependencies/cecil.COPYING.txt b/Dependencies/cecil.COPYING.txt new file mode 100644 index 00000000..44f424ff --- /dev/null +++ b/Dependencies/cecil.COPYING.txt @@ -0,0 +1,19 @@ +Copyright (c) 2008 - 2011, Jb Evain + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. \ No newline at end of file diff --git a/Dependencies/ikvm.COPYING.txt b/Dependencies/ikvm.COPYING.txt new file mode 100644 index 00000000..b7081146 --- /dev/null +++ b/Dependencies/ikvm.COPYING.txt @@ -0,0 +1,20 @@ +Copyright (C) 2002-2012 Jeroen Frijters + +This software is provided 'as-is', without any express or implied +warranty. In no event will the authors be held liable for any damages +arising from the use of this software. + +Permission is granted to anyone to use this software for any purpose, +including commercial applications, and to alter it and redistribute it +freely, subject to the following restrictions: + +1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. +2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. +3. This notice may not be removed or altered from any source distribution. + +Jeroen Frijters +jeroen@frijters.net \ No newline at end of file diff --git a/Dependencies/managed/monolinker.exe b/Dependencies/managed/monolinker.exe new file mode 100644 index 0000000000000000000000000000000000000000..6870bc26f07d7793ad7c5eb523a58b1759dabd39 GIT binary patch literal 80384 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