Construct a Built field value for the current build environment
built_stamp.RdIndex records are read from the CRAN source DESCRIPTION (see
index_records), which never carries a Built: field (R stamps that only
when it builds a binary). Our S3 tarballs are binaries, so each record read
is given this stamp to advertise them as such. Binary-aware clients (e.g. uvr) key their binary-vs-source decision on
the Built: platform triple + R minor; without it they treat the repo as
source-only and compile everything, which needs system -dev libraries.
Details
The triple comes from R.version$platform and the version from
getRversion(), so this must run in the same build environment that produced
the binaries (the surrounding arch/codename logic already assumes this).
It is a slot-wide stamp, not a per-package fact, and must never be read as
one. Each S3 object's DESCRIPTION is read from the CRAN source mirror,
which carries no Built field, so a single value is applied to every record
read by the same run. A slot accumulates objects across primary-R changes, so
the stamp only describes the R that last re-indexed it: every flat record on
amd64/resolute read R 4.5 while base64enc, fastmatch, lazyeval, iotools and
jsonlite were all built under 4.4.
Its purpose is narrow: uvr decides binary-vs-source by matching the triple,
and a record with no Built is treated as source. Do not use it to decide
whether a binary is ABI-compatible with a given R minor.