Philips HMP3011 User Manual page 24

Table of Contents

Advertisement

Open Source Software
License text
2010/10/23 V1
2010/10/24 V2 (add libpng)
2010/10/26 V3 (add APE)
2010/10/26 V3.1 (add USB PTP)
2010/10/27 V4 (add Yamon)
2011/1/31 V5 (add Freetype)
1. VMLinux
2. Uclibc
3. FAT
4. Gdb
5. Binutils
6. Dosfstools
7. Hotplug
8. Mtdtool
9. Ntfstool
10. Nand write
11. Flash-erase
12. Mkyaff2image
13. Mk.jffs2
14. Squanshfs
15. Samba
16. Coreutils
17. Freetype
18. WPA Supplicant
1
9.
The Free Software Foundation may publish revised and/or new versions of the
General Public License from time to time. Such new versions will be similar in spirit
to the present version, but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Program specifies a
version number of this License which applies to it and "any later version", you have
the option of following the terms and conditions either of that version or of any later
version published by the Free Software Foundation. If the Program does not specify
a version number of this License, you may choose any version ever published by the
Free Software Foundation.
10. If you wish to incorporate parts of the Program into other free programs whose
distribution conditions are different, write to the author to ask for permission. For
software which is copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our decision will be
guided by the two goals of preserving the free status of all derivatives of our free
software and of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE
COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM
"AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR
IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO
MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED
ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL,
SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF
THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT
LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE
OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE
PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH
HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
SUCH DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Programs
6
My company was distributing BusyBox binary without the source.
We are contacted by users asking for the source, and we don't have it.
Are we in trouble?
Not yet. But please stop doing that, and start distributing the source.
The above is what happens when people are acting in good faith. I note that the GPL imposes
upon you the obligation to provide source code when you distribute. Whether you're using
3A, 3B, or 3C, they all start "Accompany it with", meaning source goes with binary at time
of distribution. So if we get the binary from you and there's no mention of source code, your
distribution of that binary didn't comply with the terms of the license. At that point, you're
already in breach of the license terms, and it's now about fixing it. So if we have to approach
you after the fact to get this information, we have the option to be really nasty about it.
We're not required to be nasty, and we prefer not to. An honest mistake that a company
is willing to fix is understandable, and as far as I know we've always started out with
"excuse me, could you fix this please" and not made a fuss. Most of the time, it doesn't
go beyond that, we get back an email "oh, sorry, it's version blah, and here's the three line
patch we used to change a default value", and we're happy.
And some companies are disorganized but honest about it, and go "um, we lost track of
this information and the guy who did it left the company, can you give us some time to
dig it out of the archives?" And if they're making an honest effort, we're polite about that
too.
My company was distributing BusyBox binary without the source. We
are contacted by your lawyers. Are we in trouble?
Yes, but it is not too bad yet. Stop being disorganized and fix your licensing situation
before it gets really nasty. As I already mentioned, DON'T PANIC. Complying with
BusyBox's license is easy. Get your act together, fight with internal inertia inside your
company and it will be okay. If you do not understand something, please send emails with
your questions to the BusyBox mailing lists, or privately to maintainers if you want to
keep it private. We will expand this document to cover them.
However, you really cannot afford to be careless about complying with the license anymore.
Some companies ignore the polite requests entirely, and go all deer in the headlights on
us, or maybe hope that if they ignore us long enough we'll go away. Those are the ones
that the SFLC sends impolite requests to, asking for far more than the original request did
back when they were being nice.
For starters, if the SFLC has to actually sue someone to get their attention, they bill them
for expenses. (They have an office in New York City, you really don't want to go there).
Also, they usually make the company appoint an "open source compliance officer" and
deliver quarterly reports. And make them try to contact the old customers they shipped
product to without source and let them know where the source is. All this is the lawyerly
equivalent of "raising your voice to be heard". I've only seem them take the gloves off
once. They've only needed to once.
11
Preamble
The licenses for most software are designed to take away your freedom to share and
change it. By contrast, the GNU General Public Licenses are intended to guarantee your
freedom to share and change free software--to make sure the software is free for all its
users.
This license, the Lesser General Public License, applies to some specially designated
software packages--typically libraries--of the Free Software Foundation and other
authors who decide to use it. You can use it too, but we suggest you first think carefully
about whether this license or the ordinary General Public License is the better strategy
to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use, not price. Our
General Public Licenses are designed to make sure that you have the freedom to
distribute copies of free software (and charge for this service if you wish); that you
receive source code or can get it if you want it; that you can change the software and use
pieces of it in new free programs; and that you are informed that you can do these things.
To protect your rights, we need to make restrictions that forbid distributors to deny you
these rights or to ask you to surrender these rights. These restrictions translate to certain
responsibilities for you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis or for a fee, you must
give the recipients all the rights that we gave you. You must make sure that they, too,
receive or can get the source code. If you link other code with the library, you must
provide complete object files to the recipients, so that they can relink them with the
library after making changes to the library and recompiling it. And you must show them
these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the library, and (2) we
offer you this license, which gives you legal permission to copy, distribute and/or modify
the library.
To protect each distributor, we want to make it very clear that there is no warranty
for the free library. Also, if the library is modified by someone else and passed on, the
recipients should know that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be introduced by others.
Finally, software patents pose a constant threat to the existence of any free program.
We wish to make sure that a company cannot effectively restrict the users of a free
program by obtaining a restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be consistent with the full
freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the ordinary GNU General
Public License. This license, the GNU Lesser General Public License, applies to certain
designated libraries, and is quite different from the ordinary General Public License. We
use this license for certain libraries in order to permit linking those libraries into non-free
programs.
16
Linux/MIPS is a port of Linux to the MIPS architecture. It is available under the terms of
the GNU General Public License.
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies of this license document,
but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your freedom to share and
change it. By contrast, the GNU General Public License is intended to guarantee your
freedom to share and change free software--to make sure the software is free for all its
users. This General Public License applies to most of the Free Software Foundation's
software and to any other program whose authors commit to using it. (Some other Free
Software Foundation software is covered by the GNU Library General Public License
instead.) You can apply it to your programs, too.
When we speak of free software, we are referring to freedom, not price. Our General
Public Licenses are designed to make sure that you have the freedom to distribute copies
of free software (and charge for this service if you wish), that you receive source code or
can get it if you want it, that you can change the software or use pieces of it in new free
programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid anyone to deny you
these rights or to ask you to surrender the rights. These restrictions translate to certain
responsibilities for you if you distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether gratis or for a fee, you
must give the recipients all the rights that you have. You must make sure that they, too,
receive or can get the source code. And you must show them these terms so they know
their rights.
We protect your rights with two steps: (1) copyright the software, and (2) offer you this
license which gives you legal permission to copy, distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain that everyone
understands that there is no warranty for this free software. If the software is modified
by someone else and passed on, we want its recipients to know that what they have is
not the original, so that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software patents. We wish to avoid
the danger that redistributors of a free program will individually obtain patent licenses, in
effect making the program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and modification follow.
2
If you develop a new program, and you want it to be of the greatest possible use to
the public, the best way to achieve this is to make it free software which everyone can
redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest to attach them to the start
of each source file to most effectively convey the exclusion of warranty; and each file should
have at least the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave,
Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this when it starts in an
interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it under certain conditions;
type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate parts of
the General Public License. Of course, the commands you use may be called something
other than `show w' and `show c'; they could even be mouse-clicks or menu items--
whatever suits your program.
You should also get your employer (if you work as a programmer) or your school, if any, to
sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision'
(which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into proprietary
programs. If your program is a subroutine library, you may consider it more useful to
permit linking proprietary applications with the library. If this is what you want to do, use
the GNU Library General Public License instead of this License.
7
Some companies get in trouble because although they use an upstream vanilla source
tarball, they don't say what version it was, or they don't explicitly say it wasn't modified.
Then when we approach them for more information, they don't understand what we
could possibly want, and panic. (Panicing bad. Please don't panic, this is actually pretty
easy to get right. Ignoring repeated polite requests is not going to end well. Please be
polite back. Ask for clarification if you don't understand something, it's not an admission
of weakness. If you ignore us until we stop knocking, these days it may mean we're getting
the battering ram. This is not an improvement for anyone concerned.)
Another common failure mode is companies that redistribute some vendor board
support package they bought, and when we ask them they brush us off with "we got
it from a vendor, go bug our vendor, not our problem". Dude, you're copying and
distributing GPL code too. If the license is the only thing that gives you permission to
do that, then that license applies to you too. Really. If your vendor complied with the
license terms but you didn't, you're not off the hook. This is not a scavenger hunt, nor is
it the episode of M*A*S*H about getting tomato juice to Colonel Potter. We asked you,
and you have an obligation to provide this information. If you don't even know what it
is when we ask, something is wrong. If you'd reprinted somebody else's documentation
and stripped out BSD advertising clause notices, do you think you could then say "but
the original PDF we got from our vendor had the notice in it, so we're ok, don't bother
us"? Or would going "oops, here's one with the right data" be your responsibility? Fixing
this is not our job. "We ask, you answer" is us being lenient, the license technically says
we shouldn't have had to ask in the first place, you were supposed to provide this info
when you shipped. And even if we're letting you delegate the implementation, you
can't delegate the responsibility. Don't make me look up how to spell "fiduciary". (And
delegating it to nobody really isn't a solution. Asking us to track down an ex-employee of a
defunct Taiwanese company where nobody spoke English just doesn't go over well...)
Sorry about that. Scars from the "hall of shame" days. We have lawyers now. They're
very nice. Where was I?
A company that wants to be legally paranoid will make a source CD for the GPL portions
of their entire product (build scripts, cross compiler toolchains, and all), and either
include the CD in the box with the product (clause 3A) or put the ISO up on the web
and mention the URL to it in their product's documentation (clause 3B). They don't need
our say-so to be satisfied with that, even a strict reading of GPLv2 says that complies with
the license terms. (You can probably even email the SFLC guys about what exactly should
go on the CD, gpl@busybox.net) This is the "make it go away" preemptive nuclear strike
approach, and probably a good idea for Fortune 500 companies that have their own legal
department to do anyway.
A Good Example
These days, Linksys is doing a good job at complying with the GPL, they get to be an
example of how to do things right. Please take a moment and check out what they do
with distributing the firmware for their WRT54G Router. Following their example would
be a fine way to ensure that you have also fulfilled your licensing obligations.
12
When a program is linked with a library, whether statically or using a shared library, the
combination of the two is legally speaking a combined work, a derivative of the original
library. The ordinary General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General Public License permits
more lax criteria for linking other code with the library.
We call this license the "Lesser" General Public License because it does Less to protect
the user's freedom than the ordinary General Public License. It also provides other
free software developers Less of an advantage over competing non-free programs.
These disadvantages are the reason we use the ordinary General Public License for
many libraries. However, the Lesser license provides advantages in certain special
circumstances.
For example, on rare occasions, there may be a special need to encourage the widest
possible use of a certain library, so that it becomes a de-facto standard. To achieve this,
non-free programs must be allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this case, there is little to
gain by limiting the free library to free software only, so we use the Lesser General Public
License.
In other cases, permission to use a particular library in non-free programs enables a
greater number of people to use a large body of free software. For example, permission
to use the GNU C Library in non-free programs enables many more people to use the
whole GNU operating system, as well as its variant, the GNU/Linux operating system.
Although the Lesser General Public License is Less protective of the users' freedom, it
does ensure that the user of a program that is linked with the Library has the freedom
and the wherewithal to run that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and modification follow. Pay
close attention to the difference between a "work based on the library" and a "work that
uses the library". The former contains code derived from the library, whereas the latter
must be combined with the library in order to run.
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND
MODIFICATION
0. This License Agreement applies to any software library or other program which
contains a notice placed by the copyright holder or other authorized party saying it may
be distributed under the terms of this Lesser General Public License (also called "this
License"). Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data prepared so as to be
conveniently linked with application programs (which use some of those functions and
data) to form executables.
The "Library", below, refers to any such software library or work which has been
distributed under these terms. A "work based on the Library" means either the
Library or any derivative work under copyright law: that is to say, a work containing
the Library or a portion of it, either verbatim or with modifications and/or translated
17
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0.
This License applies to any program or other work which contains a notice placed
by the copyright holder saying it may be distributed under the terms of this General
Public License. The "Program", below, refers to any such program or work, and a
"work based on the Program" means either the Program or any derivative work
under copyright law: that is to say, a work containing the Program or a portion of
it, either verbatim or with modifications and/or translated into another language.
(Hereinafter, translation is included without limitation in the term "modification".)
Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this
License; they are outside its scope. The act of running the Program is not restricted,
and the output from the Program is covered only if its contents constitute a work
based on the Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1.
You may copy and distribute verbatim copies of the Program's source code as you
receive it, in any medium, provided that you conspicuously and appropriately publish
on each copy an appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any warranty; and give
any other recipients of the Program a copy of this License along with the Program.
You may charge a fee for the physical act of transferring a copy, and you may at your
option offer warranty protection in exchange for a fee.
2.
You may modify your copy or copies of the Program or any portion of it, thus forming a
work based on the Program, and copy and distribute such modifications or work under
the terms of Section 1 above, provided that you also meet all of these conditions:
a)
You must cause the modified files to carry prominent notices stating that you
changed the files and the date of any change.
b)
You must cause any work that you distribute or publish, that in whole or in part
contains or is derived from the Program or any part thereof, to be licensed as a
whole at no charge to all third parties under the terms of this License.
c)
If the modified program normally reads commands interactively when run,
you must cause it, when started running for such interactive use in the most
ordinary way, to print or display an announcement including an appropriate
copyright notice and a notice that there is no warranty (or else, saying that
you provide a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this License.
(Exception: if the Program itself is interactive but does not normally print such
an announcement, your work based on the Program is not required to print an
announcement.)
These requirements apply to the modified work as a whole. If identifiable sections
of that work are not derived from the Program, and can be reasonably considered
independent and separate works in themselves, then this License, and its terms, do
3
19. Busybox
BusyBox is licensed under the GNU General Public License, version 2
BusyBox is licensed under the GNU General Public License version 2, which is often
abbreviated as GPLv2. (This is the same license the Linux kernel is under, so you may be
somewhat familiar with it by now.)
A complete copy of the license text is included in the file LICENSE in the BusyBox source
code.
Anyone thinking of shipping BusyBox as part of a product should be familiar with the
licensing terms under which they are allowed to use and distribute BusyBox. Read the
full text of the GPL (either through the above link, or in the file LICENSE in the BusyBox
tarball), and also read the Frequently Asked Questions about the GPL.
If you distribute GPL-licensed software the license requires that you also distribute the
source code to that GPL-licensed software. If you distribute BusyBox without making the
source code to the version you distribute available, you violate the license terms, and
thus infringe on the copyrights of BusyBox. This requirement applies whether or not you
modified BusyBox; either way the license terms still apply to you.
License enforcement
BusyBox's copyrights are enforced by the Software Freedom Law Center (you can contact
them at gpl@busybox.net), which "accepts primary responsibility for enforcement of US
copyrights on the software... and coordinates international copyright enforcement efforts
for such works as necessary." If you distribute BusyBox in a way that doesn't comply with
the terms of the license BusyBox is distributed under, expect to hear from these guys.
Their entire reason for existing is to do pro-bono legal work for free/open source software
projects. We used to list people who violate the BusyBox license in The Hall of Shame, but
these days we find it much more effective to hand them over to the lawyers.
Our enforcement efforts are aimed at bringing people into compliance with the BusyBox
license. Open source software is under a different license from proprietary software, but
if you violate that license you're still a software pirate and the law gives the vendor (us)
some big sticks to play with. We don't want monetary awards, injunctions, or to generate
bad PR for a company, unless that's the only way to get somebody that repeatedly ignores
us to comply with the license on our code.
My company wants to include BusyBox into a product. What do we need
to do in order to comply with BusyBox's license?
First: DON'T PANIC. Complying with BusyBox's license is easy. Complying with
BusyBox's license doesn't cost any money. If, after reading the license and this document
something is not clear to you, please send emails with your questions to the BusyBox
mailing lists. We will expand this document to cover them.
If you are distributing the BusyBox binary, you also have to distribute the corresponding
source code. If you modified the source, you have to distribute the modified source.
8
Add yourself to the Products page
We (BusyBox developers) would be happy to add the information about your product
which uses BusyBox to our Products page. In order to be added there, post a message
to the BusyBox mailing list when the product ships. While at it, the following information
would cover the GPL licensing questions about the product:
A) a description of the product (including the build environment: processor type, libc
version, kernel version).
B) identify the specific version of BusyBox it uses.
C) identify any modifications made to that version (either by linking to a nicely broken
up series of "diff -u" patches on the web, or attaching the patches to the message, or
explicitly saying it isn't modified).
D) attach (or give URL to) the .config file you used to build the BusyBox binary.
E) A link to your website.
This is the "being nice to the developers" approach, which acts as a sort of free
advertising within the developer community.
You really can't go wrong with either approach: you can obey the letter of the license
according to a strict reading, or you can make the developers as happy as possible so they
not only have no reason to make trouble, but actually like you. (Heck, we won't complain
if you do both. :)
Developer's note: GPL versions
Version 2 of the GPL is the only version of the GPL which current versions of BusyBox
may be distributed under. New code added to the tree is licensed GPL version 2, and the
project's license is GPL version 2.
If you are a developer and you want to use a small part of BusyBox source code in your
project, please check the header comments of the source file(s) you are taking code from.
Even though BusyBox code, as a whole, can only be used under GPL version 2, some
individual files may have more permissive licenses: "GPL version 2 or later" - meaning that you
can also reuse the code from this source file for a project which is distributed under GPLv3,
and "Public domain" - the code in these files have no licensing restrictions whatsoever.
Historical details:
Older versions of BusyBox (versions 1.2.2 and earlier, up through about svn 16112)
included variants of the recommended "GPL version 2 or (at your option) later versions"
boilerplate permission grant. Ancient versions of BusyBox (before svn 49) did not specify
any version at all, and section 9 of GPLv2 (the most recent version at that time) says
those old versions may be redistributed under any version of GPL (including the obsolete
V1). This was conceptually similar to a dual license, except that the different licenses were
different versions of the GPL.
However, BusyBox has apparently always contained chunks of code that were licensed
under GPL version 2 only. Examples include applets written by Linus Torvalds (util-linux/
mkfs_minix.c and util_linux/mkswap.c) which stated they "may be redistributed as per
13
straightforwardly into another language. (Hereinafter, translation is included without
limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for making modifications
to it. For a library, complete source code means all the source code for all modules it
contains, plus any associated interface definition files, plus the scripts used to control
compilation and installation of the library.
Activities other than copying, distribution and modification are not covered by this
License; they are outside its scope. The act of running a program using the Library is not
restricted, and output from such a program is covered only if its contents constitute a
work based on the Library (independent of the use of the Library in a tool for writing it).
Whether that is true depends on what the Library does and what the program that uses
the Library does.
1.
You may copy and distribute verbatim copies of the Library's complete source code
as you receive it, in any medium, provided that you conspicuously and appropriately
publish on each copy an appropriate copyright notice and disclaimer of warranty;
keep intact all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the Library.
You may charge a fee for the physical act of transferring a copy, and you may at your
option offer warranty protection in exchange for a fee.
2.
You may modify your copy or copies of the Library or any portion of it, thus forming a
work based on the Library, and copy and distribute such modifications or work under
the terms of Section 1 above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices stating that you
changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no charge to all third
parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a table of data to
be supplied by an application program that uses the facility, other than as an
argument passed when the facility is invoked, then you must make a good faith
effort to ensure that, in the event an application does not supply such function
or table, the facility still operates, and performs whatever part of its purpose
remains meaningful.
(For example, a function in a library to compute square roots has a purpose that
is entirely well-defined independent of the application. Therefore, Subsection
2d requires that any application-supplied function or table used by this function
must be optional: if the application does not supply it, the square root function
must still compute square roots.)
These requirements apply to the modified work as a whole. If identifiable sections
of that work are not derived from the Library, and can be reasonably considered
independent and separate works in themselves, then this License, and its terms, do
18
not apply to those sections when you distribute them as separate works. But when
you distribute the same sections as part of a whole which is a work based on the
Program, the distribution of the whole must be on the terms of this License, whose
permissions for other licensees extend to the entire whole, and thus to each and
every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work
written entirely by you; rather, the intent is to exercise the right to control the
distribution of derivative or collective works based on the Program.
In addition, mere aggregation of another work not based on the Program with
the Program (or with a work based on the Program) on a volume of a storage or
distribution medium does not bring the other work under the scope of this License.
3.
You may copy and distribute the Program (or a work based on it, under Section 2) in
object code or executable form under the terms of Sections 1 and 2 above provided
that you also do one of the following:
a)
Accompany it with the complete corresponding machine-readable source code,
which must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange; or,
b)
Accompany it with a written offer, valid for at least three years, to give any
third party, for a charge no more than your cost of physically performing source
distribution, a complete machine-readable copy of the corresponding source
code, to be distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c)
Accompany it with the information you received as to the offer to distribute
corresponding source code. (This alternative is allowed only for noncommercial
distribution and only if you received the program in object code or executable
form with such an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for making
modifications to it. For an executable work, complete source code means all the
source code for all modules it contains, plus any associated interface definition
files, plus the scripts used to control compilation and installation of the executable.
However, as a special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on which the
executable runs, unless that component itself accompanies the executable.
If distribution of executable or object code is made by offering access to copy from
a designated place, then offering equivalent access to copy the source code from the
same place counts as distribution of the source code, even though third parties are
not compelled to copy the source along with the object code.
4.
You may not copy, modify, sublicense, or distribute the Program except as expressly
provided under this License. Any attempt otherwise to copy, modify, sublicense or
distribute the Program is void, and will automatically terminate your rights under this
License. However, parties who have received copies, or rights, from you under this
4
The text of the license obliges you to provide source code for binaries you distribute, and
gives you exactly three options for providing source code. These options are spelled out
in section 3 of the LICENSE file in the BusyBox source tarball:
3A) bundle the complete corresponding source with the binary.
3B) bundle a written offer good for three years to provide source upon request (these
days this is often a URL).
3C) point you users at the upstream source (i.e. pass along somebody else's 3B offer).
Using option 3A, that is, putting exact BusyBox source and .config file you used to build
the binary on the same medium which you use to ship the binary, is the most bullet-
proof approach to license compliance. If you do that, you can stop reading, your license
obligations have been satisfied.
Option 3B makes sense if you do not distribute BusyBox binaries on a medium like CD-
ROM, but instead ship them in a device's firmware. Storing the source there might be
an unacceptable waste of space. In this case, add a note to the device's documentation
that it uses open-source components and that their source can be downloaded from the
company's website. Give exact URL to the page where it can be downloaded.
Regardless of whether you use option 3A or 3B, please make sure you distribute the
exact same source tree you used to build the binary. It doesn't have to be a single archive.
Indeed, most people distribute modified sources in the form of unmodified busybox-
N.N.N.tar.bz2 archive and a set of patches which add features or fix problems.
If you added an applet, or an option to one of the applets in BusyBox, or fixed a bug, and
the source tree lacks this addition or fix, then you are not fulfilling GPLv2 requirements.
You can avoid having to distribute source by taking option 3C. However, option 3C has
some restrictions, and if your company wants to be paranoid and be 100% sure everything
is crystal clear about complying with the license, perhaps it should use options 3A or 3B.
Option 3C: using unmodified source
Option 3C is what most open source people use, and it's so lenient lots of developers
don't even think about it. Technically 3C is also full of restrictions (it's "allowed only for
noncommercial distribution", and it only applies if you're redistributing a binary you didn't
build yourself ) intended to push people to use 3A or 3B, but the BusyBox project has
generally let those restrictions slide (as has most of the rest of the open source world)
when dealing with people who are acting in good faith.
Using option 3C means identifying the specific version of the public source you used, where
to get it from, and confirming that your binary was built from unmodified "vanilla" sources.
So if you built an unmodified BusyBox release and you point people at the URL to
the SPECIFIC source tarball on busybox.net you built it from and truthfully say "that's
it, no patches", we've accepted that as compliance even from commercial companies.
(We're not really interested in forcing random strangers to mirror stuff we've already
got. OSUOSL provides very nice high bandwidth hosting for us, and if they didn't there's
always sourceforge and savannah and ibiblio and kernel.org and...)
9
the Linux copyright" (which Linus clarified in the 2.4.0-pre8 release announcement in
2000 was GPLv2 only), and Linux kernel code copied into libbb/loop.c (after Linus's
announcement). There are probably more, because all we used to check was that the
code was GPL, not which version. (Before the GPLv3 draft proceedings in 2006, it was a
purely theoretical issue that didn't come up much.)
To summarize: every version of BusyBox may be distributed under the terms of GPL
version 2. New versions (after 1.2.2), as a whole, may only be distributed under GPLv2,
not under other versions of the GPL. Older versions of BusyBox might (or might not) be
distributable under other versions of the GPL. If you want to use a GPL version other
than 2, you should start with one of the old versions such as release 1.2.2 or svn 16112,
and do your own homework to identify and remove any code that can't be licensed
under the GPL version you want to use. New development is all GPLv2.
20. lzma
License
LZMA SDK is placed in the public domain.
21. WPA Supplicant
=====================
Copyright (c) 2003-2010, Jouni Malinen <j@w1.fi> and contributors All Rights Reserved.
This program is dual-licensed under both the GPL version 2 and BSD license. Either
license may be used at your option.
License
-------
GPL v2:
This program is free software; you can redistribute it and/or modify it under the terms of
the GNU General Public License version 2 as published by the Free Software Foundation.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this
program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
Boston, MA 02110-1301 USA
14
not apply to those sections when you distribute them as separate works. But when
you distribute the same sections as part of a whole which is a work based on the
Library, the distribution of the whole must be on the terms of this License, whose
permissions for other licensees extend to the entire whole, and thus to each and
every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest your rights to work
written entirely by you; rather, the intent is to exercise the right to control the
distribution of derivative or collective works based on the Library.
In addition, mere aggregation of another work not based on the Library with
the Library (or with a work based on the Library) on a volume of a storage or
distribution medium does not bring the other work under the scope of this License.
3.
You may opt to apply the terms of the ordinary GNU General Public License instead
of this License to a given copy of the Library. To do this, you must alter all the notices
that refer to this License, so that they refer to the ordinary GNU General Public
License, version 2, instead of to this License. (If a newer version than version 2 of
the ordinary GNU General Public License has appeared, then you can specify that
version instead if you wish.) Do not make any other change in these notices.
Once this change is made in a given copy, it is irreversible for that copy, so the
ordinary GNU General Public License applies to all subsequent copies and derivative
works made from that copy.
This option is useful when you wish to copy part of the code of the Library into a
program that is not a library.
4.
You may copy and distribute the Library (or a portion or derivative of it, under
Section 2) in object code or executable form under the terms of Sections 1 and 2
above provided that you accompany it with the complete corresponding machine-
readable source code, which must be distributed under the terms of Sections 1 and
2 above on a medium customarily used for software interchange.
If distribution of object code is made by offering access to copy from a designated
place, then offering equivalent access to copy the source code from the same place
satisfies the requirement to distribute the source code, even though third parties are
not compelled to copy the source along with the object code.
5.
A program that contains no derivative of any portion of the Library, but is designed
to work with the Library by being compiled or linked with it, is called a "work that
uses the Library". Such a work, in isolation, is not a derivative work of the Library,
and therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library creates an
executable that is a derivative of the Library (because it contains portions of the
Library), rather than a "work that uses the library". The executable is therefore
covered by this License. Section 6 states terms for distribution of such executables.
When a "w
m
m
w
m
w
W
19
License will not have their licenses terminated so long as such parties remain in full
compliance.
5.
You are not required to accept this License, since you have not signed it. However,
nothing else grants you permission to modify or distribute the Program or its
derivative works. These actions are prohibited by law if you do not accept this License.
Therefore, by modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and all its terms and
conditions for copying, distributing or modifying the Program or works based on it.
6.
Each time you redistribute the Program (or any work based on the Program), the
recipient automatically receives a license from the original licensor to copy, distribute
or modify the Program subject to these terms and conditions. You may not impose
any further restrictions on the recipients' exercise of the rights granted herein. You
are not responsible for enforcing compliance by third parties to this License.
7.
If, as a consequence of a court judgment or allegation of patent infringement or
for any other reason (not limited to patent issues), conditions are imposed on you
(whether by court order, agreement or otherwise) that contradict the conditions
of this License, they do not excuse you from the conditions of this License. If you
cannot distribute so as to satisfy simultaneously your obligations under this License
and any other pertinent obligations, then as a consequence you may not distribute
the Program at all. For example, if a patent license would not permit royalty-free
redistribution of the Program by all those who receive copies directly or indirectly
through you, then the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under any particular
circumstance, the balance of the section is intended to apply and the section as a
whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any patents or other
property right claims or to contest validity of any such claims; this section has the
sole purpose of protecting the integrity of the free software distribution system,
which is implemented by public license practices. Many people have made generous
contributions to the wide range of software distributed through that system in
reliance on consistent application of that system; it is up to the author/donor to
decide if he or she is willing to distribute software through any other system and a
licensee cannot impose that choice.
This section is intended to make thoroughly clear what is believed to be a
consequence of the rest of this License.
8.
If the distribution and/or use of the Program is restricted in certain countries either
by patents or by copyrighted interfaces, the original copyright holder who places the
Program under this License may add an explicit geographical distribution limitation
excluding those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates the limitation as
if written in the body of this License.
5
Note that you must do all three parts: what version did you use, where can we get it
from, and explicitly state that you did not modify it. Don't skip steps.
If you don't specify your version, we can't tell if you used some random git snapshot out
of the development branch that was close to a release version but not quite.
If you don't explicitly say you didn't modify it, we could spend weeks combing through
an assembly dump of your binary, or trying to find the exact cross-compiler version you
used to produce a byte-for-byte identical file, but the license says we shouldn't have to.
Proving a negative is a lot of work, and making us do this work would be shirking your
obligations under GPLv2.
Even if you just backported changes out of the development branch, that's not a vanilla
unmodified release. The component parts may already be public, but you have to give
us enough information to understand what you did, and the opportunity to produce an
equivalent binary from that source, or you're not complying with 3C.
The above is a fairly lenient interpretation of GPLv2 that works a bit like the BSD license's
"advertising clause": that one required you to thank the University of California, this one
requires you to identify the specific source code of the GPL binaries you distributed. The
GPL actually allows us to be more draconian than this (for starters, clause 3C doesn't
have to apply to commercial companies at all), but as long as everybody's acting in good
faith most projects seem happy with just identifying the specific source for binaries built
from an unmodified upstream version.
Most open source developers are lenient in this way because we actually prefer a good
3C compliance to a bad 3A compliance. We've all received tarballs of who knows what
old version, with who knows what changes, and wasted an afternoon proving that "this
is basically source control commit number BLAH, plus backports of commits blah, blah,
blah, blah, and blah, plus they commented out these five lines, changed two default
values that they could have overridden from the command line anyway, and added some
debug statements." I.E. we just wasted three hours confirming there's nothing remotely
interesting here that we didn't already know.
Obviously if you did modify the source to the binary you distributed, and you don't
think you need to at least provide us a patch, you've missed the point of GPLv2 entirely.
This is another incentive to get your patch merged, so you can ship a vanilla upstream
version and not have to host your patch on your own website for 3 years after you stop
distributing your product.
The next paragraph right after 3C essentially says you're supposed to give us your .config
file as well, and sometimes we've asked for that as long as we're contacting people
anyway. But to be honest, if we don't need to contact you to get the other stuff anyway,
we seldom bother. (We can generally figure that one out for ourselves. I note that Linux
kernel .configs are harder to reverse engineer, for that you'll probably need to provide a
.config for to make the developers happy, but they put in a /proc/config.gz option to make
it easy. :)
10
(this copy of the license is in COPYING file)
Alternatively, this software may be distributed, used, and modified under the terms of
BSD license:
Redistribution and use in source and binary forms, with or without modification, are
permitted provided that the following conditions are met:
1.
Redistributions of source code must retain the above copyright notice, this list of
conditions and the following disclaimer.
2.
Redistributions in binary form must reproduce the above copyright notice, this list of
conditions and the following disclaimer in the documentation and/or other materials
provided with the distribution.
3.
Neither the name(s) of the above-listed copyright holder(s) nor the names of its
contributors may be used to endorse or promote products derived from this
software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
22. Libexif
23. Ebase
24. Mp3info
25. Libotf
26. fribidi
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim
copies of this license document, but changing it is not allowed. [This is the first released
version of the Lesser GPL. It also counts as the successor of the GNU Library Public
License, version 2, hence the version number 2.1.]
15
w
w
w
w
m
m
m
m
m
w
w
w
O
w
w
m
w
m
A
w
w
w
A
m
m
w
w
w
w
m
m
m m
w
m
w
m
m
m
w
w
m
w
m
m
m
w
A
m
A
m
w
w
m
m
w
w
w
w
m
w
w
w
m
m
w
m
m
m
w
w
m
m
U
m
m
w
A
m
m
m
m
m
w
w
m
m
m
w
w
w
m
w
A
m
w
w
w
m
m
m
m
w
m
m
m
m
m
20

Advertisement

Table of Contents
loading

Table of Contents