core/legal-info: allow ignoring packages from the legal-info
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;
- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Introduce the new FOO_GEN_LEGAL_INFO variable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .
---
Note: the name of the variable if up for discussion. However, this will most probably never be used in Buildroot itself, but only in local proprietary forks or br2-external trees. So we will probably never ever see it publicly. So, we do not care much about that variable name...
---
Changes v6 -> v7:
- rename the variable (Thomas, Luca, Peter)
- remove Luca's reviewed/tested-by tags (too much churn since given)
--- docs/manual/adding-packages-generic.txt | 13 +++++++++++++ package/pkg-generic.mk | 16 +++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-)
docs/manual/adding-packages-generic.txt +13 -0
@@ -443,6 +443,19 @@ information is (assuming the package name is +libfoo+) : non-opensource packages: Buildroot will not save the source code for this package when collecting the +legal-info+. +* +LIBFOO_GEN_LEGAL_INFO+ can be set to +YES+ (default) or +NO+ to indicate + that this package should be included or not in the output of the + +legal-info+. If set to +NO+, that package will be completely excluded + from the output of +legal-info+: it will not be listed in the manifest, + the license files and the sources are not saved (the legal-info related + variables are all ignored: +LIBFOO_LICENSE+, +LIBFOO_LICENSE_FILES+, + +LIBFOO_ACTUAL_SOURCE_TARBALL+, +LIBFOO_ACTUAL_SOURCE_SITE+, + +LIBFOO_REDISTRIBUTE+). ++ +.Note +You probably do not want to set it to +NO+ for a package bundled in Buildroot. + It is meant for non-public, confidential, company-proprietary packages. + * +LIBFOO_FLAT_STACKSIZE+ defines the stack size of an application built into the FLAT binary format. The application stack size on the NOMMU architecture processors can't be enlarged at run time. The default stack size for the
package/pkg-generic.mk +15 -1
@@ -502,6 +502,14 @@ endif $(2)_REDISTRIBUTE ?= YES +ifndef $(2)_GEN_LEGAL_INFO + ifdef $(3)_GEN_LEGAL_INFO + $(2)_GEN_LEGAL_INFO = $$($(3)_GEN_LEGAL_INFO) + endif +endif + +$(2)_GEN_LEGAL_INFO ?= YES + $(2)_REDIST_SOURCES_DIR = $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4)))/$$($(2)_RAW_BASE_NAME) # When a target package is a toolchain dependency set this variable to
@@ -782,8 +790,10 @@ endif # We need to extract and patch a package to be able to retrieve its # license files (if any) and the list of patches applied to it (if -# any). +# any). But not if we want to ignore that package completely. +ifeq ($$($(2)_GEN_LEGAL_INFO),YES) $(1)-legal-info: $(1)-patch +endif # We only save the sources of packages we want to redistribute, that are # non-overriden (local or true override).
@@ -796,6 +806,8 @@ endif # legal-info: produce legally relevant info. $(1)-legal-info: +ifeq ($$($(2)_GEN_LEGAL_INFO),YES) + # Packages without a source are assumed to be part of Buildroot, skip them. $$(foreach hook,$$($(2)_PRE_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) ifneq ($$(call qstrip,$$($(2)_SOURCE)),)
@@ -843,6 +855,8 @@ endif # other packages endif # ifneq ($$(call qstrip,$$($(2)_SOURCE)),) $$(foreach hook,$$($(2)_POST_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) +endif # $(2)_GEN_LEGAL_INFO == YES + # add package to the general list of targets if requested by the buildroot # configuration ifeq ($$($$($(2)_KCONFIG_VAR)),y)
Signature · 1 line
2.7.4
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Yann,
Quoted 6 lines · Yann E. MORIN
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;
Quoted 8 lines
- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive,
s/maniufest/manifest/
Quoted 9 lines
patches and license files are not saved into legal-info/ .
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Luca Ceresoli <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Peter Korsgaard <[email protected]>---
Note: the name of the variable if up for discussion. However, this will
s/if up/is up/
Quoted 4 lines
most probably never be used in Buildroot itself, but only in local proprietary forks or br2-external trees. So we will probably never ever see it publicly. So, we do not care much about that variable name...
Yann, you mention setting FOO_GEN_LEGAL_INFO=NO could benefit to virtual packages, but I see no change/patch on the virtual-package infrastructure. Did I miss something?
Quoted 85 lines
---
Changes v6 -> v7:
- rename the variable (Thomas, Luca, Peter)
- remove Luca's reviewed/tested-by tags (too much churn since given)--- docs/manual/adding-packages-generic.txt | 13 +++++++++++++ package/pkg-generic.mk | 16 +++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-)docs/manual/adding-packages-generic.txt +13
-0@@ -443,6 +443,19 @@ information is (assuming the package name is +libfoo+) : non-opensource packages: Buildroot will not save the source code for this package when collecting the +legal-info+. +* +LIBFOO_GEN_LEGAL_INFO+ can be set to +YES+ (default) or +NO+ to indicate + that this package should be included or not in the output of the + +legal-info+. If set to +NO+, that package will be completely excluded + from the output of +legal-info+: it will not be listed in the manifest, + the license files and the sources are not saved (the legal-info related + variables are all ignored: +LIBFOO_LICENSE+, +LIBFOO_LICENSE_FILES+, + +LIBFOO_ACTUAL_SOURCE_TARBALL+, +LIBFOO_ACTUAL_SOURCE_SITE+, + +LIBFOO_REDISTRIBUTE+). ++ +.Note +You probably do not want to set it to +NO+ for a package bundled in Buildroot. + It is meant for non-public, confidential, company-proprietary packages. + * +LIBFOO_FLAT_STACKSIZE+ defines the stack size of an application built into the FLAT binary format. The application stack size on the NOMMU architecture processors can't be enlarged at run time. The default stack size for thepackage/pkg-generic.mk +15
-2@@ -502,6 +502,14 @@ endif $(2)_REDISTRIBUTE ?= YES +ifndef $(2)_GEN_LEGAL_INFO + ifdef $(3)_GEN_LEGAL_INFO + $(2)_GEN_LEGAL_INFO = $$($(3)_GEN_LEGAL_INFO) + endif +endif + +$(2)_GEN_LEGAL_INFO ?= YES + $(2)_REDIST_SOURCES_DIR = $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4)))/$$($(2)_RAW_BASE_NAME) # When a target package is a toolchain dependency set this variable to@@ -782,8 +790,10 @@ endif # We need to extract and patch a package to be able to retrieve its # license files (if any) and the list of patches applied to it (if -# any). +# any). But not if we want to ignore that package completely. +ifeq ($$($(2)_GEN_LEGAL_INFO),YES) $(1)-legal-info: $(1)-patch +endif # We only save the sources of packages we want to redistribute, that are # non-overriden (local or true override).@@ -796,6 +806,8 @@ endif # legal-info: produce legally relevant info. $(1)-legal-info: +ifeq ($$($(2)_GEN_LEGAL_INFO),YES) + # Packages without a source are assumed to be part of Buildroot, skip them. $$(foreach hook,$$($(2)_PRE_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) ifneq ($$(call qstrip,$$($(2)_SOURCE)),)@@ -843,6 +855,8 @@ endif # other packages endif # ifneq ($$(call qstrip,$$($(2)_SOURCE)),) $$(foreach hook,$$($(2)_POST_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) +endif # $(2)_GEN_LEGAL_INFO == YES + # add package to the general list of targets if requested by the buildroot # configuration ifeq ($$($$($(2)_KCONFIG_VAR)),y) --2.7.4
Quoted 4 lines
_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
Regards,
Signature · 1 line
Samuel
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Samuel, All,
On 2016-10-15 16:58 +0200, Samuel Martin spake thusly:
Quoted 11 lines · Yann E. MORIN
Quoted 10 lines
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 5 lines
Quoted 4 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive,s/maniufest/manifest/
Fixed.
Quoted 10 lines
Quoted 9 lines
patches and license files are not saved into legal-info/ .
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Luca Ceresoli <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Peter Korsgaard <[email protected]>---
Note: the name of the variable if up for discussion. However, this wills/if up/is up/
Fixed.
Quoted 6 lines
Quoted 3 lines
most probably never be used in Buildroot itself, but only in local proprietary forks or br2-external trees. So we will probably never ever see it publicly. So, we do not care much about that variable name...
Yann, you mention setting FOO_GEN_LEGAL_INFO=NO could benefit to virtual packages, but I see no change/patch on the virtual-package infrastructure. Did I miss something?
Indeed. No, you did not miss anything: I did not (yet) change the virtual packages. I'll do so when this patch gets applied (after all the controversy about it have been shaken out).
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
In reply to Yann E. MORINQuoted 12 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .
Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
Signature · 1 line
Bye, Peter Korsgaard
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
I'll update the commit log accordingly. Thanks! ;-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Hi,
Quoted 24 lines · Yann E. MORIN
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
Quoted 7 lines
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
I'll update the commit log accordingly. Thanks! ;-)
I suggest listing the three possible cases:
* FOO_GEN_LEGAL_INFO = NO: save nothing
* FOO_GEN_LEGAL_INFO = YES, FOO_REDISTRIBUTE = NO: list only
* FOO_GEN_LEGAL_INFO = YES, FOO_REDISTRIBUTE = NO: list + save source
Maybe in the manual as well?
Signature · 1 line
Luca
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Luca, All,
On 2016-10-15 17:40 +0200, Luca Ceresoli spake thusly:
Quoted 33 lines · Yann E. MORIN
Quoted 24 lines
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
Quoted 7 lines
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
I'll update the commit log accordingly. Thanks! ;-)
Quoted 7 lines
I suggest listing the three possible cases:
*
FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save sourceMaybe in the manual as well?
ACK.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
In reply to Luca CeresoliQuoted 33 lines · Luca Ceresoli
Hi,
Quoted 30 lines · Yann E. MORIN
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
Quoted 7 lines
Quoted 1 line
I'll update the commit log accordingly. Thanks! ;-)
I suggest listing the three possible cases:
*
FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save source
I hate that we have all these combinations. That was actually my first thought
when I saw this patch: oh no, yet another variation point. But I don't see a way to simplify it. So OK.
One remark though: I think the pre- and post-hooks should still run even if_GEN_LEGAL_INFO = NO.
Regards,
Arnout
Quoted 3 lines
Maybe in the manual as well?
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Arnout" == Arnout Vandecappelle <[email protected]> writes:
Hi,
Quoted 4 lines
Quoted 4 lines
*
FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save source
The last is presumably FOO_REDISTRIBUTE = YES.
Quoted 3 lines
I hate that we have all these combinations. That was actually my first thought
when I saw this patch: oh no, yet another variation point. But I don't see a way to simplify it. So OK.
yeah, me too. I also cannot think of a simpler approach if we want to do it.
I don't think it is really a big deal to list the virtual packages in the legal info, and people doing funky stuff in br2-external can also post process their legal info data to remove unwanted stuff if needed.
But OK, it doesn't add a lot of complexity, so if others think it is worthwhile, I'm OK with it as well.
Signature · 2 lines
Venlig hilsen, Peter Korsgaard
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
In reply to Arnout VandecappelleArnout, All,
On 2016-10-15 19:22 +0200, Arnout Vandecappelle spake thusly:
Quoted 36 lines · Luca Ceresoli
Quoted 35 lines · Yann E. MORIN
Quoted 24 lines
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
Quoted 7 lines
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
I'll update the commit log accordingly. Thanks! ;-)
I suggest listing the three possible cases:
Quoted 7 lines
Quoted 3 lines
*
FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save sourceI hate that we have all these combinations. That was actually my first thought
when I saw this patch: oh no, yet another variation point. But I don't see a way to simplify it. So OK.
The alternative would be:
- get rid of LIBFOO_REDISTRIBUTE
- add LIBFOO_LEGAL_INFO = {IGNORE,LIST,FULL} (or whatever name/values).
Thomas, Peter and Luca were not very happy with such a tristate, and in retrospect, neither am I...
Quoted 2 lines
One remark though: I think the pre- and post-hooks should still run even if
_GEN_LEGAL_INFO= NO.
Not so sure... Such hooks are made to save extra stuff into legal-info, or to prepare the package for legal-info. So, if the package is excluded for legal-info, there is no reason to run those hooks to start with, is there?
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Quoted 47 lines · Yann E. MORIN
Arnout, All,
On 2016-10-15 19:22 +0200, Arnout Vandecappelle spake thusly:
Quoted 36 lines · Luca Ceresoli
Quoted 35 lines · Yann E. MORIN
Quoted 24 lines
Peter, All,
On 2016-10-15 17:13 +0200, Peter Korsgaard spake thusly:
Quoted 12 lines
Quoted 11 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Yann" == Yann E MORIN <[email protected]> writes:
It might be necessary to not even mention a package in the output of legal-info:
- virtual packages have virtually nothing to save in the legal-info
output;- for proprietary packages, it might not even be legal to even mention them, being under NDA or some other such restrictive conditions.
Quoted 8 lines
Quoted 5 lines
Introduce the new
FOO_GEN_LEGAL_INFOvariable that a package can set to 'NO' (default to 'YES') to indicate that the package should be completely ignored from the legal-info output, in which case the package is not mentioned in the maniufest, its source archive, patches and license files are not saved into legal-info/ .Couldn't / shouldn't the 2nd part already be handled by <foo>_REDISTRIBUTE = NO and/or <foo>_LICENSE = PROPRIETARY?
Quoted 7 lines
No, because for a proprietary license, you may still have to at least list it in the manifest.
For example, the nvidia-driver package has a proprietary license, is not redistributable, but we must still list it in the manifest.
I'll update the commit log accordingly. Thanks! ;-)
I suggest listing the three possible cases:
Quoted 7 lines
Quoted 3 lines
*
FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save sourceI hate that we have all these combinations. That was actually my first thought
when I saw this patch: oh no, yet another variation point. But I don't see a way to simplify it. So OK.
Quoted 7 lines
The alternative would be:
- get rid of
LIBFOO_REDISTRIBUTE
- addLIBFOO_LEGAL_INFO= {IGNORE,LIST,FULL} (or whatever name/values).Thomas, Peter and Luca were not very happy with such a tristate, and in retrospect, neither am I...
Neither am I.
Quoted 8 lines
Quoted 3 lines
One remark though: I think the pre- and post-hooks should still run even if
_GEN_LEGAL_INFO= NO.Not so sure... Such hooks are made to save extra stuff into legal-info, or to prepare the package for legal-info. So, if the package is excluded for legal-info, there is no reason to run those hooks to start with, is there?
First of all, both _GEN_LEGAL_INFO and _LEGAL_INFO_HOOKS are package-specific
so the package knows what it's doing.
The reason to run hooks is that you may still want to do *something* in the
legal info for excluded packages. I can't give a concrete example, but I'm thinking along the lines of e.g. doing some check and erroring out, or still adding some custom information to legal info. You know, what the hooks are meant for in the first place :-) The point is, this option disables the normal legal-info, but that doesn't mean that there would be no legal-info at all.
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Arnout, All,
On 2016-10-15 20:06 +0200, Arnout Vandecappelle spake thusly:
Quoted 3 lines · Yann E. MORIN
Quoted 2 lines
On 2016-10-15 19:22 +0200, Arnout Vandecappelle spake thusly:
Quoted 1 line · Luca Ceresoli
[--SNIP--]
Quoted 7 lines
Quoted 7 lines
Quoted 7 lines
Quoted 4 lines
I suggest listing the three possible cases:
*FOO_GEN_LEGAL_INFO= NO: save nothing
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list only
*FOO_GEN_LEGAL_INFO= YES,FOO_REDISTRIBUTE= NO: list + save sourceI hate that we have all these combinations. That was actually my first thought
when I saw this patch: oh no, yet another variation point. But I don't see a way to simplify it. So OK.
Quoted 7 lines
Quoted 6 lines
The alternative would be:
- get rid ofLIBFOO_REDISTRIBUTE
- addLIBFOO_LEGAL_INFO= {IGNORE,LIST,FULL} (or whatever name/values).Thomas, Peter and Luca were not very happy with such a tristate, and in retrospect, neither am I...
Neither am I.
Eh! ;-)
Quoted 9 lines
Quoted 6 lines
Quoted 2 lines
One remark though: I think the pre- and post-hooks should still run even if
_GEN_LEGAL_INFO= NO.Not so sure... Such hooks are made to save extra stuff into legal-info, or to prepare the package for legal-info. So, if the package is excluded for legal-info, there is no reason to run those hooks to start with, is there?
First of all, both
_GEN_LEGAL_INFOand_LEGAL_INFO_HOOKSare package-specific
so the package knows what it's doing.
Quoted 6 lines
The reason to run hooks is that you may still want to do *something* in the
legal info for excluded packages. I can't give a concrete example, but I'm thinking along the lines of e.g. doing some check and erroring out, or still adding some custom information to legal info. You know, what the hooks are meant for in the first place :-) The point is, this option disables the normal legal-info, but that doesn't mean that there would be no legal-info at all.
I would argue that, if a packager elected to have its package completely ignored by the legal-info infra, we should just abide by this wish and just completely ignore it. Altogether.
Let's see what others think... ;-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 1/1 core/legal-info: allow ignoring packages from the legal-info
Hi Yann, Arnout,
On 15/10/2016 22:13, Yann E. MORIN wrote:
[...]
Quoted 16 lines
Quoted 9 lines
Quoted 6 lines
Quoted 2 lines
One remark though: I think the pre- and post-hooks should still run even if
_GEN_LEGAL_INFO= NO.Not so sure... Such hooks are made to save extra stuff into legal-info, or to prepare the package for legal-info. So, if the package is excluded for legal-info, there is no reason to run those hooks to start with, is there?
First of all, both
_GEN_LEGAL_INFOand_LEGAL_INFO_HOOKSare package-specific
so the package knows what it's doing.Quoted 6 lines
The reason to run hooks is that you may still want to do *something* in the
legal info for excluded packages. I can't give a concrete example, but I'm thinking along the lines of e.g. doing some check and erroring out, or still adding some custom information to legal info. You know, what the hooks are meant for in the first place :-) The point is, this option disables the normal legal-info, but that doesn't mean that there would be no legal-info at all.
Quoted 5 lines
I would argue that, if a packager elected to have its package completely ignored by the legal-info infra, we should just abide by this wish and just completely ignore it. Altogether.
Let's see what others think... ;-)
I think Arnout is right. The hooks would allow to implement any weird behavior that the infra is not (and should not even be) flexible enough to do. Of course this would be doable with a user-provided script, but then the script should also detect whether the given package is enabled or not, while the hooks do it for free.
As far as the code is concerned, it should be only a matter of moving the if/endif a few lines below/above, so it shouldn't add complexity.
Signature · 1 line
Luca