diff options
author | Peter Kjellerstedt <peter.kjellerstedt@axis.com> | 2019-06-19 17:45:06 +0200 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-06-30 22:34:23 +0100 |
commit | 76c220e5fe43aef1014e6eec7f0136c2b34be308 (patch) | |
tree | 370dae86d2a6819de228f8b6263ea78fa1c58f97 /meta/classes | |
parent | 5155d08e7e3e8295e6b9317c856061480c6010f9 (diff) | |
download | poky-76c220e5fe43aef1014e6eec7f0136c2b34be308.tar.gz |
package.bbclass: Clean up writing of runtime pkgdata files
This introduces a variable, PKGDATA_VARS, that contains the names of
the variables that are to be output in the runtime pkgdata files.
(From OE-Core rev: e9565e986d574b4dbe2fc2449dee15b4d02c9fa2)
Signed-off-by: Peter Kjellerstedt <peter.kjellerstedt@axis.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Armin Kuster <akuster808@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/package.bbclass | 56 |
1 files changed, 18 insertions, 38 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 4c0a859536..eef1f7b945 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
@@ -1343,6 +1343,8 @@ EXPORT_FUNCTIONS package_name_hook | |||
1343 | 1343 | ||
1344 | PKGDESTWORK = "${WORKDIR}/pkgdata" | 1344 | PKGDESTWORK = "${WORKDIR}/pkgdata" |
1345 | 1345 | ||
1346 | PKGDATA_VARS = "PN PE PV PR PKGE PKGV PKGR LICENSE DESCRIPTION SUMMARY RDEPENDS RPROVIDES RRECOMMENDS RSUGGESTS RREPLACES RCONFLICTS SECTION PKG ALLOW_EMPTY FILES CONFFILES FILES_INFO pkg_postinst pkg_postrm pkg_preinst pkg_prerm" | ||
1347 | |||
1346 | python emit_pkgdata() { | 1348 | python emit_pkgdata() { |
1347 | from glob import glob | 1349 | from glob import glob |
1348 | import json | 1350 | import json |
@@ -1447,48 +1449,26 @@ fi | |||
1447 | total_size += fstat.st_size | 1449 | total_size += fstat.st_size |
1448 | d.setVar('FILES_INFO', json.dumps(files, sort_keys=True)) | 1450 | d.setVar('FILES_INFO', json.dumps(files, sort_keys=True)) |
1449 | 1451 | ||
1450 | subdata_file = pkgdatadir + "/runtime/%s" % pkg | ||
1451 | sf = open(subdata_file, 'w') | ||
1452 | write_if_exists(sf, pkg, 'PN') | ||
1453 | write_if_exists(sf, pkg, 'PE') | ||
1454 | write_if_exists(sf, pkg, 'PV') | ||
1455 | write_if_exists(sf, pkg, 'PR') | ||
1456 | write_if_exists(sf, pkg, 'PKGE') | ||
1457 | write_if_exists(sf, pkg, 'PKGV') | ||
1458 | write_if_exists(sf, pkg, 'PKGR') | ||
1459 | write_if_exists(sf, pkg, 'LICENSE') | ||
1460 | write_if_exists(sf, pkg, 'DESCRIPTION') | ||
1461 | write_if_exists(sf, pkg, 'SUMMARY') | ||
1462 | write_if_exists(sf, pkg, 'RDEPENDS') | ||
1463 | rprov = write_if_exists(sf, pkg, 'RPROVIDES') | ||
1464 | write_if_exists(sf, pkg, 'RRECOMMENDS') | ||
1465 | write_if_exists(sf, pkg, 'RSUGGESTS') | ||
1466 | write_if_exists(sf, pkg, 'RREPLACES') | ||
1467 | write_if_exists(sf, pkg, 'RCONFLICTS') | ||
1468 | write_if_exists(sf, pkg, 'SECTION') | ||
1469 | write_if_exists(sf, pkg, 'PKG') | ||
1470 | write_if_exists(sf, pkg, 'ALLOW_EMPTY') | ||
1471 | write_if_exists(sf, pkg, 'FILES') | ||
1472 | write_if_exists(sf, pkg, 'CONFFILES') | ||
1473 | process_postinst_on_target(pkg, d.getVar("MLPREFIX")) | 1452 | process_postinst_on_target(pkg, d.getVar("MLPREFIX")) |
1474 | add_set_e_to_scriptlets(pkg) | 1453 | add_set_e_to_scriptlets(pkg) |
1475 | write_if_exists(sf, pkg, 'pkg_postinst') | 1454 | |
1476 | write_if_exists(sf, pkg, 'pkg_postrm') | 1455 | subdata_file = pkgdatadir + "/runtime/%s" % pkg |
1477 | write_if_exists(sf, pkg, 'pkg_preinst') | 1456 | with open(subdata_file, 'w') as sf: |
1478 | write_if_exists(sf, pkg, 'pkg_prerm') | 1457 | for var in (d.getVar('PKGDATA_VARS') or "").split(): |
1479 | write_if_exists(sf, pkg, 'FILERPROVIDESFLIST') | 1458 | val = write_if_exists(sf, pkg, var) |
1480 | write_if_exists(sf, pkg, 'FILES_INFO') | 1459 | |
1481 | for dfile in (d.getVar('FILERPROVIDESFLIST_' + pkg) or "").split(): | 1460 | write_if_exists(sf, pkg, 'FILERPROVIDESFLIST') |
1482 | write_if_exists(sf, pkg, 'FILERPROVIDES_' + dfile) | 1461 | for dfile in (d.getVar('FILERPROVIDESFLIST_' + pkg) or "").split(): |
1483 | 1462 | write_if_exists(sf, pkg, 'FILERPROVIDES_' + dfile) | |
1484 | write_if_exists(sf, pkg, 'FILERDEPENDSFLIST') | 1463 | |
1485 | for dfile in (d.getVar('FILERDEPENDSFLIST_' + pkg) or "").split(): | 1464 | write_if_exists(sf, pkg, 'FILERDEPENDSFLIST') |
1486 | write_if_exists(sf, pkg, 'FILERDEPENDS_' + dfile) | 1465 | for dfile in (d.getVar('FILERDEPENDSFLIST_' + pkg) or "").split(): |
1487 | 1466 | write_if_exists(sf, pkg, 'FILERDEPENDS_' + dfile) | |
1488 | sf.write('%s_%s: %d\n' % ('PKGSIZE', pkg, total_size)) | 1467 | |
1489 | sf.close() | 1468 | sf.write('%s_%s: %d\n' % ('PKGSIZE', pkg, total_size)) |
1490 | 1469 | ||
1491 | # Symlinks needed for rprovides lookup | 1470 | # Symlinks needed for rprovides lookup |
1471 | rprov = d.getVar('RPROVIDES_%s' % pkg) or d.getVar('RPROVIDES') | ||
1492 | if rprov: | 1472 | if rprov: |
1493 | for p in rprov.strip().split(): | 1473 | for p in rprov.strip().split(): |
1494 | subdata_sym = pkgdatadir + "/runtime-rprovides/%s/%s" % (p, pkg) | 1474 | subdata_sym = pkgdatadir + "/runtime-rprovides/%s/%s" % (p, pkg) |