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]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to