On Wed, Nov 13, 2024 at 11:46:32PM -0500, Eli Schwartz wrote: > On 11/13/24 11:24 PM, Junio C Hamano wrote: > > Is there a way to disable that? These symbolic-links pretending to > > be installed files are quite annoying---when the target file is lost, > > the links become useless. > > INSTALL_SYMLINKS=1 in the existing Makefile is of course the one true > way... (and really, why would you expect the target file to be lost for > any reason). > > That being said, it doesn't appear the patch series implements any of > the other multiplicity of choice in what kind of filesystem object gets > used for multiple copies of the same file. No hardlink or copy support > has been rigged up. > > (Meson doesn't have a builtin function for performing hardlinks, by the > way. I don't really think I've seen people desire to do this outside of > one project being discussed right here right now. hardlinks are mainly > good at fooling people who look at them into not understanding the > association between the two, and at breaking across multiple > filesystems. It's definitely impossible to get it right automatically, > and asking users to make an informed choice here is just not something > that projects other than git seem to find valuable, for whatever reason. > So basically, it's fairly understandable that meson hasn't previously > added hardlink support.) Yeah, for now we exclusively use symlinks for this and I didn't wire up an alternative. This was mostly to keep things simple while still ending up with a fully functional Git distribution. I also couldn't think of a scenario where symlinks would be an issue -- Meson also supports them on Windows, so that would not be an issue. If this is a requirement I can adapt though. While Meson does not support hardlinks natively, we can of of course manually wire up them if required. Patrick