th0ma7 · GitHub

@th0ma7

…variables (#7297)
* docs: expand the Framework Changes page and add a Highlights section
The mk/ reorganization entry credited only #7237, but the flat-to-submodule
move was an eight-PR effort spread over six months (#6906, #6914, #6973, #6994,
#7008, #7237, plus the #7243 and #7251 renames). Rewrite it as a single grouped
entry with the individual PRs nested, and add an annotated tree of the final
mk/ layout so a reader can see where each concern now lives and that the
entry-point files a Makefile includes stayed at the root.
Add a "Highlights" section at the top: the handful of things a package author
most needs to know (context-aware `make help`, the unified CONFIGURE_ARGS /
COMPILE_ARGS / INSTALL_ARGS / BUILD_DIR variables, PKG_DIST_MIRRORS, including
spksrc.common.mk before version_* macros, and DISABLED vs BROKEN), each linking
into the detailed log or the reference docs.
While there, backfill the notable framework changes from January to May that
the page skipped:
  - Faster, parallel dependency resolution (#6894, #6952, #7028, #7121, #7124)
  - Deduplicate applied patches (#7098, #7104)
  - Standardize meta package variable names (#7041, #7043, #7044, #7045)
  - stage0 minimal environment (#7031, #7032, #7078), which the June stage-0
    bootstrap entry builds on
  - Multi-arch download orchestration (#6947)
Package-specific work (version bumps, individual package fixes) is left out --
this page tracks the framework, not the catalogue. Coverage goes from 17 to 37
PRs.
* help + docs: document DEPENDS_TYPE and EXCLUDE_DEPENDS
The dependency-tree.mk targets grew two useful modifiers -- DEPENDS_TYPE and
EXCLUDE_DEPENDS (#7028), plus ARCH/TCVERSION context (#7121, #7124) -- but they
were only described in the file's own header. Neither `make help` nor the docs
hinted that the dependency-* output could be filtered.
Surface them everywhere they apply:
  - Package-level `make help` (spksrc.common/help.mk) now shows DEPENDS_TYPE,
    EXCLUDE_DEPENDS and ARCH/TCVERSION under the Inspect section.
  - Root `make help` gains an Inspect section for dependency-list-spk, the
    root-level target that resolves every spk's dependencies and honors the same
    variables (they propagate to the per-package sub-makes via MAKEFLAGS).
  - docs/developer-guide/packaging/build-rules.md gains an "Inspecting the
    dependency graph" subsection with a table, worked examples, and the
    root-level dependency-list-spk variant.
All taken from the authoritative description in
mk/spksrc.rules/dependency-tree.mk. Verified with `make help` at both levels
(and `make dependency-list-spk DEPENDS_TYPE=NATIVE_DEPENDS`) and
`mkdocs build --strict`.

Read the original on github.com ↗