diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-22 09:35:01 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-23 12:12:00 +0000 |
commit | 18c5b54a9596a4b2d902a7059cc1cda9a9709751 (patch) | |
tree | ee8da7cedd5a5c565cd15a26b0ce5ccaf6fdc409 /meta/classes-global | |
parent | dde36b7b78e52cc004b9698c2235dfe9545ae996 (diff) | |
download | poky-18c5b54a9596a4b2d902a7059cc1cda9a9709751.tar.gz |
package_ipk: Fix Source: field variable dependency
The Source: variable is generated from FILE but this is excluded from checksums
normally which results in a reproduciubility issue when the filename changes.
Add in a dependency by reworking the code a little to avoid this.
(From OE-Core rev: 3ea7da76c6930031a0071069027b1d71f737fbc9)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes-global')
-rw-r--r-- | meta/classes-global/package_ipk.bbclass | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/meta/classes-global/package_ipk.bbclass b/meta/classes-global/package_ipk.bbclass index 1ca1308967..71ffdd522a 100644 --- a/meta/classes-global/package_ipk.bbclass +++ b/meta/classes-global/package_ipk.bbclass | |||
@@ -47,6 +47,10 @@ python do_package_ipk () { | |||
47 | do_package_ipk[vardeps] += "ipk_write_pkg" | 47 | do_package_ipk[vardeps] += "ipk_write_pkg" |
48 | do_package_ipk[vardepsexclude] = "BB_NUMBER_THREADS" | 48 | do_package_ipk[vardepsexclude] = "BB_NUMBER_THREADS" |
49 | 49 | ||
50 | # FILE isn't included by default but we want the recipe to change if basename() changes | ||
51 | IPK_RECIPE_FILE = "${@os.path.basename(d.getVar('FILE'))}" | ||
52 | IPK_RECIPE_FILE[vardepvalue] = "${IPK_RECIPE_FILE}" | ||
53 | |||
50 | def ipk_write_pkg(pkg, d): | 54 | def ipk_write_pkg(pkg, d): |
51 | import re, copy | 55 | import re, copy |
52 | import subprocess | 56 | import subprocess |
@@ -62,7 +66,7 @@ def ipk_write_pkg(pkg, d): | |||
62 | 66 | ||
63 | outdir = d.getVar('PKGWRITEDIRIPK') | 67 | outdir = d.getVar('PKGWRITEDIRIPK') |
64 | pkgdest = d.getVar('PKGDEST') | 68 | pkgdest = d.getVar('PKGDEST') |
65 | recipesource = os.path.basename(d.getVar('FILE')) | 69 | recipesource = d.getVar('IPK_RECIPE_FILE') |
66 | 70 | ||
67 | localdata = bb.data.createCopy(d) | 71 | localdata = bb.data.createCopy(d) |
68 | root = "%s/%s" % (pkgdest, pkg) | 72 | root = "%s/%s" % (pkgdest, pkg) |