Nada a acrescentar às explicações nas respostas já fornecidas, mas aqui estão as instruções de como moldar os cabeçalhos dos arquivos de origem ( origem ):
2.2 Adicionando modificações da GPL a arquivos com licença permissiva
Um caso mais complicado ocorre quando um desenvolvedor faz alterações protegidas por direitos autorais em um arquivo com licença permissiva que o desenvolvedor está incorporando a um programa da GPL. Os desenvolvedores nessa situação geralmente aplicam a GPL a suas modificações. (No entanto, é possível que o desenvolvedor contribua com um novo código sob termos permissivos, como a licença permissiva que governa o arquivo não modificado. Discutimos esse caso no § 2.3.)
Mesmo que a licença permissiva do projeto externo conceda permissão legal para incorporar o código desse projeto em um projeto da GPL, o desenvolvedor do projeto da GPL deve, no entanto, cumprir o requisito de preservação de aviso na licença permissiva. Em um projeto que usa o método arquivo por arquivo, um desenvolvedor que faz modificações protegidas por direitos autorais em um arquivo licenciado permissivo deve colocar um novo aviso de direitos autorais e um aviso de permissão acima do existente e deixar claro que o desenvolvedor modificou o arquivo. A parte superior do arquivo aparecerá da seguinte maneira:
/*
* Copyright (c) 2007 GPL Project Developer Who Made Changes
*
* This file is free software: you may copy, redistribute 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 file 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, see .
*
* This file incorporates work covered by the following copyright and
* permission notice:
*
* Copyright (c) YEARS_LIST, Permissive Contributor1
* Copyright (c) YEARS_LIST, Permissive Contributor2
*
* 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.
*/
É muito importante que o desenvolvedor preserve todo o aviso de direitos autorais, o aviso de permissão e a isenção de garantia da garantia conforme eles apareceram no código original, conforme exigido pela licença permissiva. Às vezes, vemos avisos da GPL misturados com avisos de licença permissivos - uma prática confusa que obscurece tanto a proveniência do código quanto as permissões precisas que foram concedidas pelos vários detentores de direitos autorais listados nos avisos. Quando diferentes detentores de direitos autorais liberarem suas contribuições sob termos diferentes, os termos que cada um colocou em sua contribuição específica devem ser especificados. Recomendamos fazer uma separação clara e usar recuo, como no exemplo acima.
Essa maneira de organizar os avisos no arquivo torna conveniente para os desenvolvedores escolherem contribuir com termos permissivos ou com a GPL. Se eles desejam disponibilizar suas contribuições sob termos permissivos, podem adicionar seus avisos de direitos autorais ao grupo inferior. Se eles desejam contribuir com a GPL, podem adicionar seus avisos de direitos autorais no topo. Observe, no entanto, que em um único arquivo de origem é tipicamente muito difícil e muitas vezes completamente inviável determinar quais partes de um arquivo são cobertas por termos permissivos. Se o objetivo é disponibilizar código adicional somente sob termos permissivos, o método descrito no § 2.3 deve ser usado.