I am using the GPLv3 license for a tool that embeds files into source code. However as part of it's operation it copies a portion of it's own source into projects that use it (as a library to allow files to be read). I don't want this file, nor the files generated by the execution of the program to be licensed under the GPL.
I am using the standard GPLv3 header in all my files:
// <one line to give the program's name and a brief idea of what it does.> // Copyright (C) <year> <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 3 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, see <https://www.gnu.org/licenses/>.
However I am not sure what to do about the file that gets copied in, nor the files generated by the program as it runs - is there a specific header I should use, or should I merely have a small header indicating that it was generated by my program and is exempt from the licensing my program is under?
I have currently just used the existing GPLv3 header in my files, with a small addition to indicate the different licensing:
// As an exception, you may distribute programs that contain code generated // with or copied into by this program under terms of your choice.