aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlex Beregszaszi <alex@rtfs.hu>2017-07-02 06:34:22 +0800
committerGitHub <noreply@github.com>2017-07-02 06:34:22 +0800
commitd230048dc8385744203528115aa9bb5c0fba4339 (patch)
treefe34c883a108a8cec4ef7ffc9fefd87ad31a3971
parentdd9416be29e9ac22b9b2a33cb9424514067cc6bf (diff)
parentc78a3a0b01d934c31f599523bb941d0a6e6ecbc8 (diff)
downloaddexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar.gz
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar.bz2
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar.lz
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar.xz
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.tar.zst
dexon-solidity-d230048dc8385744203528115aa9bb5c0fba4339.zip
Merge pull request #2493 from ethereum/moreLicenses
Add other licenses.
-rw-r--r--cmake/templates/license.h.in70
-rw-r--r--solc/CommandLineInterface.cpp1
-rw-r--r--solc/jsonCompiler.cpp4
3 files changed, 73 insertions, 2 deletions
diff --git a/cmake/templates/license.h.in b/cmake/templates/license.h.in
index 6cdbc38d..84524a52 100644
--- a/cmake/templates/license.h.in
+++ b/cmake/templates/license.h.in
@@ -1,5 +1,75 @@
#pragma once
+#include <string>
+
+static std::string const otherLicenses{R"(Most of the code is licensed under GPLv3 (see below), the license for individual
+parts are as follows:
+
+libkeccak-tiny:
+ A single-file implementation of SHA-3 and SHAKE implemented by David Leon Gil
+ License: CC0, attribution kindly requested. Blame taken too, but not liability.
+
+jsoncpp:
+ The JsonCpp library's source code, including accompanying documentation,
+ tests and demonstration applications, are licensed under the following
+ conditions...
+
+ The JsonCpp Authors explicitly disclaim copyright in all
+ jurisdictions which recognize such a disclaimer. In such jurisdictions,
+ this software is released into the Public Domain.
+
+ In jurisdictions which do not recognize Public Domain property (e.g. Germany as of
+ 2010), this software is Copyright (c) 2007-2010 by The JsonCpp Authors, and is
+ released under the terms of the MIT License (see below).
+
+ In jurisdictions which recognize Public Domain property, the user of this
+ software may choose to accept it either as 1) Public Domain, 2) under the
+ conditions of the MIT License (see below), or 3) under the terms of dual
+ Public Domain/MIT License conditions described here, as they choose.
+
+ The MIT License is about as close to Public Domain as a license can get, and is
+ described in clear, concise terms at:
+
+ http://en.wikipedia.org/wiki/MIT_License
+
+ The full text of the MIT License follows:
+
+ ========================================================================
+ Copyright (c) 2007-2010 The JsonCpp Authors
+
+ 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.
+ ========================================================================
+ (END LICENSE TEXT)
+
+ The MIT license is compatible with both the GPL and commercial
+ software, affording one all of the rights of Public Domain with the
+ minor nuisance of being required to keep the above copyright notice
+ and license text in the source code. Note also that by accepting the
+ Public Domain "license" you can re-license your copy using whatever
+ license you like.
+
+All other code is licensed under GPL version 3:
+
+)"};
+
static char const licenseText[] = {
@LICENSE_TEXT@, 0
};
diff --git a/solc/CommandLineInterface.cpp b/solc/CommandLineInterface.cpp
index d0134113..0222ccb0 100644
--- a/solc/CommandLineInterface.cpp
+++ b/solc/CommandLineInterface.cpp
@@ -190,6 +190,7 @@ static void version()
static void license()
{
+ cout << otherLicenses << endl;
// This is a static variable generated by cmake from LICENSE.txt
cout << licenseText << endl;
exit(0);
diff --git a/solc/jsonCompiler.cpp b/solc/jsonCompiler.cpp
index adf991d6..de797b3c 100644
--- a/solc/jsonCompiler.cpp
+++ b/solc/jsonCompiler.cpp
@@ -266,8 +266,8 @@ extern "C"
{
extern char const* license()
{
- /// TOOD: include the copyright information on the top.
- return licenseText;
+ static string fullLicenseText = otherLicenses + licenseText;
+ return fullLicenseText.c_str();
}
extern char const* version()
{