Given the above, it is possible that SWI-Prolog packages and extensions rely on the GPL, LGPL or other licenses. The predicates below allow for registering license requirements for Prolog files and foreign modules. The predicate license/0 reports which components from the currently configured system are distributed under non-permissive open source licenses and therefore may need to be replaced to suit your requirements.
GPL
license as well as which components prohibit
the use of other license conditions. Likewise for for LGPL components.gpl
,
lgpl
, permissive
or proprietary
.
:- multifile license:license/3. license:license(mylicense, permissive, [ comment('My personal license'), url('http://www.mine.org/license.html') ]). :- license(mylicense).