-
Notifications
You must be signed in to change notification settings - Fork 0
/
_Library-Licenses.txt
216 lines (172 loc) · 9.05 KB
/
_Library-Licenses.txt
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
Maybe I should start with the good news, that all
the libraries which are used and available in this
toolset, allow you also commercial usage (without
opening-up your Application-Code under one of the
OpenSource-licenses ... VB-Classic does not offer
any static linking) - but that is of course not
saying, that "we" (as the VB-community) should
not "give back" something under one of these
licenses too - your choice of course... :-)
So, I will go this route in the next months at least -
by opening up the sources of the ActiveX- (COM-) Dll
RC6.dll to the VB6-community under LGPL,
to offer a "larger security", for those who make use of
these wrapper-libs already in their projects -
(since "closed source One-Man-shows" are always considered
a little bit risky in the long run) - but also to
"give something back" into the general OpenSource-community,
since without their generousity and efforts something like
this "free usable package" here would not be possible at all.
Ok, what now follows is a short description of the
contents of the build OpenSource-based library:
cairo_sqlite.dll
which does the underlying "basic-work" here in this small
framework ... The ActiveX-Dll:
RC6.dll
is a ActiveX- (or COM-) wrapper "on top", which allows to deal
with the functionality of the OpenSource-libs in a comfortable,
objectoriented and secure (VB-)way (secure here means, that
you will not need to take care with regards to handle- and/or
memory-freeing yourself.
But I digress...
The opensource-libs were build and linked from C-Source
with VS-2019, the MS-runtime-lib is statically linked-in +
any suitable speed-optimization was applied, therefore its
somewhat larger size, compared with MingW-builds...
So, whilst this file describes, what's in cairo_sqlite.dll,
the optional \WebKitCairo\-SubFolder contains an additional
file like this one here, to describe the contents, libs and
licenses for all the WebKit-binaries...
-------- please place at least the following license-info in a file --------
-------- (license.txt) beside the RC6-libs in your own deployments --------
The sqlite3-engine cairo_sqlite contains, is public domain
due to the generous D.R. Hipp (www.sqlite.org)- but the DB-
functionality also contains some differently licensed sub-parts
as are:
- SQLiteMultipleCiphers (several ways, to support DB-encryption)
https://github.com/utelle/SQLite3MultipleCiphers
MIT-license
- FastLZ (compression-algos, included as Source-Modules)
http://www.fastlz.org/
MIT-license
- LZ4 (compression-algos, included as Source-Modules)
http://cyan4973.github.io/lz4/
BSD-license
- ZLib (higher compression, well-balanced compr./decomp. Speed)
http://www.gzip.org/zlib/zlib_license.html
ZLib-license (very liberal too)
- LZMA (highest compression, decomp. fast, compr. slow)
http://www.7-zip.org/sdk.html
Public Domain license
All of the different compression-algos are available over
cCrypt of the RC6.dll - and come internally into
play for example, when transferring serialized SQLite-Recordsets
over TCP/IP (using the RPC-Server-Classes of RC6).
Ok, and here the "more cairo-related" Sub-Libs and their licenses:
The "main-parts" come of course from the cairo-project,
which is licensed under LGPL/MPL: (http://cairographics.org/)
- libpixman (fast, optimized pixel-surface-routines)
BSD-like license, e.g. mentioned here:
http://wiki.mozilla.org/License_Policy
- libPng
http://www.libpng.org/pub/png/src/libpng-LICENSE.txt
PNG-license
- ZLib (again, but used here mainly by libPng in CDecl-fashion)
http://www.gzip.org/zlib/zlib_license.html
ZLib-license
- chipmunk (2D-physics engine)
http://howlingmoonsoftware.com/chipmunk.php
MIT-license
- libjpeg-turbo (superfast JPG De- and Encoding)
https://github.com/libjpeg-turbo/libjpeg-turbo/blob/master/LICENSE.md
BSD-style, combining IJG-, modified (3-clause) BSD- and ZLib-license)
- libqrencode (the "quasi-standard" by Kentaro Fukuchi)
http://fukuchi.org/works/qrencode/
LGPL 2.1 license (https://www.gnu.org/licenses/lgpl-2.1.html)
- quirc-library (small and efficient QR-Decoding by Daniel Beer)
https://github.com/dlbeer/quirc
It's a "personalized license" which comes below:
Copyright (C) 2010-2012 Daniel Beer <dlbeer@gmail.com>
Permission to use, copy, modify, and/or distribute this software for
any purpose with or without fee is hereby granted, provided that the
above copyright notice and this permission notice appear in all
copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
- BigInt-support from http://gmplib.org, using mini-gmp.c and mini-gmp.h
gmplib is licensed under LGPL v3
------------- end of the minimum license-info-section -----------------
What I hope is, that this text-file here now offers more clarity on
"what's in there, in the package" - and it is also a necessitiy
now, to deploy these license-infos along with the 3 framework-dlls,
since other than the former "plain sqlite36_engine.dll", the
new, combined cairo_sqlite.dll has LGPL- and other parts linked in.
So, please make sure, you include at least this file here along
with the RC6-binaries, when you plan to deploy your solutions
in a "correct way".
And maybe an additional note about using the wrappers new
SVG-functionality, which was implemented directly in
RC6.dll in plain VB6-code, so - the usual
(and somewhat large with all its additional dependencies)
librsvg was not needed and linked in the cairo-C-build).
The new cairo-tutorial "RC5cairoTutorial.zip", downloadable
from here: www.datenhaus.de/Downloads/RC5cairoTutorial.zip
...now contains a few SVG-Icons from the modern (and huge) Oxygen-
Iconset - I've already placed a License-Info for these Images in
the Demo-Zip-package, but at this occassion let me write something
here too, since we are at it.
This will get perhaps a bit longwinded, and some parts are
repeated (from different angles) more than once, but please
make your way through it anyways, I know that the VB6-community
is generally "not that fluent" with all the OpenSource-licenses
and the implications (I know, I was not ... 3 years ago or so).
The Oxygen-IconTheme is now under LGPL too:
http://www.oxygen-icons.org/?page_id=4
Which means, that you can use this nice artwork now also
commercially in your VB-Apps (rendered over the wrapper) -
but take care, that you do *not* link any Oxygen-Icon-resources
(no matter if as *.svg, *.svgz or as a "derived" *.png) as
resource-file-content directly into your VB-Apps binaries
(in case you don't want to open the sources of your Main-Project
under LGPL too).
You may link them as resource into a VB-dll-binary - but *only*
if you open up the sources for this "Icon-resource.dll" under
LGPL too (Your Main.exe will not need to be opened then, since
it links to your Icon-resource.dll only dynamically).
So the background is, that the LGPL forbids any *static* linking -
any part which comes under LGPL (be it a C-compiled static library,
or an icon), may not be "hidden within" (or merged into) your
own (non-LGPL) Project-Sources or the resulting Binaries.
So, to be on the safe side with Binaries under LGPL, this usually
means dynamic linking against them (which e.g. RC6.dll
does per dynamic Declare-Statements against vb_cairo_sqlite.dll) -
and for LGPL-icons that means "dynamic linking" (or better
"dynamic loading") too ... either from iconfiles in a SubFolder
under your Apps path - or over a Resource-Dll which comes
under LGPL itself.
Ok, I hope all these "license-issues" are now somewhat more
clear for all you "new potential cairo-users out there" -
and I didn't "scared you away" with all that... ;-)
But I think (aside from the necessitiy of this file), that
the infos within here are useful for our community, which
is IMO (as already said above) somewhat inexperienced yet
with regards to opensource-licenses.
Maybe as a "final upshot" again (in simple words), and to
avoid any confusion:
Commercial usage of "all the cairo- and opensource-stuff"
in this toolset is allowed, as well as the usage of the
huge reservoir of the Oxygen-IconTheme - just don't try
to "hide" where all the "helpful parts" originated from -
give infos about their websites and licenses (as done here)
in your own deployment as well.
"Play fair, give credit, inform the user", so to say...
(a small licenseinfo.txt file alongside the RC6-libs
will be enough).
Olaf Schmidt
(in August 2011)