diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-01 17:32:26 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-09-03 11:09:02 +0100 |
commit | 2668104a5c16b483e978a2e1a1540f8774738650 (patch) | |
tree | 37951a43b711d2465fede88ff8a43011f103b64f | |
parent | 1a7ff8ab59945e89d3062f64fe5fc71e93eda809 (diff) | |
download | poky-2668104a5c16b483e978a2e1a1540f8774738650.tar.gz |
package_rpm: Add custom extension support for spec generation.
Add hooks to allow customisation of the rpm spec files. Since python functions
aren't visible in the data store, one variable is used to trigger the call to
a separately named function. A dummy function is not provided since this then
triggers various class ordering complexities which are best avoided.
Ultimately this will be replaced by a refactor of the code to generate the
spec file using a python class.
This allows the tizen layer to add hooks for the security manifests for
example.
(From OE-Core rev: 03ac91815013c0e85c4694b3ab849257e658aeba)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/package_rpm.bbclass | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 0a32b3e5dc..1ea7549621 100644 --- a/meta/classes/package_rpm.bbclass +++ b/meta/classes/package_rpm.bbclass | |||
@@ -293,6 +293,7 @@ python write_specfile () { | |||
293 | spec_files_bottom = [] | 293 | spec_files_bottom = [] |
294 | 294 | ||
295 | perfiledeps = (d.getVar("MERGEPERFILEDEPS", True) or "0") == "0" | 295 | perfiledeps = (d.getVar("MERGEPERFILEDEPS", True) or "0") == "0" |
296 | extra_pkgdata = (d.getVar("RPM_EXTRA_PKGDATA", True) or "0") == "1" | ||
296 | 297 | ||
297 | for pkg in packages.split(): | 298 | for pkg in packages.split(): |
298 | localdata = bb.data.createCopy(d) | 299 | localdata = bb.data.createCopy(d) |
@@ -373,6 +374,8 @@ python write_specfile () { | |||
373 | else: | 374 | else: |
374 | bb.note("Creating RPM package for %s" % splitname) | 375 | bb.note("Creating RPM package for %s" % splitname) |
375 | spec_files_top.append('%files') | 376 | spec_files_top.append('%files') |
377 | if extra_pkgdata: | ||
378 | package_rpm_extra_pkgdata(splitname, spec_files_top, localdata) | ||
376 | spec_files_top.append('%defattr(-,-,-,-)') | 379 | spec_files_top.append('%defattr(-,-,-,-)') |
377 | if file_list: | 380 | if file_list: |
378 | bb.note("Creating RPM package for %s" % splitname) | 381 | bb.note("Creating RPM package for %s" % splitname) |
@@ -479,6 +482,8 @@ python write_specfile () { | |||
479 | bb.note("Not creating empty RPM package for %s" % splitname) | 482 | bb.note("Not creating empty RPM package for %s" % splitname) |
480 | else: | 483 | else: |
481 | spec_files_bottom.append('%%files -n %s' % splitname) | 484 | spec_files_bottom.append('%%files -n %s' % splitname) |
485 | if extra_pkgdata: | ||
486 | package_rpm_extra_pkgdata(splitname, spec_files_bottom, localdata) | ||
482 | spec_files_bottom.append('%defattr(-,-,-,-)') | 487 | spec_files_bottom.append('%defattr(-,-,-,-)') |
483 | if file_list: | 488 | if file_list: |
484 | bb.note("Creating RPM package for %s" % splitname) | 489 | bb.note("Creating RPM package for %s" % splitname) |