我使用的是一个在BSD-2许可下授权的库,我想重写他们使用的方法之一,并稍微修改它。
我的问题是,当我从方法复制代码时,需要在所述方法的注释中包括哪些内容?我是否必须全力以赴,将整个许可证都包括在内,还是可以输入更简单的内容?
这是他们在所有库文件的顶部拥有的许可证:
// Copyright (c) 2008-9, the Phantom Inker. All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
//
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.
//
// * 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 PHANTOM INKER "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.发布于 2015-08-15 18:37:10
简短回答:是的。您确实需要在包含Phantom Inker先生的代码或修改版本的任何和所有源发行版中包含整个BSD“许可注释”。这是许可证对您施加的极少数条件之一:
// * Redistributions of source code must retain the above copyright
// notice, this list of conditions and the following disclaimer.你贴上的注释似乎包括一个版权声明,一个条件列表,然后是一个免责声明,所以所有这些都必须在你的版本中“保留”。
另外,当您修改其他人的代码时,最好添加一条额外的注释,说明您修改了它,而原始版本拥有这样和那样的许可,这并不是因为任何许可都要求您这样做,而是因为它清楚地说明了正在发生的事情。因此,您实际上应该有一个比原始代码更长的注释块。
好消息--如果你担心这堵墙的文字在你的代码中是个眼珠子--那就是你不必把这个注释块放在这个特定方法的顶部或中间,只要你让它所指的内容足够清楚。我个人会把所有这些授权材料放在文件的顶部,确保你的附加评论写着“foo()方法的代码取自幻影制造商的FooLib v1.2,并由布雷特修改。FooLib v1.2的版权声明如下:”那么在实际的方法上有一个单行注释,上面写着“有关此方法的许可信息,请参阅该文件顶部的注释”。
https://softwareengineering.stackexchange.com/questions/293783
复制相似问题