From c6459ca4943312b7b00bf97160f29776d2a6a183 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Mon, 22 Jan 2018 15:41:09 +0000 Subject: package_rpm: correctly handle LICENSE_${PN} RPM spec files don't distinguish between spec-level license and the primary package license, so always output the License for every package (defaulting to the recipe-wide license) and use LICENSE_${PN} if set for the primary package. As the primary use of package_rpm is to generate built packages, this fixes the license fields in the generated packages. [ YOCTO #12057 ] (From OE-Core rev: 8c333e592fa7a3a887c792ac14e5cde2141b5d35) (From OE-Core rev: 42e0de37d18f072dc5dcf5dc45cb441e4c2110d8) Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/package_rpm.bbclass | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index b08608c846..bcaf8a30a5 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass @@ -382,6 +382,12 @@ python write_specfile () { # Gather special src/first package data if srcname == splitname: + archiving = d.getVarFlag('ARCHIVER_MODE', 'srpm') == '1' and \ + bb.data.inherits_class('archiver', d) + if archiving and srclicense != splitlicense: + bb.warn("The SRPM produced may not have the correct overall source license in the License tag. This is due to the LICENSE for the primary package and SRPM conflicting.") + + srclicense = splitlicense srcrdepends = splitrdepends srcrrecommends = splitrrecommends srcrsuggests = splitrsuggests @@ -421,8 +427,7 @@ python write_specfile () { spec_preamble_bottom.append('Release: %s' % splitrelease) if srcepoch != splitepoch: spec_preamble_bottom.append('Epoch: %s' % splitepoch) - if srclicense != splitlicense: - spec_preamble_bottom.append('License: %s' % splitlicense) + spec_preamble_bottom.append('License: %s' % splitlicense) spec_preamble_bottom.append('Group: %s' % splitsection) if srccustomtagschunk != splitcustomtagschunk: -- cgit v1.2.3-54-g00ecf