Re: [patch 026/158] mm: emit tracepoint when RSS changes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 3 Dec 2019 10:44:36 +0000
Primiano Tucci <primiano@xxxxxxxxxx> wrote:

> Furthermore, from a pure technical viewpoint, dynamic linking is a major pain
> for many cross-platform projects because has different subtleties on each
> platform. Most projects just ship big statically linked monoliths.
> Having a LGPL dependency in Perfetto means telling them "if you want to use
> this tracing project you need to change your build rules / packaging strategy
> and start dealing with dynamic linking on four different platforms
> (Linux, Android, Mac, Windows)". This would be a show-stopper for our
> project.
>

LGPL does not impose restrictions on having to be dynamically linked.
You can legally statically link a LGPL project as well. There's no
problem with that. You can do that with glibc too.

The one reason I can see that Google wouldn't want to include it, is
that you would also be required to maintain the library that you use.
That is, if someone wants the source code of the library you are using,
you must be able to provide it for them. That's the requirement that
LGPL imposes.

Now it is true that if someone wants to modify the LGPL library, enough
must be distributed to allow the user to do that. But as your code is
Apache, I'm guessing you can give people enough code to still do that.

From: https://copyleft.org/guide/comprehensive-gpl-guidech11.html#x14-10100010.1

"There are, however, subtle differences and additions. For example not
 only is CCS required (as would be with normal versions of GPL), but
 also the CCS provided must enable a developer to regenerate the
 modified version of the entire combined work, using with a modified
 version of the LGPL’d work (as a replacement for the version a
 distributor provided). For example, LGPL’d code is statically linked to
 a non-copyleft executable, the required source code must also include
 sufficient material to split the distributed executable and relink with
 a modified version of the library."

Thus, you are right that code licensed under LGPL is a "handle with
care". But there's a lot of code under LGPL, I'm surprised that there's
not better mechanisms to handle it.

One solution I'm looking at is creating flex/bison templates to do the
parsing. If we do this, those could be licensed under a different
license that would make it easier for others to include this code.

-- Steve





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux