Re: [PATCH 6/6] Makefile: add a INSTALL_FALLBACK_LN_CP mode

2 messages, 2 authors, 2021-03-31 · open the first message on its own page

Re: [PATCH 6/6] Makefile: add a INSTALL_FALLBACK_LN_CP mode

From: Junio C Hamano <hidden>
Date: 2021-03-31 18:46:02

Ævar Arnfjörð Bjarmason [off-list ref] writes:
quoted
So I would understand if there are two orthogonal knobs

 - the order of preference (e.g. hardlink > symlink > copy)
 - which ones are allowed (e.g. "no symlinks please")

but I cannot quite imagine how a system without any fallback would
be useful.
Because with explicit knobs I'd like to tell it what to do and not have
it auto-guess.
So how would I explicitly tell "I want hardlinks for everything
else, but use cp when going between /usr/bin and /usr/libexec"
(because /usr/bin and /usr/libexec is not on the same filesystem
on this particular box---I'll tell you to use hardlink everywhere
on another box of mine where they reside on the same filesystem)?

Your argument or analogy with openssl does not make much sense to me
in this case.

Re: [PATCH 6/6] Makefile: add a INSTALL_FALLBACK_LN_CP mode

From: Ævar Arnfjörð Bjarmason <hidden>
Date: 2021-03-31 19:02:41

On Wed, Mar 31 2021, Junio C Hamano wrote:
Ævar Arnfjörð Bjarmason [off-list ref] writes:
quoted
quoted
So I would understand if there are two orthogonal knobs

 - the order of preference (e.g. hardlink > symlink > copy)
 - which ones are allowed (e.g. "no symlinks please")

but I cannot quite imagine how a system without any fallback would
be useful.
Because with explicit knobs I'd like to tell it what to do and not have
it auto-guess.
So how would I explicitly tell "I want hardlinks for everything
else, but use cp when going between /usr/bin and /usr/libexec"
(because /usr/bin and /usr/libexec is not on the same filesystem
on this particular box---I'll tell you to use hardlink everywhere
on another box of mine where they reside on the same filesystem)?
Just as you would now:

    make NO_CROSS_DIRECTORY_HARDLINKS=Y install

That'll get you hardlinks within bin/ and libexec, but copies between
them, and no symlinks.

The behavior change in this series is if your "ln" errors out we'll no
longer silently plow ahead and e.g. not hardlink *within* bin and
libexec in that case.
Your argument or analogy with openssl does not make much sense to me
in this case.
The point is the Makefile shouldn't be second-guessing explicit
requests. That's what defaults are for.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help