summaryrefslogtreecommitdiffstats
path: root/meta/classes/package_tar.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2022-08-10 14:35:29 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2022-08-12 15:27:17 +0100
commitfd1517e2b51a170f2427122c6b95396db251d827 (patch)
treedabfe3e631339c2fc99a9ee7febb0f9c128e325e /meta/classes/package_tar.bbclass
parent10317912ee319ccf7f83605d438b5cbf9663f296 (diff)
downloadpoky-fd1517e2b51a170f2427122c6b95396db251d827.tar.gz
classes: Update classes to match new bitbake class scope functionality
Move classes to classes-global or classes-recipe as appropriate to take advantage of new bitbake functionality to check class scope/usage. (From OE-Core rev: f5c128008365e141082c129417eb72d2751e8045) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/package_tar.bbclass')
-rw-r--r--meta/classes/package_tar.bbclass77
1 files changed, 0 insertions, 77 deletions
diff --git a/meta/classes/package_tar.bbclass b/meta/classes/package_tar.bbclass
deleted file mode 100644
index de995f9747..0000000000
--- a/meta/classes/package_tar.bbclass
+++ /dev/null
@@ -1,77 +0,0 @@
1#
2# Copyright OpenEmbedded Contributors
3#
4# SPDX-License-Identifier: MIT
5#
6
7inherit package
8
9IMAGE_PKGTYPE ?= "tar"
10
11python do_package_tar () {
12 import subprocess
13
14 oldcwd = os.getcwd()
15
16 workdir = d.getVar('WORKDIR')
17 if not workdir:
18 bb.error("WORKDIR not defined, unable to package")
19 return
20
21 outdir = d.getVar('DEPLOY_DIR_TAR')
22 if not outdir:
23 bb.error("DEPLOY_DIR_TAR not defined, unable to package")
24 return
25
26 dvar = d.getVar('D')
27 if not dvar:
28 bb.error("D not defined, unable to package")
29 return
30
31 packages = d.getVar('PACKAGES')
32 if not packages:
33 bb.debug(1, "PACKAGES not defined, nothing to package")
34 return
35
36 pkgdest = d.getVar('PKGDEST')
37
38 bb.utils.mkdirhier(outdir)
39 bb.utils.mkdirhier(dvar)
40
41 for pkg in packages.split():
42 localdata = bb.data.createCopy(d)
43 root = "%s/%s" % (pkgdest, pkg)
44
45 overrides = localdata.getVar('OVERRIDES', False)
46 localdata.setVar('OVERRIDES', '%s:%s' % (overrides, pkg))
47
48 bb.utils.mkdirhier(root)
49 basedir = os.path.dirname(root)
50 tarfn = localdata.expand("${DEPLOY_DIR_TAR}/${PKG}-${PKGV}-${PKGR}.tar.gz")
51 os.chdir(root)
52 dlist = os.listdir(root)
53 if not dlist:
54 bb.note("Not creating empty archive for %s-%s-%s" % (pkg, localdata.getVar('PKGV'), localdata.getVar('PKGR')))
55 continue
56 args = "tar -cz --exclude=CONTROL --exclude=DEBIAN -f".split()
57 ret = subprocess.call(args + [tarfn] + dlist)
58 if ret != 0:
59 bb.error("Creation of tar %s failed." % tarfn)
60
61 os.chdir(oldcwd)
62}
63
64python () {
65 if d.getVar('PACKAGES') != '':
66 deps = ' tar-native:do_populate_sysroot virtual/fakeroot-native:do_populate_sysroot'
67 d.appendVarFlag('do_package_write_tar', 'depends', deps)
68 d.setVarFlag('do_package_write_tar', 'fakeroot', "1")
69}
70
71
72python do_package_write_tar () {
73 bb.build.exec_func("read_subpackage_metadata", d)
74 bb.build.exec_func("do_package_tar", d)
75}
76do_package_write_tar[dirs] = "${D}"
77addtask package_write_tar before do_build after do_packagedata do_package