Skip to contentSkip to conversation

package/doc-asciidoc.mk: unbreak docs logic after pkgdir change

PATCH Applied Peter Korsgaard 2 participants 2 messages Mar 25, 2024

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 package/doc-asciidoc.mk: unbreak docs logic after pkgdir change

Commit 748fc4be21e (package/pkg-utils.mk: remove trailing slash in pkgdir definition) broke the docs generation logic:

make manual-html

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

Preparing the manual sources...
Generating HTML manual...

a2x: ERROR: missing ASCIIDOC_FILE: /home/peko/source/buildroot/output/build/docs/manual/manual.adoc

make: *** [docs/manual/manual.mk:12: /home/peko/source/buildroot/output/docs/manual/manual.html] Error 1

As it now ends up with the .adoc file one level below (../docs/manual/manual/manual.adoc). The reason is that the pkgdir macro is used to define $(2)_DOCDIR, which is passed to rsync:

rsync -a docs/manual /home/peko/source/buildroot/output/build/docs/manual

Fix it by appending a / to the rsync arguments like we do elsewhere.

---
 package/doc-asciidoc.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
package/doc-asciidoc.mk +1 -1
index 40c9a725d1..d6ecd1e30e 100644
@@ -155,7 +155,7 @@ $(1)-check-dependencies: asciidoc-check-dependencies $$($(2)_DEPENDENCIES)
 $$(BUILD_DIR)/docs/$(1)/.stamp_doc_rsynced:
 	$$(Q)$$(call MESSAGE,"Preparing the $(1) sources...")
 	$$(Q)mkdir -p $$(@D)
-	$$(Q)rsync -a $$($(2)_DOCDIR) $$(@D)
+	$$(Q)rsync -a $$($(2)_DOCDIR)/ $$(@D)/
 	$$(Q)$$(foreach hook,$$($(2)_POST_RSYNC_HOOKS),$$(call $$(hook))$$(sep))
 
 .PHONY: $(1)-prepare-sources
Signature · 6 lines
2.39.2

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot
#1 lore raw
Quoted 14 lines · Peter Korsgaard

Commit 748fc4be21e (package/pkg-utils.mk: remove trailing slash in pkgdir definition) broke the docs generation logic:

make manual-html

Quoted 2 lines
Quoted 2 lines
Quoted 2 lines

Preparing the manual sources...
Generating HTML manual...

a2x: ERROR: missing ASCIIDOC_FILE: /home/peko/source/buildroot/output/build/docs/manual/manual.adoc

make: *** [docs/manual/manual.mk:12: /home/peko/source/buildroot/output/docs/manual/manual.html] Error 1

As it now ends up with the .adoc file one level below (../docs/manual/manual/manual.adoc). The reason is that the pkgdir macro is used to define $(2)_DOCDIR, which is passed to rsync:

Quoted 5 lines

rsync -a docs/manual /home/peko/source/buildroot/output/build/docs/manual

Fix it by appending a / to the rsync arguments like we do elsewhere.

Applied to master, thanks.

I had checked that the change was OK for the manual as well, but without
actually testing (which is obviously stupid), and I had forgotten about rsync's special treatment of a trailing slash in the source path. Thanks for fixing it!

Regards,
Arnout

Quoted 9 lines
---
  package/doc-asciidoc.mk | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
package/doc-asciidoc.mk +0 -0
index 40c9a725d1..d6ecd1e30e 100644

package/doc-asciidoc.mk $(1)-check-dependencies: asciidoc-check-dependencies $$($(2)_DEPENDENCIES) · line 161

Quoted 8 lines
package/doc-asciidoc.mk +1 -1
@@ -155,7 +155,7 @@ $(1)-check-dependencies: asciidoc-check-dependencies $$($(2)_DEPENDENCIES)
  $$(BUILD_DIR)/docs/$(1)/.stamp_doc_rsynced:
  	$$(Q)$$(call MESSAGE,"Preparing the $(1) sources...")
  	$$(Q)mkdir -p $$(@D)
-	$$(Q)rsync -a $$($(2)_DOCDIR) $$(@D)
+	$$(Q)rsync -a $$($(2)_DOCDIR)/ $$(@D)/
  	$$(Q)$$(foreach hook,$$($(2)_POST_RSYNC_HOOKS),$$(call $$(hook))$$(sep))
 
  .PHONY: $(1)-prepare-sources

_______________________________________________
buildroot mailing list
[email protected]
https://lists.buildroot.org/mailman/listinfo/buildroot