generic-poky/meta/recipes-core/os-release/os-release.bb
Richard Purdie fc209e99ec os-release: Exclude DATETIME from sstate signature
I'm torn over this, I can see someone wanting this to vary in each
build. What pushed me to believe its incorrect in its current form
is that it changes for every MACHINE build, making a complete mess
if you try and generate package feeds using it.

The alternative would be to give up on allarch in this case and make
it MACHINE specific which at least would then be more consistent when
the package makes it to a package feed. If someone wants to do that,
the can propose another patch but this change at least make package
feed usage 'sane' again and avoids the perpetual rebuilds.

Incidentally, its worth noting that changes in source metadata revision
used for the build and included in this recipe would still trigger
rebuilds which is likely the common use case people actually care about.

(From OE-Core rev: 46de6f6eb9c4387298fafb48fb9c36abc3ff48a4)

(From OE-Core rev: 9585cffea33895c3ceea30f45325d2eca6dcf1c2)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-08-30 12:36:02 +01:00

39 lines
1.2 KiB
BlitzBasic

inherit allarch
SUMMARY = "Operating system identification"
DESCRIPTION = "The /etc/os-release file contains operating system identification data."
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
INHIBIT_DEFAULT_DEPS = "1"
do_fetch[noexec] = "1"
do_unpack[noexec] = "1"
do_patch[noexec] = "1"
do_configure[noexec] = "1"
# Other valid fields: BUILD_ID ID_LIKE ANSI_COLOR CPE_NAME
# HOME_URL SUPPORT_URL BUG_REPORT_URL
OS_RELEASE_FIELDS = "ID ID_LIKE NAME VERSION VERSION_ID PRETTY_NAME"
ID = "${DISTRO}"
NAME = "${DISTRO_NAME}"
VERSION = "${DISTRO_VERSION}${@' (%s)' % DISTRO_CODENAME if 'DISTRO_CODENAME' in d else ''}"
VERSION_ID = "${DISTRO_VERSION}"
PRETTY_NAME = "${DISTRO_NAME} ${VERSION}"
BUILD_ID ?= "${DATETIME}"
BUILD_ID[vardepsexclude] = "DATETIME"
python do_compile () {
with open(d.expand('${B}/os-release'), 'w') as f:
for field in d.getVar('OS_RELEASE_FIELDS', True).split():
value = d.getVar(field, True)
if value:
f.write('{0}={1}\n'.format(field, value))
}
do_compile[vardeps] += "${OS_RELEASE_FIELDS}"
do_install () {
install -d ${D}${sysconfdir}
install -m 0644 os-release ${D}${sysconfdir}/
}