forked from embecosm/embdebug
-
Notifications
You must be signed in to change notification settings - Fork 0
/
LICENSE
95 lines (80 loc) · 5.35 KB
/
LICENSE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
Information about licensing of Embecosm Debug Server (Embdebug)
===============================================================
The debug suite consists of two components: the core server and the debug
libraries which provide the interface to the core server.
The target libraries are licensed under the MIT licence, meaning that you are
able to incorporate the libraries into your target code without triggering any
requirement to release the source of any of the target code. You can modify the
libraries, incorporate them into your code and compile them alongside other
third party components (including any proprietary components) and nothing in
our licensing model will require to release the source or any other information
about the target code. The only obligation you have is that if you distribute
that code to third parties, you must include an acknowledgement notice in the
code as follows:
This software contains code subject to the following licence:
Copyright 2008-2020 Embecosm Limited
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.
This normally applies both where the code is distributed as source and as a
binary. However, we are happy to waive this requirement where you are
distributing the code as a binary. [Please consider putting an attribution
notice (e.g. “This software contains libraries from Embecosm Limited”) in the
documentation].)
The debug server is licensed under GPLv3+ which means that if you make any
modifications to the server code, and distribute it (including distribution in
binary form), you must release the source code to the debug server as modified
by you to any recipient of the binary all under the relevant version of the GPL.
We have licensed the components under two different licences because we want to
make it as easy as possible for you to combine our library code with your own
code, without having to worry about licence compatibility, and, in particular,
compatibility with third party licences, but we also want to ensure that anyone
extending and distributing the server code also has to make the source to their
extensions available.
Questions
---------
Q: I will, in effect, be linking my target code to the GPL server code when I
use the debug server with my code. The GPL says that if I link code to it,
all of the code I’m linking to must also be released under the GPL.
Doesn’t that contradict what you say above?
A: No. That only applies where to link, you are incorporating some of the GPL
software (like a header file) in your code and you then distribute it. Since
we have control of the licensing for both the libraries and the server code,
we can, in effect, license the interfaces however we want: we can’t sue
ourselves for breaching the GPL. If it helps, think of the server code
consisting mainly of GPL code, and a small amount of MIT code for the
interfaces. If you’re still concerned about this, we have drafted an
exception to the GPL licence we are using for the server. We don’t think the
exception is necessary, but you are free to show it to your legal department
if you think it will help to make them feel more comfortable.
Q: Doesn’t that mean that I can write my own target compatibility libraries and
not be required to release the source code to them to anyone?
A: Yes, of course. If you’re extending the reach of our debug server technology,
by allowing more platforms to plug into it, that great. Of course, we’d like
you to make the source available, but you’re under absolutely no obligation
to do so.
Exception Wording (based on the Classpath Exception)
----------------------------------------------------
EXCEPTION TO THE GPL
As a special exception, the copyright holders of this server software give you
permission to interface independent external code to this server software using
the Debug Server Target Interface and distribute the independent external code
under terms of your choice, provided that you also meet, for each item of
interfaced independent external code, the terms and conditions of the license of
that interfaced external code. "Independent external code" is software which is
not derived from or based on this server software. If you modify this server
software, you may extend this exception to your version of the server software,
but you are not obligated to do so. If you do not wish to do so, delete this
exception statement from your version.