]> git.pond.sub.org Git - empserver/commit - tests/version/journal.log
config: Generalize sector build materials storage
authorMarkus Armbruster <armbru@pond.sub.org>
Sun, 5 Jun 2016 18:08:30 +0000 (20:08 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Sun, 6 Aug 2017 17:59:58 +0000 (19:59 +0200)
commitbb9619c0536ba15552fd7607cfb2042929df8af7
tree80c35176d0aa4dc403c5f74ba7d5ef0cfabc17c1
parent826fcf009b064aed0b7de034ec64de27e96a0491
config: Generalize sector build materials storage

Sectors require lcms and hcms to build.  The build materials are
exposed as sect-chr columns lcms, hcms (struct dchrstr members d_lcms,
d_hcms).  They are per point per point of efficiency.  In contrast,
unit build materials are defined for 100%.

We want to define build materials for 100% now, for flexibility and
consistency, and we want to optionally support more build materials in
the future.  Replace d_lcms and d_hcms by array member d_mat[], and
replace selectors lcms and hcms by selectors l_build and h_build.

This is an xdump compatibility break.  To provide the customary grace
period, we'd have to make selectors lcms and hcms virtual instead,
with value l_build / 100 and h_build / 100 rounded up, and deprecate
them.  Deities would have to avoid l_build and h_build values that
aren't multiples of 100 for this to work fully.  But we're not
bothering with maintaining xdump compatibility in this release.

Provide selectors for all other item types, to help clients prepare
for future additional materials.  Use CA_DUMP_ONLY to keep them out of
configuration tables until they actually work.

Signed-off-by: Markus Armbruster <armbru@pond.sub.org>
include/sect.h
src/lib/common/nsc.c
src/lib/global/sect.config
src/lib/subs/show.c
src/lib/update/sect.c
tests/version/journal.log