Some software packages have restrictive licenses or can be in violation of the law in some countries (such as violating a patent). What we can do with them varies a lot, depending on the exact wordings of the respective licenses.
Note: It is your responsibility as a porter to read the licensing terms of the software and make sure that the FreeBSD project will not be held accountable for violating them by redistributing the source or compiled binaries either via FTP or CDROM. If in doubt, please contact the FreeBSD ports mailing list <freebsd-ports@FreeBSD.org>.
There are two variables you can set in the Makefile to handle the situations that arise frequently:
If the port has a ``do not sell for profit'' type of license, set the variable NO_CDROM to a string describing the reason why. We will make sure such ports will not go into the CDROM come release time. The distfile and package will still be available via FTP.
If the resulting package needs to be built uniquely for each site, or the resulting binary package cannot be distributed due to licensing; set the variable NO_PACKAGE to a string describing the reason why. We will make sure such packages will not go on the FTP site, nor into the CDROM come release time. The distfile will still be included on both however.
If the port has legal restrictions on who can use it (e.g., patented stuff) or has a ``no commercial use'' license, set the variable RESTRICTED to be the string describing the reason why. For such ports, the distfiles/packages will not be available even from our FTP sites.
Note: The GNU General Public License (GPL), both version 1 and 2, should not be a problem for ports.
Note: If you are a committer, make sure you update the ports/LEGAL file too.