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

Re: [PATCH v2 3/4] cmake: use verbatim arguments when invoking clar commands

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Nov 13, 2024, 15:41 UTC
Message-ID
<82d3f3aa-b11c-318f-9d47-35e0ebf3ebce@gmx.de>
In-Reply-To
<20241111-pks-clar-build-improvements-v2-3-d4794d8d1b30@pks.im>
Hi Patrick,
On Mon, 11 Nov 2024, Patrick Steinhardt wrote:
> Pass the VERBATIM option to `add_custom_command()`. Like this, all
> arguments to the commands will be escaped properly for the build tool so
> that the invoked command receives each argument unchanged.

I would not be surprised if this `VERBATIM` was unaware of the quirky escaping that the MSYS2 runtime (and therefore the Bash) requires. See the commit message of ad1559252945 (tests: add a helper to stress test argument quoting, 2019-09-18) for details.

Having said that, this patch certainly does not make things _worse_, even if it probably does not have the intended effect on Windows. But then, it does not matter because most git/git source checkouts live at absolute paths that do not need to be quoted.

Ciao, Johannes

Show 33 quoted lines
>
> Signed-off-by: Patrick Steinhardt <ps@pks.im>
> ---
>  contrib/buildsystems/CMakeLists.txt | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/contrib/buildsystems/CMakeLists.txt b/contrib/buildsystems/CMakeLists.txt
> index 2db80b7cc3c6aba840f18ffdc78d2cda1877d8cd..8c71f5a1d0290c9204e094fb266f10c7b70af9fb 100644
> --- a/contrib/buildsystems/CMakeLists.txt
> +++ b/contrib/buildsystems/CMakeLists.txt
> @@ -1009,13 +1009,15 @@ add_custom_command(OUTPUT "${CMAKE_BINARY_DIR}/t/unit-tests/clar-decls.h"
>  		"${CMAKE_BINARY_DIR}/t/unit-tests/clar-decls.h"
>  		${clar_test_SUITES}
>  	DEPENDS ${CMAKE_SOURCE_DIR}/t/unit-tests/generate-clar-decls.sh
> -		${clar_test_SUITES})
> +		${clar_test_SUITES}
> +	VERBATIM)
>  add_custom_command(OUTPUT "${CMAKE_BINARY_DIR}/t/unit-tests/clar.suite"
>  	COMMAND ${SH_EXE} "${CMAKE_SOURCE_DIR}/t/unit-tests/generate-clar-suites.sh"
>  		"${CMAKE_BINARY_DIR}/t/unit-tests/clar-decls.h"
>  		"${CMAKE_BINARY_DIR}/t/unit-tests/clar.suite"
>  	DEPENDS "${CMAKE_SOURCE_DIR}/t/unit-tests/generate-clar-suites.sh"
> -		"${CMAKE_BINARY_DIR}/t/unit-tests/clar-decls.h")
> +		"${CMAKE_BINARY_DIR}/t/unit-tests/clar-decls.h"
> +	VERBATIM)
>
>  add_library(unit-tests-lib ${clar_test_SUITES}
>  	"${CMAKE_SOURCE_DIR}/t/unit-tests/clar/clar.c"
>
> --
> 2.47.0.229.g8f8d6eee53.dirty
>
>
Previous: Patrick SteinhardtNext: Phillip Wood
Message 15 of 27 in “Build improvements for clar”
  1. 0/3 Build improvements for clarPatrick Steinhardt, Nov 8, 2024
  2. 1/3 t/unit-tests: convert "clar-generate.awk" into a shell scriptPatrick Steinhardt, Nov 8, 2024
  3. 2/3 cmake: use SH_EXE to execute clar scriptsPatrick Steinhardt, Nov 8, 2024
  4. 3/3 Makefile: let clar header targets depend on their scriptsPatrick Steinhardt, Nov 8, 2024
  5. Phillip WoodNov 10, 2024
  6. Junio C HamanoNov 11, 2024
  7. Patrick SteinhardtNov 11, 2024
  8. Junio C HamanoNov 11, 2024
  9. 0/4 Build improvements for clarPatrick Steinhardt, Nov 11, 2024
  10. 1/4 t/unit-tests: convert "clar-generate.awk" into a shell scriptPatrick Steinhardt, Nov 11, 2024
  11. Junio C HamanoNov 11, 2024
  12. Patrick SteinhardtNov 12, 2024
  13. 2/4 cmake: use SH_EXE to execute clar scriptsPatrick Steinhardt, Nov 11, 2024
  14. 3/4 cmake: use verbatim arguments when invoking clar commandsPatrick Steinhardt, Nov 11, 2024
  15. Johannes SchindelinNov 13, 2024
  16. Phillip WoodNov 14, 2024
  17. 4/4 Makefile: let clar header targets depend on their scriptsPatrick Steinhardt, Nov 11, 2024
  18. Phillip WoodNov 11, 2024
  19. 0/4 Build improvements for clarPatrick Steinhardt, Nov 15, 2024
  20. 2/4 cmake: use SH_EXE to execute clar scriptsPatrick Steinhardt, Nov 15, 2024
  21. Justin ToblerNov 18, 2024
  22. Patrick SteinhardtNov 19, 2024
  23. 1/4 t/unit-tests: convert "clar-generate.awk" into a shell scriptPatrick Steinhardt, Nov 15, 2024
  24. 3/4 cmake: use verbatim arguments when invoking clar commandsPatrick Steinhardt, Nov 15, 2024
  25. 4/4 Makefile: let clar header targets depend on their scriptsPatrick Steinhardt, Nov 15, 2024
  26. Justin ToblerNov 19, 2024
  27. Junio C HamanoNov 20, 2024

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.