Re: [PATCH 1/3] git-gui: move into "subprojects/"
- From
Karthik Nayak <karthik.188@gmail.com>
- Date
- Aug 19, 2025, 09:36 UTC
- Message-ID
- <CAOLa=ZQQoWeYRJLgnjVhonBoBZQLR=VRJXGpRhyanEG=0ewOOw@mail.gmail.com>
- In-Reply-To
- <20250819-b4-pks-meson-tcl-tk-v1-1-6bcaff0bc0a0@pks.im>
Patrick Steinhardt <ps@pks.im> writes:
Show 6 quoted lines
> The "git-gui" project has recently gained support for being built with
> Meson, but it is not yet wired up in Git's own Meson build instructions.
> "git-gui" itself is wired up as a standalone project, which means that
> we can trivially make it available via `subproject("git-gui")`.
>
> So far the theory. In practice thoguh the `subproject()` function comess/thoguh/though
Show 28 quoted lines
> with a couple of limitations. Most importantly, all subprojects need to
> be contained in the same directory, and that directory cannot be the
> top-level directory of the parent project. Right now we use the default
> subproject directory ("subprojects/") for a couple of fallbacks in case
> some important dependencies couldn't be found.
>
> This means that we cannot just include the "git-gui" directory as a
> subproject as it lives in our root directory. There are three options:
>
> - We move "git-gui" into "subprojects/". It requires a bit of churn,
> but should otherwise not have any significant downsides.
>
> - We create a symlink pointing from "subprojects/git-gui" to the
> top-level directory. This may not work on Windows.
>
> - We can create a "git-gui.wrap" file that knows to pull a specific
> commit from upstream and build it. This would mean that Meson and
> Makefiles now have different sources of truth for which version of
> "git-gui" we build.
>
> The first option feels like the most sensible solution. It creates churn
> and requires us to adapt the pull-request workflow a bit. But this
> should be a one-time cost.
>
> In theory we could also rename the "subprojects/" directory by passing
> the "subproject_dir" argument to our `project()` call. But the name
> feels quite fitting for our purpose, as well.
>Okay makes sense. The most significant changes are in the top three files and make sense.
[snip]