On Sun, 2020-11-22 at 19:16 -0700, Michael Callahan wrote:
> I am having trouble with sstate caching of my os-release.bbappend and
> am stuck.  The simple example file looks like something below, where
> I
> am setting a variable from a computed python function.  What's the
> magic
> to make the find_version(d) always run but do_compile to only run if
> VERSION changes?  I basically want something like
> `find_version[nostamp]="1"` but that seems to only work for tasks.
> 
> def find_version(d):
>     import subprocess
>     cmd = "git describe --long"
>     return subprocess.check_output(cmd).rstrip().decode('utf-8')
> 
> VERSION = "${@find_version(d)}"
> # do_compile uses $VERSION

If you set BB_DONT_CACHE = "1" in the recipe, it will force the recipe
to reparse each time. That should cause it to rerun find_version and
then change hash when the value changes. Its how SRCREV = "${AUTOREV}"
works behind the scenes.

Cheers,

Richard

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#51537): https://lists.yoctoproject.org/g/yocto/message/51537
Mute This Topic: https://lists.yoctoproject.org/mt/78445317/21656
Group Owner: [email protected]
Unsubscribe: https://lists.yoctoproject.org/g/yocto/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to