[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GPL Interpretation on load [Was: [bug #61594] suggest new $(hash ...) fu
From: |
rsbecker |
Subject: |
GPL Interpretation on load [Was: [bug #61594] suggest new $(hash ...) function] |
Date: |
Wed, 1 Dec 2021 09:09:55 -0500 |
On December 1, 2021 9:06 AM, Tim Murphy wrote:
<big snip>
> -load $(XTRA_OUTPUTDIR)/hash$(XTRA_EXT)
This thread brings up a question. The load function checks for GPL
compatibility.
/* Assert that the GPL license symbol is defined. */
symp = (load_func_t) dlsym (dlp, "plugin_is_GPL_compatible");
if (! symp)
OS (fatal, flocp,
_("Loaded object %s is not declared to be GPL compatible"),
ldname);
I am wondering why that is the case. A DLL that is loaded by GNU Make is not
necessarily subject to GPLv2 or GPLv3. GPLvx makes it clear that you are
subject to GPLvx if you include portions of the code from the project under
license. However, an external DLL that is loaded by GNU Make via dlopen does
not have to use any code from the code base. Using a published API, which would
be the function interface has precedent for being excluded from license
enforcement - the UNIX kernel API is an example that is purely public domain
itself, while the individual header files are subject to licenses.
So, my question is why the GPL enforcement outside of what would be a usual
interpretation for GPLv3, for external integrations that may have nothing
specifically to do with the Make code? Sure, if you include function.h then yes
you are subject to it, but you do not have to. This seems overly aggressive and
not really necessary. Is there an answer back in history that might explain it?
Thanks,
Randall
- GPL Interpretation on load [Was: [bug #61594] suggest new $(hash ...) function],
rsbecker <=