git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 01/11] doc: allow the user to provide ASCIIDOC_EXTRA

From
Jeff King <peff@peff.net>
Date
May 17, 2021, 11:39 UTC
Message-ID
<YKJV8HBYCA7hEQiX@coredump.intra.peff.net>
In-Reply-To
<60a24b25499c0_126a0520823@natae.notmuch>
On Mon, May 17, 2021 at 05:53:25AM -0500, Felipe Contreras wrote:
Show 5 quoted lines
> > It's meant for the caller of "make". Your proposed use is within
> > doc-diff, but any user running "make ASCIIDOC_EXTRA=foo" would see the
> > different behavior.
> 
> Yeah, they would, but I don't think it would be wrong behavior.
It depends what they're trying to do. If they write:
  make ASCIIDOC_EXTRA=--one-extra-option

then they probably intend to to add to the options we set. If they write:

  make ASCIIDOC_EXTRA='-acompat-mode -atabsize=4 ...etc...'

with the intent of replicating the flags but changing or removing some elements, then it would no longer do what they want.

I don't mean to imply one is more right than the other (I'd suspect even that the override behavior is more likely to be what somebody wants). I'm mostly pointing out that this is unlike the rest of our Makefiles, which do not ever use override (and that the effect is visible to the caller, depending on what they want to do).

Show 9 quoted lines
> > I'd probably call it ASCIIDOC_FLAGS (like we have CFLAGS and LDFLAGS
> > that are meant for users to inform us of extra flags they'd like
> > passed).
> 
> Right, but Makefiles do override those, like:
> 
>   override CFLAGS += -fPIC
> 
> Otherwise builds may fail.

Some Makefiles do, but in this project we have not historically used override. Instead, we provide defaults for things like CFLAGS, expect the use to replace them if they like, and then aggregate them (along with other internal variables) into things like ALL_CFLAGS.

Show 11 quoted lines
> > Of course that may not solve your problem in a sense; if you want
> > doc-diff to override it, then that might conflict with a theoretical
> > ASCIIDOC_FLAGS somebody set in their config.mak (but we really are in
> > the realm of hypothetical here).
> 
> Setting ASCIIDOC_FLAGS in config.mk would not override the
> user-supplied flags any more than setting them in the Makefile (they are
> virtually the same thing as one includes the other).
> 
> It's only if the user has `override ASCIIDOC_FLAGS` in config.mk that
> such a problem would arise. And that's really hypothetical.
I mean that if your doc-diff runs:
  make USE_ASCIIDOCTOR=Yes ASCIIDOC_FLAGS=-adocdate=01/01/1970

then that will override anything the user put into config.mak. If they had some option like:

  ASCIIDOC_FLAGS = --load-path=/some/special/directory

they need for asciidoctor to run correctly on their system, then things would break for them. But we don't even have a user-facing ASCIIDOC_FLAGS now, and nobody is asking for it, so it's pretty hypothetical (I'd guess somebody in this situation would just set ASCIIDOC="asciidoctor --load-path=...", and that already doesn't work with doc-diff).

-Peff
Previous: Felipe ContrerasNext: Felipe Contreras
Message 8 of 25 in “doc: asciidoctor: direct man page creation and fixes”
  1. 00/11 doc: asciidoctor: direct man page creation and fixesFelipe Contreras, May 14, 2021
  2. 01/11 doc: allow the user to provide ASCIIDOC_EXTRAFelipe Contreras, May 14, 2021
  3. Jeff KingMay 15, 2021
  4. Jeff KingMay 15, 2021
  5. Felipe ContrerasMay 15, 2021
  6. Jeff KingMay 17, 2021
  7. Felipe ContrerasMay 17, 2021
  8. Jeff KingMay 17, 2021
  9. Felipe ContrerasMay 17, 2021
  10. 02/11 doc: doc-diff: allow more than one flagFelipe Contreras, May 14, 2021
  11. Jeff KingMay 15, 2021
  12. Felipe ContrerasMay 15, 2021
  13. 03/11 doc: doc-diff: set docdate manuallyFelipe Contreras, May 14, 2021
  14. Martin ÅgrenMay 14, 2021
  15. Felipe ContrerasMay 14, 2021
  16. 04/11 doc: use asciidoctor to build man pages directlyFelipe Contreras, May 14, 2021
  17. Martin ÅgrenMay 14, 2021
  18. Felipe ContrerasMay 14, 2021
  19. 05/11 doc: asciidoctor: add linkgit macros in man pagesFelipe Contreras, May 14, 2021
  20. 06/11 doc: join mansource and manversionFelipe Contreras, May 14, 2021
  21. 07/11 doc: add man pages workaround for asciidoctorFelipe Contreras, May 14, 2021
  22. 08/11 doc: asciidoctor: add hack for xrefsFelipe Contreras, May 14, 2021
  23. 09/11 doc: asciidoctor: add hack to improve linksFelipe Contreras, May 14, 2021
  24. 10/11 doc: asciidoctor: add support for baseurlFelipe Contreras, May 14, 2021
  25. 11/11 doc: asciidoctor: cleanup man page hackFelipe Contreras, May 14, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.