mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
Every image records the identity of its build inputs. forgefirm-manifest.bbclass gives a component recipe a per-file source fingerprint (git ls-tree blob ids, submodules recursed; file:// sources hashed with git hash-object); the kernel and glowforge.ko publish theirs through do_deploy because kernel-module-split leaves the module recipe's main package empty. forgefirm-image-manifest.bbclass assembles the entries with the platform identity - machine, modules directory, device tree hashes, layer content hashes (meta-forgefirm and the meta-openglow layers by content, the kas-managed layers by revision) - into /etc/forgefirm-manifest.json and deploys a copy next to the image. Layer revisions and dirty flags stay outside the identity, so a rebuild from an unchanged tree keeps its content hash and the release and dev images of one build share it. The acceptance tool and the release gate read this file.
27 lines
1.1 KiB
PHP
27 lines
1.1 KiB
PHP
# Shared fetch for the ForgeFIRM web-service apps (gfhome, python3-ffmachine,
|
|
# gfcloud). Their sources live in the forgefirm-app/ directory of the
|
|
# python3-gfhardware repository.
|
|
HOMEPAGE = "https://github.com/ScottW514/python3-gfhardware"
|
|
|
|
# These packages ship only the Python apps under forgefirm-app/, all MIT. The
|
|
# repository's LGPL component (the Bayer decoder compiled into
|
|
# gfhardware._cam) is not part of them; python3-gfhardware declares it.
|
|
LICENSE = "MIT"
|
|
LIC_FILES_CHKSUM = "file://LICENSE;md5=62f8bb455fcc4bf177ecab380f71cd5d"
|
|
|
|
SRC_URI = "git://github.com/ScottW514/python3-gfhardware.git;protocol=https;branch=master"
|
|
# Pinned; bump deliberately (AUTOREV is not reproducible).
|
|
SRCREV = "a0a174d8e9a6b4b6e3abe63acc51018199df4202"
|
|
|
|
# Bump PV with every SRCREV move: the hash-derived package version is not
|
|
# monotonic on its own and buildhistory QA fails the build when it sorts
|
|
# backwards.
|
|
PV = "0.1.6+git"
|
|
|
|
S = "${WORKDIR}/git"
|
|
|
|
# One image-manifest component for the three app recipes (same repository,
|
|
# same pinned revision): the entries merge in the image manifest.
|
|
inherit forgefirm-manifest
|
|
FORGEFIRM_MANIFEST_NAME = "forgefirm-app"
|