diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-22 09:35:01 +0000 |
---|---|---|
committer | Steve Sakoman <steve@sakoman.com> | 2024-01-04 04:09:43 -1000 |
commit | 4558219ec8584e05c215057c0c271600fa52d6c2 (patch) | |
tree | 8dce0e75a44e2ecdcf9714dac2928b5b71bc49cc | |
parent | d5d85421f2fe9445152bf8a533268578a32ed8f4 (diff) | |
download | poky-4558219ec8584e05c215057c0c271600fa52d6c2.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: 431e6ad7c5b0af3909f5a43599764c529146e6d6)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 3ea7da76c6930031a0071069027b1d71f737fbc9)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
-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 b4b7bc9ac2..64fa237c00 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) |