Ethics on MIT license use for libs? (not binary)

Monkey Forums/Monkey Beginners/Ethics on MIT license use for libs? (not binary)

RedGTurtlepa(Posted 2016) [#1]
(libs/modules/code libraries/written source code)
How do all of you address this (formally), in your stand alone applications that make use of MIT licensed third party libs?

MIT covers the original software, and its documents, and protects the original creators copyright (which is protected regardless), but the terms state that you must post the notice for distribution of the original software (which is the original files you have) but it doesn't define things like "merge". What is "Merge"?


The MIT License (MIT)

Copyright (c) <year> <copyright holders>

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.


Does "Merge" cover a binary which is compiled as stand alone in a form that does not actually include the software in its original form?
Such as an application which makes use of 10 libraries, and includes this one library, but does not include source code?

It doesn't say. To me, this doesn't clearly state anything in regards to how things are merged.

It clearly does say "USE". And this is very clear, if you include it in a header/file, you have just used it.
Beyond protecting the already protected copyright of the copyright holder. I have no idea how you give proper notice with a MIT licensed library along side your own copyrighted source code... which also might include 10 other libs, all under different libraries. Especially if it can only be statically linked (which is the case of Monkey/Monkey2 libs?)

Anyway, enough of my thoughts, I wanted to know in concrete forms how most of you developers dealt with this issue, the problem for me is not about "giving credit", or proper notice of the originals author's "merged" or "used"(included) work, the problem for me is I don't want people mixing up the rights of whatever I made, with whatever this license said in regards to what was used/merged and I'm not even sure about the specifics of sub-license usage rights..


For example:

Bob The Dev: Buy my game, its made using the MIT licensed lib NewLib9000_MIT!
Tom The Gamer: Yo this license says I can do what I want with your game, cuz Im dumb!
Bob The Dev: ......... .. . ... .. . ... . ... . .... *dies*

which doesnt matter, but if you read the license, and you put this license next to your product, and it says you can sublicense it, but if you use the software you have to include the original license, why isnt this written clearly? See this is why I prefer the zlib license. Very clear.



The zlib/libpng License (Zlib)

Copyright (c) <year> <copyright holders>

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.






DruggedBunny(Posted 2016) [#2]
I believe the MIT references to "this software" refer only to the source code. The MIT licence isn't considered to be 'viral' like the GPL, ie. you're not required to open up the source to your binary-only distributions, so if you're not distributing the source code from the MIT-licensed software distribution, you wouldn't be required to provide the licence text -- it wouldn't make any sense if you're only distributing your binary version, given that MIT isn't viral and doesn't enforce source distribution.

The main answer here seems to agree:

http://programmers.stackexchange.com/questions/255227/meaning-of-mit-license

... but I agree, now that you point it out, it is surprisingly open to interpretation on this point, and the zlib licence does indeed make it much clearer.

The way I read MIT, though, is that the original software distribution is what the licence refers to as "this software", so redistribution of that software (whether that's source and/or binaries) refers to that original set of files; therefore, if you distribute their (modified/unmodified) source or binaries you need to provide the licence text with that source or binary code.

Definitely vague, though. No idea if MIT has been tested in court...

"I am not a lawyer."


Gerry Quinn(Posted 2016) [#3]
That's my understanding too - you can use it freely in binaries.


dawlane(Posted 2016) [#4]
There is a helpful faq article that was last updated last November. Generally if you are using MIT licence; then you have to include a copyright notice in your EULA and the MIT licence as well.

If in doubt, you should seek legal advice or get clarification preferably in writing from the authors.


RedGTurtlepa(Posted 2016) [#5]
So, I just figured this out, what you need to do is, to legally comply, create a monolith license txt file and list the libraries using MIT but do so in this format:

//*-THIS IS JUST AN EXAMPLE-*

Name Of Software: "NewLib9000_MIT" License Text
 //or 
NewLib9000_MIT game library is under the MIT license: 

The MIT License (MIT)

Copyright (c) <9000>  900_Man_The_Author

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.




and as long as you ship this notice with your original software you are protected by the MIT license, since it clearly states the notice can never be removed..
.. I wouldnt place this at the base level of your app otherwise users may get funny ideas on its use.

Then again "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.", I don't even want to begin to guess what a "substantial portion of the Software" is, because that can literally mean anything. Since "substantial portion of the Software" is clearly not defined here.


Gerry Quinn(Posted 2016) [#6]
So what precisely is the legal basis for the determination that a compiled binary counts as 'the software'?


RedGTurtlepa(Posted 2016) [#7]
Well, I'm not sure,
again I much prefer the zlib license. And while I work with MIT libs, I also work in zlibs because they put my mind at ease.