Hi,
On 22/08/2021 01:31, Oliver Kranz wrote:
On 21.08.21 22:26, Konrad Weihmann wrote:
I'd truly like to oppose the idea of static linking by default, how
juicy this idea may sound...
But if we switch to static linking, literary no one can be be sure
about licensing anymore (to me one of the major weak spots of go).
I see your point here. The main concern was to get rid of the 37MB go
std lib but I missed the licensing part. I'll have a deeper look into
the golang linking.
One major issue with licensing and reproducibility is that go pulls in
dependencies. This issue can also be seen by many other "modern"
languages and you can also modify your Makefile or Cmake to pull in
dependencies, but that's not what we typically want when we BitBake.
A workaround for reproducibility is to use a local go cache.
A workaround for licensing is to split the dependencies into separate
recipes.
Konrad describes it here:
https://bitbakesoda.blogspot.com/2021/04/making-go-not-no-go.html
Now, if we make static linking the default things might get even more
interesting licensing-wise, depending on whom you ask ;)
I think the main issue here is LGPL2/3 vs. GPL2/3, "derivative work",
"installation requirements" and what you need to ship for open source
license compliance.
LGPL2/3:
https://tldrlegal.com/license/gnu-lesser-general-public-license-v2.1-(lgpl-2.1)
https://tldrlegal.com/license/gnu-lesser-general-public-license-v3-(lgpl-3)
GPL2/3:
https://tldrlegal.com/license/gnu-general-public-license-v2
https://tldrlegal.com/license/gnu-general-public-license-v3-(gpl-3)
derivative work:
The GPL2 license describes it like this: The "Program", below, refers to
any such program or work, and a "work based on the Program" means either
the Program or any derivative work under copyright law: that is to say,
a work containing the Program or a portion of it, either verbatim or
with modifications and/or translated into another language.
see also:
https://lwn.net/Articles/548216/
"installation requirements":
LGPL3:
If the software is part of a consumer device, you must include the
installation information necessary to modify and reinstall the software.
GPL3:
If the software is part of a consumer device, you must include the
installation information necessary to modify and reinstall the software.
Bradley seems to have another opinion lately (July 23, 2021)
https://sfconservancy.org/blog/?author=bkuhn
Regards,
Robert
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#155071):
https://lists.openembedded.org/g/openembedded-core/message/155071
Mute This Topic: https://lists.openembedded.org/mt/85048858/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-