1*92b42cb3SPatrick Williams# 2*92b42cb3SPatrick Williams# Copyright OpenEmbedded Contributors 3*92b42cb3SPatrick Williams# 4*92b42cb3SPatrick Williams# SPDX-License-Identifier: MIT 5*92b42cb3SPatrick Williams# 6*92b42cb3SPatrick Williams 7*92b42cb3SPatrick Williams################################################################## 8*92b42cb3SPatrick Williams# Specific image creation and rootfs population info. 9*92b42cb3SPatrick Williams################################################################## 10*92b42cb3SPatrick Williams 11*92b42cb3SPatrick WilliamsIMAGE_BASENAME ?= "${PN}" 12*92b42cb3SPatrick WilliamsIMAGE_VERSION_SUFFIX ?= "-${DATETIME}" 13*92b42cb3SPatrick WilliamsIMAGE_VERSION_SUFFIX[vardepsexclude] += "DATETIME SOURCE_DATE_EPOCH" 14*92b42cb3SPatrick WilliamsIMAGE_NAME ?= "${IMAGE_BASENAME}-${MACHINE}${IMAGE_VERSION_SUFFIX}" 15*92b42cb3SPatrick WilliamsIMAGE_LINK_NAME ?= "${IMAGE_BASENAME}-${MACHINE}" 16*92b42cb3SPatrick Williams 17*92b42cb3SPatrick Williams# IMAGE_NAME is the base name for everything produced when building images. 18*92b42cb3SPatrick Williams# The actual image that contains the rootfs has an additional suffix (.rootfs 19*92b42cb3SPatrick Williams# by default) followed by additional suffices which describe the format (.ext4, 20*92b42cb3SPatrick Williams# .ext4.xz, etc.). 21*92b42cb3SPatrick WilliamsIMAGE_NAME_SUFFIX ??= ".rootfs" 22*92b42cb3SPatrick Williams 23*92b42cb3SPatrick Williamspython () { 24*92b42cb3SPatrick Williams if bb.data.inherits_class('deploy', d) and d.getVar("IMAGE_VERSION_SUFFIX") == "-${DATETIME}": 25*92b42cb3SPatrick Williams import datetime 26*92b42cb3SPatrick Williams d.setVar("IMAGE_VERSION_SUFFIX", "-" + datetime.datetime.fromtimestamp(int(d.getVar("SOURCE_DATE_EPOCH")), datetime.timezone.utc).strftime('%Y%m%d%H%M%S')) 27*92b42cb3SPatrick Williams d.setVarFlag("IMAGE_VERSION_SUFFIX", "vardepvalue", "") 28*92b42cb3SPatrick Williams} 29