threads / patch / 64129

patchlibsecret/Makefile: add install target

Subject: [PATCH] libsecret/Makefile: add install target

## tl;dr

2 messages between Sep 11, 2025 and Sep 11, 2025. Diffs are folded; open one to read it.

replies: 1people: 2as markdown or json

M Hickford via GitGitGadget· Sep 11, 2025, 20:38 UTC · lore
From: M Hickford <mirth.hickford@gmail.com>
Signed-off-by: M Hickford <mirth.hickford@gmail.com>
---
    libsecret/Makefile: add install target
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1970%2Fhickford%2Flibsecret-makefile-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1970/hickford/libsecret-makefile-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1970
 contrib/credential/libsecret/Makefile | 4 ++++
 1 file changed, 4 insertions(+)
Show changes to contrib/credential/libsecret/Makefile +4 −0
diff --git a/contrib/credential/libsecret/Makefile b/contrib/credential/libsecret/Makefile
index 97ce9c92fb..6fe70065ab 100644
--- a/contrib/credential/libsecret/Makefile
+++ b/contrib/credential/libsecret/Makefile
@@ -26,3 +26,7 @@ $(MAIN): $(OBJS)
 
 clean:
 	@$(RM) $(MAIN) $(OBJS)
+
+install: $(MAIN)
+	$(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir)
+	$(INSTALL) -m 755 $(MAIN) $(DESTDIR)$(gitexecdir)

base-commit: 4975ec3473b4bc61bc8a3df1ef29d0b7e7959e87
-- 
gitgitgadget
Junio C Hamano· Sep 11, 2025, 21:18 UTC · re: M Hickford via GitGitGadget · lore

Re: [PATCH] libsecret/Makefile: add install target

"M Hickford via GitGitGadget" <gitgitgadget@gmail.com> writes:
Show 27 quoted lines
> From: M Hickford <mirth.hickford@gmail.com>
>
> Signed-off-by: M Hickford <mirth.hickford@gmail.com>
> ---
>     libsecret/Makefile: add install target
>
> Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1970%2Fhickford%2Flibsecret-makefile-v1
> Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1970/hickford/libsecret-makefile-v1
> Pull-Request: https://github.com/gitgitgadget/git/pull/1970
>
>  contrib/credential/libsecret/Makefile | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/contrib/credential/libsecret/Makefile b/contrib/credential/libsecret/Makefile
> index 97ce9c92fb..6fe70065ab 100644
> --- a/contrib/credential/libsecret/Makefile
> +++ b/contrib/credential/libsecret/Makefile
> @@ -26,3 +26,7 @@ $(MAIN): $(OBJS)
>  
>  clean:
>  	@$(RM) $(MAIN) $(OBJS)
> +
> +install: $(MAIN)
> +	$(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir)
> +	$(INSTALL) -m 755 $(MAIN) $(DESTDIR)$(gitexecdir)
>
> base-commit: 4975ec3473b4bc61bc8a3df1ef29d0b7e7959e87

Hmph, the existing make macros used in the Makefile like $(RM), $(CC), etc. are all defined in the same Makefile, and the only things this Makefile includes are config.mak and its autogen variant if they exist, neither of which are the source of INSTALL or gitexecdir that are used in the main Makefile by being defined there.

It seems that existing Makefiles in contrib/ like the one in subtree and contacts, all define their own. Perhaps you can mimick them by adding things like

    prefix ?= /usr/local
    gitexecdir ?= $(prefix)/libexec/git-core
    # this should be set to a 'standard' bsd-type install program
    INSTALL  ?= install

that they commonly add for now to make it work? Without anything like that, I cannot quite see how it would work with your patch alone.

And then later we of course should clean things up by splitting the definitions done in the main Makefile into a common file that can be included (e.g. path+tool+definitions.mak file), include it from the main Makefile, and then have contrib/*/Makefile also include it so that the duplicated definitions like we see in Makefiles in subtree and contacts (there may be others; they just were the first hits in my "git ls-files | grep /Makefile").

← back to recent threads