From 22efb9f89e96fe7bd004861adc555c65f1a8a38c Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN" Date: Sun, 22 Jun 2014 14:41:13 +0200 Subject: [PATCH] legal-info: save license files even for local or overridden packages Even if we do not save the sources for local or overridden packages because it is too complex, we can still quite easily save the license files. Also, having the license files is a very important part of complying with the licenses. Move the copy of license files out of the non-local, non-overridden package case, but still in the case where packages have a _SOURCE defined, to avoid catching packages bundled in Buildroot (eg. mkpasswd et al.) Reported-by: Luca Ceresoli Signed-off-by: "Yann E. MORIN" Cc: Luca Ceresoli Cc: Thomas De Schampheleire Cc: Thomas Petazzoni Cc: Fabio Porcedda Reviewed-by: Luca Ceresoli Tested-by: Luca Ceresoli Signed-off-by: Thomas Petazzoni --- package/pkg-generic.mk | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk index 64f9b5f03e..b113684fcd 100644 --- a/package/pkg-generic.mk +++ b/package/pkg-generic.mk @@ -644,6 +644,19 @@ $(1)-legal-info: $$(foreach hook,$$($(2)_PRE_LEGAL_INFO_HOOKS),$$(call $$(hook))$$(sep)) ifneq ($$(call qstrip,$$($(2)_SOURCE)),) +# Save license files if defined +# We save the license files for any kind of package: normal, local, +# overridden, or non-redistributable alike. +# The reason to save license files even for no-redistribute packages +# is that the license still applies to the files distributed as part +# of the rootfs, even if the sources are not themselves redistributed. +ifeq ($$(call qstrip,$$($(2)_LICENSE_FILES)),) + @$$(call legal-license-nofiles,$$($(2)_RAWNAME),$$(call UPPERCASE,$(4))) + @$$(call legal-warning-pkg,$$($(2)_RAWNAME),cannot save license ($(2)_LICENSE_FILES not defined)) +else + @$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$($(2)_RAWNAME),$$(F),$$($(2)_DIR)/$$(F),$$(call UPPERCASE,$(4)))$$(sep)) +endif # license files + ifeq ($$($(2)_SITE_METHOD),local) # Packages without a tarball: don't save and warn @$$(call legal-warning-pkg-savednothing,$$($(2)_RAWNAME),local) @@ -654,14 +667,6 @@ else ifneq ($$($(2)_OVERRIDE_SRCDIR),) else # Other packages -# Save license files if defined -ifeq ($$(call qstrip,$$($(2)_LICENSE_FILES)),) - @$$(call legal-license-nofiles,$$($(2)_RAWNAME),$$(call UPPERCASE,$(4))) - @$$(call legal-warning-pkg,$$($(2)_RAWNAME),cannot save license ($(2)_LICENSE_FILES not defined)) -else - @$$(foreach F,$$($(2)_LICENSE_FILES),$$(call legal-license-file,$$($(2)_RAWNAME),$$(F),$$($(2)_DIR)/$$(F),$$(call UPPERCASE,$(4)))$$(sep)) -endif # license files - ifeq ($$($(2)_REDISTRIBUTE),YES) # Copy the source tarball (just hardlink if possible) @cp -l $$(DL_DIR)/$$($(2)_SOURCE) $$(REDIST_SOURCES_DIR_$$(call UPPERCASE,$(4))) 2>/dev/null || \ -- 2.30.2