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

Re: [PATCH 6/8] meson: fix GIT_EXEC_PATH with overridden -Dlibexecdir=

From
Patrick Steinhardt <ps@pks.im>
Date
Jul 8, 2025, 08:44 UTC
Message-ID
<aGzaZ7zHYbjzFo23@pks.im>
In-Reply-To
<ad58469d-e8a7-4a9e-9f34-2afa68458f00@ramsayjones.plus.com>
On Thu, Jul 03, 2025 at 05:39:31PM +0100, Ramsay Jones wrote:
Show 26 quoted lines
> 
> 
> On 03/07/2025 10:28, Patrick Steinhardt wrote:
> > In 837f637cf51 (meson.build: correct setting of GIT_EXEC_PATH,
> > 2025-05-19) we have fixed how we configure GIT_EXEC_PATH in some cases.
> > It was reported [1] though that this causes a new issue when overriding
> > libexecdir with `-Dlibexecdir=`:
> 
> Yep, I noticed this report when I got back. My first thought was 'no, we
> may just as well revert commit 837f637cf51', since that is in effect what
> this patch does! ;)
> 
> Then I had a quick look and left a diff/commit 'note to myself' which
> effectively did a global search/replace of the string:
> 
>     install_dir: get_option('libexecdir') / 'git-core'
> 
> with:
> 
>     install_dir: git_exec_path
> 
> and put it on my TODO list. (Note, that is *all* I did - I didn't even
> attempt a build, let alone test!)
> 
> Of course, I need to spend some time on this (if nothing else, git-gui and
> presumably gitk will need some changes as well?).

Neither git-gui nor gitk are currently supported by Meson. I do have a local patch series that backfills the support though.

Show 27 quoted lines
> Hopefully, I can find some time soon (those round tuits are in short supply).
> 
> > 
> >     $ meson setup -Dprefix=/tmp/git -Dlibexecdir=libexec-different
> >     $ meson install
> >     $ /tmp/git/bin/git --exec-path
> >     /tmp/git/libexec-different
> >     $ /tmp/git/bin/git daemon
> >     git: 'daemon' is not a git command. See 'git --help'.
> > 
> > While we correctly propagate the libexecdir to Git's GIT_EXEC_PATH, we
> > forgot to append 'git-core'. Consequently, it cannot find its binaries
> > anymore.
> > 
> > Fix this issue by appending 'git-core' to libexecdir. With this, things
> > work as expected:
> > 
> >     $ meson install
> >     $ /tmp/git/bin/git --exec-path
> >     /tmp/git/libexec-different/git-core
> >     $ /tmp/git/bin/git daemon -h
> >     ...
> 
> Hmm, I'm pretty certain I tested commit 837f637cf51 in a similar (but
> not identical) way! ;) I will use the above test next time.
> 
> Sorry for causing a regression. :(
No worries, it happens to all of us.
Patrick
Previous: Ramsay JonesNext: Patrick Steinhardt
Message 12 of 46 in “A handful of Meson cleanups and improvements”
  1. 0/8 A handful of Meson cleanups and improvementsPatrick Steinhardt, Jul 3, 2025
  2. 1/8 meson: stop discovering native version of PythonPatrick Steinhardt, Jul 3, 2025
  3. Justin ToblerJul 8, 2025
  4. Patrick SteinhardtJul 9, 2025
  5. 2/8 meson: stop printing 'https' option twice in our summariesPatrick Steinhardt, Jul 3, 2025
  6. 3/8 meson: improve summary of auto-detected featuresPatrick Steinhardt, Jul 3, 2025
  7. Justin ToblerJul 8, 2025
  8. 4/8 meson: clean up unnecessary variablesPatrick Steinhardt, Jul 3, 2025
  9. 5/8 meson: fix lookup of shell on MINGW64Patrick Steinhardt, Jul 3, 2025
  10. 6/8 meson: fix GIT_EXEC_PATH with overridden -Dlibexecdir=Patrick Steinhardt, Jul 3, 2025
  11. Ramsay JonesJul 3, 2025
  12. Patrick SteinhardtJul 8, 2025
  13. 7/8 meson: update subproject wrappersPatrick Steinhardt, Jul 3, 2025
  14. 8/8 ci: use Meson's new `--slice` optionPatrick Steinhardt, Jul 3, 2025
  15. Junio C HamanoJul 8, 2025
  16. Jeff KingJul 8, 2025
  17. Jeff KingJul 8, 2025
  18. Junio C HamanoJul 8, 2025
  19. Patrick SteinhardtJul 8, 2025
  20. 0/8 A handful of Meson cleanups and improvementsPatrick Steinhardt, Jul 8, 2025
  21. 1/8 meson: stop discovering native version of PythonPatrick Steinhardt, Jul 8, 2025
  22. 2/8 meson: stop printing 'https' option twice in our summariesPatrick Steinhardt, Jul 8, 2025
  23. 3/8 meson: improve summary of auto-detected featuresPatrick Steinhardt, Jul 8, 2025
  24. 4/8 meson: clean up unnecessary variablesPatrick Steinhardt, Jul 8, 2025
  25. 5/8 meson: fix lookup of shell on MINGW64Patrick Steinhardt, Jul 8, 2025
  26. Justin ToblerJul 8, 2025
  27. 6/8 meson: fix GIT_EXEC_PATH with overridden -Dlibexecdir=Patrick Steinhardt, Jul 8, 2025
  28. 7/8 meson: update subproject wrappersPatrick Steinhardt, Jul 8, 2025
  29. 8/8 ci: use Meson's new `--slice` optionPatrick Steinhardt, Jul 8, 2025
  30. 0/8 A handful of Meson cleanups and improvementsPatrick Steinhardt, Jul 9, 2025
  31. 1/8 meson: stop discovering native version of PythonPatrick Steinhardt, Jul 9, 2025
  32. Junio C HamanoJul 9, 2025
  33. Justin ToblerJul 9, 2025
  34. Eli SchwartzJul 9, 2025
  35. Junio C HamanoJul 9, 2025
  36. 2/8 meson: stop printing 'https' option twice in our summariesPatrick Steinhardt, Jul 9, 2025
  37. Junio C HamanoJul 9, 2025
  38. 3/8 meson: improve summary of auto-detected featuresPatrick Steinhardt, Jul 9, 2025
  39. Toon ClaesJul 10, 2025
  40. Junio C HamanoJul 10, 2025
  41. 4/8 meson: clean up unnecessary variablesPatrick Steinhardt, Jul 9, 2025
  42. 5/8 meson: fix lookup of shell on MINGW64Patrick Steinhardt, Jul 9, 2025
  43. 6/8 meson: fix GIT_EXEC_PATH with overridden -Dlibexecdir=Patrick Steinhardt, Jul 9, 2025
  44. 7/8 meson: update subproject wrappersPatrick Steinhardt, Jul 9, 2025
  45. 8/8 ci: use Meson's new `--slice` optionPatrick Steinhardt, Jul 9, 2025
  46. Justin ToblerJul 9, 2025

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.