Subject: Re: [PATCH v2 09/13] meson: improve handling of `sane_tool_path` option

From: Toon Claes <[email-masked]>
Date: Fri, 07 Feb 2025 14:49:12 +0100

Patrick Steinhardt <[email-masked]> writes:

> The `sane_tool_path` option can be used to override the PATH variable
> from which the build process, tests and ultimately Git will end up
> picking programs from. It is currently lacking though because we only
> use it to populate the PATH environment variable for executed scripts
> and for the `BROKEN_PATH_FIX` mechanism, but we don't use it to find
> programs used in the build process itself.
>
> Fix this issue by treating it similar to the Windows-specific paths,
> which will make us use it both to find programs and to populate the PATH
> environment variable.
>
> To help with this fix, change the type of the option to be an array of
> paths, which makes the handling a bit easier for us. It's also the
> correct thing to do as the input indeed is a list of paths.

Should we consider this a breaking change, or aren't we because using
Meson is still not the "official" installation method? I've noticed it
breaks my "build" directory which was set up before this change and now
am trying to use these changes on:

   $ cd build
   $ meson configure

   ERROR: The value of option "sane_tool_path" is "[]", which is not a string.

   $ meson compile
   INFO: autodetecting backend as ninja
   INFO: calculating backend command to run: /home/toon/.local/bin/ninja
   [0/1] Regenerating build files.
   The Meson build system
   Version: 1.6.1
   Source dir: /home/toon/devel/git
   Build dir: /home/toon/devel/git/build
   Build type: native build
   Program sh found: YES (/usr/bin/sh)

   ../meson.build:171:0: ERROR: The value of option "sane_tool_path" is "[]", which is not a string.

   A full log can be found at /home/toon/devel/git/build/meson-logs/meson-log.txt
   FAILED: build.ninja
   /home/toon/.local/bin/meson --internal regenerate /home/toon/devel/git .
   ninja: error: rebuilding 'build.ninja': subcommand failed

-- 
Toon