kumquat-buildroot/docs/manual
Yann E. MORIN 4f59ababc0 package/doc-asciidoc: fix build for out-of-tree documents
The doc-asciidoc infra allows document to define sources and resources,
and those can only be local (there is no download support for documents).
The currently documented way to specify those is to use the $(pkgdir)
macro to point to the document sources and resources when they are along
the .mk.

However, this works only for sources and not for resources.

Indeed, sources are used to generate Makefile dependency rules, so
$(pkgdir) is expanded and evaluated during the call to $(doc-asciidoc),
while resources are expanded and evaluated when the rules are executed,
which always happen after all the parsing has be done, at which point
$(pkgdir) expands to the last Makefile that was parsed, which is always
Buildroot's own manual.

This went unnoticed so far because Buildroot's manual is 1) the last to
be parsed, and 2) not using $(pkgdir) anyway.

Additionally, $(pkgdir) is mostly an internal macro, that is, as this
change demonstrates, difficult to use, and thus should not be used, in
packages or in documents.

We fix that by introducing $(FOO_DOCDIR), similar to $(FOO_PKGDIR),
which points to the document directory. We choose not to name the
variable FOO_PKGDIR, because it semantically is not a package.

As a consequence, the last argument to the doc-asciidoc macro is now
superfluous, so it is removed, which causes a little bit of churn in
the main macro. As a further consequence, the third argument in the
inner macro is no longer needed either, so it too is removed, which
causes a bit more churn yet in the inner macro.

Signed-off-by: Yann E. MORIN <yann.morin@orange.com>
Cc: Frederic GARDES <frederic.gardes@orange.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
2022-02-13 12:24:02 +01:00
..
adding-board-support.txt
adding-packages-asciidoc.txt package/doc-asciidoc: fix build for out-of-tree documents 2022-02-13 12:24:02 +01:00
adding-packages-autotools.txt
adding-packages-cargo.txt
adding-packages-cmake.txt
adding-packages-conclusion.txt
adding-packages-directory.txt
adding-packages-generic.txt
adding-packages-gettext.txt
adding-packages-golang.txt
adding-packages-hooks.txt
adding-packages-kconfig.txt
adding-packages-kernel-module.txt
adding-packages-linux-kernel-spec-infra.txt
adding-packages-luarocks.txt
adding-packages-meson.txt
adding-packages-perl.txt
adding-packages-python.txt
adding-packages-qmake.txt
adding-packages-rebar.txt
adding-packages-tips.txt
adding-packages-virtual.txt
adding-packages-waf.txt
adding-packages.txt
advanced.txt
appendix.txt
beyond-buildroot.txt
ccache-support.txt
common-usage.txt
configure-other-components.txt
configure.txt
contribute.txt
customize-configuration.txt
customize-device-permission-tables.txt
customize-directory-structure.txt
customize-outside-br.txt
customize-packages.txt
customize-patches.txt
customize-post-image.txt
customize-quick-guide.txt
customize-rootfs.txt
customize-users-tables.txt
customize.txt
debugging-buildroot.txt
developers.txt
download-infra.txt
download-location.txt
eclipse-integration.txt
faq-troubleshooting.txt
getting.txt
how-buildroot-works.txt
introduction.txt
known-issues.txt
legal-notice.txt
make-tips.txt
makedev-syntax.txt
makeusers-syntax.txt
manual.mk
manual.txt
migrating.txt
package-make-target.txt
patch-policy.txt
prerequisite.txt
quickstart.txt
rebuilding-packages.txt
release-engineering.txt
resources.txt
selinux-support.txt
using-buildroot-debugger.txt
using-buildroot-development.txt
using-buildroot-toolchain.txt
writing-rules.txt