mirror of
https://github.com/jmcnamara/libxlsxwriter
synced 2025-03-28 21:13:14 +00:00
209 lines
9.9 KiB
Plaintext
209 lines
9.9 KiB
Plaintext
/**
|
|
|
|
@page license License
|
|
|
|
Libxlsxwriter is released under a FreeBSD license:
|
|
|
|
Copyright 2014-2025, John McNamara <jmcnamara@cpan.org>
|
|
All rights reserved.
|
|
|
|
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.
|
|
|
|
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.
|
|
|
|
The views and conclusions contained in the software and documentation are
|
|
those of the authors and should not be interpreted as representing
|
|
official policies, either expressed or implied, of the FreeBSD Project.
|
|
|
|
|
|
Libxlsxwriter includes the `queue.h` and `tree.h` macros from FreeBSD. It also
|
|
includes and, unless overridden, uses the optional libraries `minizip`,
|
|
`tmpfileplus` and `md5`. It also includes the `emyg_dtoa` library but doesn't
|
|
use it by default. These components have the following licenses:
|
|
|
|
|
|
Queue.h from FreeBSD:
|
|
|
|
Copyright (c) 1991, 1993
|
|
The Regents of the University of California. All rights reserved.
|
|
|
|
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.
|
|
4. Neither the name of the University 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 REGENTS 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 REGENTS 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.
|
|
|
|
|
|
Tree.h from FreeBSD:
|
|
|
|
Copyright 2002 Niels Provos <provos@citi.umich.edu>
|
|
All rights reserved.
|
|
|
|
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.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
|
|
|
|
|
|
The `minizip` files used in the libxlsxwriter source tree are taken from the
|
|
`zlib` ` contrib/minizip` directory. [Zlib](http://www.zlib.net) has the
|
|
following License/Copyright:
|
|
|
|
(C) 1995-2013 Jean-loup Gailly and Mark Adler
|
|
|
|
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.
|
|
|
|
Jean-loup Gailly Mark Adler
|
|
jloup@gzip.org madler@alumni.caltech.edu
|
|
|
|
The `minizip` files have the following additional copyright declarations:
|
|
|
|
Copyright (C) 1998-2010 Gilles Vollant
|
|
(minizip) ( http://www.winimage.com/zLibDll/minizip.html )
|
|
|
|
Modifications for Zip64 support
|
|
Copyright (C) 2009-2010 Mathias Svensson ( http://result42.com )
|
|
|
|
Note, it is possible to compile libxlsxwriter without statically linking the
|
|
`minizip` files and instead dynamically linking to `lminizip`, see
|
|
@ref gsg_minizip.
|
|
|
|
[Tmpfileplus](http://www.di-mgt.com.au/c_function_to_create_temp_file.html)
|
|
has the following license:
|
|
|
|
This Source Code Form is subject to the terms of the Mozilla Public
|
|
License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
Copyright (c) 2012-16 David Ireland, DI Management Services Pty Ltd
|
|
<http://www.di-mgt.com.au/contact/>.
|
|
|
|
See the [Mozilla Public License, v. 2.0](http://mozilla.org/MPL/2.0/).
|
|
|
|
Note, it is possible to compile libxlsxwriter using the standard library
|
|
`tmpfile()` function instead of `tmpfileplus`, see @ref gsg_tmpdir.
|
|
|
|
The [Milo Yip DTOA library](https://github.com/miloyip/dtoa-benchmark) for
|
|
converting doubles to strings. It has the following license:
|
|
|
|
Copyright (C) 2015 Doug Currie
|
|
based on dtoa_milo.h
|
|
Copyright (C) 2014 Milo Yip
|
|
|
|
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 Milo Yip DTOA library (emyg_dtoa) is used to avoid issues where the
|
|
standard sprintf() dtoa function changes output based on locale settings. It
|
|
is also 40-50% faster than the standard dtoa for raw numeric data. The use of
|
|
this library is optional. If you wish to use it you can pass
|
|
`USE_DTOA_LIBRARY=1` to make when compiling.
|
|
|
|
[Openwall MD5](https://openwall.info/wiki/people/solar/software/public-domain-source-code/md5)
|
|
has the following licence:
|
|
|
|
This software was written by Alexander Peslyak in 2001. No copyright is
|
|
claimed, and the software is hereby placed in the public domain.
|
|
In case this attempt to disclaim copyright and place the software in the
|
|
public domain is deemed null and void, then the software is
|
|
Copyright (c) 2001 Alexander Peslyak and it is hereby released to the
|
|
general public under the following terms:
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted.
|
|
|
|
There's ABSOLUTELY NO WARRANTY, express or implied.
|
|
|
|
(This is a heavily cut-down "BSD license".)
|
|
|
|
Note, the MD5 library is used to avoid including duplicate image files in the
|
|
xlsx file. If you don't want to use this code, and the additional licence, you
|
|
can use OpenSSL's MD5 functions instead by passing `USE_OPENSSL_MD5=1` to
|
|
make. If this functionality isn't required it is possible to compile
|
|
libxlsxwriter without image deduplication by passing `USE_NO_MD5=1` to make.
|
|
|
|
See also @ref gsg_md5.
|
|
|
|
Next: @ref changes
|
|
*/
|