* [PATCH] wincred: align Makefile with other Makefiles in contrib @ 2025-11-05 19:55 Thomas Uhle 2025-11-06 14:37 ` Junio C Hamano 2025-11-06 15:37 ` Johannes Schindelin 0 siblings, 2 replies; 7+ messages in thread From: Thomas Uhle @ 2025-11-05 19:55 UTC (permalink / raw) To: git; +Cc: Johannes Schindelin * Replace $(LOADLIBES) because it is deprecated since long and it is used nowhere else in the git project. * Use $(gitexecdir) instead of $(libexecdir) because config.mak defines $(libexecdir) as $(prefix)/libexec, not as $(prefix)/libexec/git-core. * Similar to other Makefiles, let install target rule create $(gitexecdir) to make sure the directory exists before copying the executable and also let it respect $(DESTDIR). * Shuffle the lines for the default settings to align them with the other Makefiles in contrib/credential. * Define .PHONY for all special targets (all, install, clean). Signed-off-by: Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> --- contrib/credential/wincred/Makefile | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/contrib/credential/wincred/Makefile b/contrib/credential/wincred/Makefile index 5b795fc..d92e721 100644 --- a/contrib/credential/wincred/Makefile +++ b/contrib/credential/wincred/Makefile @@ -4,20 +4,22 @@ -include ../../../config.mak.autogen -include ../../../config.mak -CC ?= gcc -RM ?= rm -f -CFLAGS ?= -O2 -Wall - prefix ?= /usr/local -libexecdir ?= $(prefix)/libexec/git-core +gitexecdir ?= $(prefix)/libexec/git-core +CC ?= gcc +CFLAGS ?= -O2 -Wall INSTALL ?= install +RM ?= rm -f -git-credential-wincred.exe : git-credential-wincred.c - $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@ +git-credential-wincred.exe: git-credential-wincred.c + $(LINK.c) -o $@ $^ $(LDFLAGS) $(LDLIBS) install: git-credential-wincred.exe - $(INSTALL) -m 755 $^ $(libexecdir) + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir) + $(INSTALL) -m 755 $< $(DESTDIR)$(gitexecdir) clean: $(RM) git-credential-wincred.exe + +.PHONY: all install clean base-commit: 4cf919bd7b946477798af5414a371b23fd68bf93 -- 2.47.3 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-05 19:55 [PATCH] wincred: align Makefile with other Makefiles in contrib Thomas Uhle @ 2025-11-06 14:37 ` Junio C Hamano 2025-11-06 15:37 ` Johannes Schindelin 1 sibling, 0 replies; 7+ messages in thread From: Junio C Hamano @ 2025-11-06 14:37 UTC (permalink / raw) To: Thomas Uhle; +Cc: git, Johannes Schindelin Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> writes: > * Replace $(LOADLIBES) because it is deprecated since long and it is > used nowhere else in the git project. > * Use $(gitexecdir) instead of $(libexecdir) because config.mak defines > $(libexecdir) as $(prefix)/libexec, not as $(prefix)/libexec/git-core. > * Similar to other Makefiles, let install target rule create > $(gitexecdir) to make sure the directory exists before copying the > executable and also let it respect $(DESTDIR). > * Shuffle the lines for the default settings to align them with the > other Makefiles in contrib/credential. > * Define .PHONY for all special targets (all, install, clean). > > Signed-off-by: Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> > --- > contrib/credential/wincred/Makefile | 18 ++++++++++-------- > 1 file changed, 10 insertions(+), 8 deletions(-) Looks sensible (to a person who does not do Windows, anyway), but I do not know what depends on the way it is currently laid out, so will queue only after I see a Windows person or two give their acks to the patch. Thanks. > diff --git a/contrib/credential/wincred/Makefile b/contrib/credential/wincred/Makefile > index 5b795fc..d92e721 100644 > --- a/contrib/credential/wincred/Makefile > +++ b/contrib/credential/wincred/Makefile > @@ -4,20 +4,22 @@ > -include ../../../config.mak.autogen > -include ../../../config.mak > > -CC ?= gcc > -RM ?= rm -f > -CFLAGS ?= -O2 -Wall > - > prefix ?= /usr/local > -libexecdir ?= $(prefix)/libexec/git-core > +gitexecdir ?= $(prefix)/libexec/git-core > > +CC ?= gcc > +CFLAGS ?= -O2 -Wall > INSTALL ?= install > +RM ?= rm -f > > -git-credential-wincred.exe : git-credential-wincred.c > - $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@ > +git-credential-wincred.exe: git-credential-wincred.c > + $(LINK.c) -o $@ $^ $(LDFLAGS) $(LDLIBS) > > install: git-credential-wincred.exe > - $(INSTALL) -m 755 $^ $(libexecdir) > + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir) > + $(INSTALL) -m 755 $< $(DESTDIR)$(gitexecdir) > > clean: > $(RM) git-credential-wincred.exe > + > +.PHONY: all install clean > > base-commit: 4cf919bd7b946477798af5414a371b23fd68bf93 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-05 19:55 [PATCH] wincred: align Makefile with other Makefiles in contrib Thomas Uhle 2025-11-06 14:37 ` Junio C Hamano @ 2025-11-06 15:37 ` Johannes Schindelin 2025-11-06 16:52 ` Junio C Hamano 1 sibling, 1 reply; 7+ messages in thread From: Johannes Schindelin @ 2025-11-06 15:37 UTC (permalink / raw) To: Thomas Uhle; +Cc: git [-- Attachment #1: Type: text/plain, Size: 2229 bytes --] Hallo Thomas, wie geht's? Grüße an den Biergarten am Blauen Wunder! On Wed, 5 Nov 2025, Thomas Uhle wrote: > * Replace $(LOADLIBES) because it is deprecated since long and it is > used nowhere else in the git project. > * Use $(gitexecdir) instead of $(libexecdir) because config.mak defines > $(libexecdir) as $(prefix)/libexec, not as $(prefix)/libexec/git-core. > * Similar to other Makefiles, let install target rule create > $(gitexecdir) to make sure the directory exists before copying the > executable and also let it respect $(DESTDIR). > * Shuffle the lines for the default settings to align them with the > other Makefiles in contrib/credential. > * Define .PHONY for all special targets (all, install, clean). These changes all make sense to me. Feel free to add Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> Thank you, Johannes > > Signed-off-by: Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> > --- > contrib/credential/wincred/Makefile | 18 ++++++++++-------- > 1 file changed, 10 insertions(+), 8 deletions(-) > > diff --git a/contrib/credential/wincred/Makefile b/contrib/credential/wincred/Makefile > index 5b795fc..d92e721 100644 > --- a/contrib/credential/wincred/Makefile > +++ b/contrib/credential/wincred/Makefile > @@ -4,20 +4,22 @@ > -include ../../../config.mak.autogen > -include ../../../config.mak > > -CC ?= gcc > -RM ?= rm -f > -CFLAGS ?= -O2 -Wall > - > prefix ?= /usr/local > -libexecdir ?= $(prefix)/libexec/git-core > +gitexecdir ?= $(prefix)/libexec/git-core > > +CC ?= gcc > +CFLAGS ?= -O2 -Wall > INSTALL ?= install > +RM ?= rm -f > > -git-credential-wincred.exe : git-credential-wincred.c > - $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@ > +git-credential-wincred.exe: git-credential-wincred.c > + $(LINK.c) -o $@ $^ $(LDFLAGS) $(LDLIBS) > > install: git-credential-wincred.exe > - $(INSTALL) -m 755 $^ $(libexecdir) > + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir) > + $(INSTALL) -m 755 $< $(DESTDIR)$(gitexecdir) > > clean: > $(RM) git-credential-wincred.exe > + > +.PHONY: all install clean > > base-commit: 4cf919bd7b946477798af5414a371b23fd68bf93 > -- > 2.47.3 > > ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-06 15:37 ` Johannes Schindelin @ 2025-11-06 16:52 ` Junio C Hamano 2025-11-07 11:45 ` Thomas Uhle 0 siblings, 1 reply; 7+ messages in thread From: Junio C Hamano @ 2025-11-06 16:52 UTC (permalink / raw) To: Johannes Schindelin; +Cc: Thomas Uhle, git Johannes Schindelin <Johannes.Schindelin@gmx.de> writes: > Hallo Thomas, wie geht's? Grüße an den Biergarten am Blauen Wunder! > > On Wed, 5 Nov 2025, Thomas Uhle wrote: > >> * Replace $(LOADLIBES) because it is deprecated since long and it is >> used nowhere else in the git project. >> * Use $(gitexecdir) instead of $(libexecdir) because config.mak defines >> $(libexecdir) as $(prefix)/libexec, not as $(prefix)/libexec/git-core. >> * Similar to other Makefiles, let install target rule create >> $(gitexecdir) to make sure the directory exists before copying the >> executable and also let it respect $(DESTDIR). >> * Shuffle the lines for the default settings to align them with the >> other Makefiles in contrib/credential. >> * Define .PHONY for all special targets (all, install, clean). > > These changes all make sense to me. Feel free to add > > Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> > > Thank you, > Johannes Thanks, both. Will queue with your Ack. > >> >> Signed-off-by: Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> >> --- >> contrib/credential/wincred/Makefile | 18 ++++++++++-------- >> 1 file changed, 10 insertions(+), 8 deletions(-) >> >> diff --git a/contrib/credential/wincred/Makefile b/contrib/credential/wincred/Makefile >> index 5b795fc..d92e721 100644 >> --- a/contrib/credential/wincred/Makefile >> +++ b/contrib/credential/wincred/Makefile >> @@ -4,20 +4,22 @@ >> -include ../../../config.mak.autogen >> -include ../../../config.mak >> >> -CC ?= gcc >> -RM ?= rm -f >> -CFLAGS ?= -O2 -Wall >> - >> prefix ?= /usr/local >> -libexecdir ?= $(prefix)/libexec/git-core >> +gitexecdir ?= $(prefix)/libexec/git-core >> >> +CC ?= gcc >> +CFLAGS ?= -O2 -Wall >> INSTALL ?= install >> +RM ?= rm -f >> >> -git-credential-wincred.exe : git-credential-wincred.c >> - $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@ >> +git-credential-wincred.exe: git-credential-wincred.c >> + $(LINK.c) -o $@ $^ $(LDFLAGS) $(LDLIBS) >> >> install: git-credential-wincred.exe >> - $(INSTALL) -m 755 $^ $(libexecdir) >> + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir) >> + $(INSTALL) -m 755 $< $(DESTDIR)$(gitexecdir) >> >> clean: >> $(RM) git-credential-wincred.exe >> + >> +.PHONY: all install clean >> >> base-commit: 4cf919bd7b946477798af5414a371b23fd68bf93 >> -- >> 2.47.3 >> >> ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-06 16:52 ` Junio C Hamano @ 2025-11-07 11:45 ` Thomas Uhle 2025-11-07 16:30 ` Junio C Hamano 0 siblings, 1 reply; 7+ messages in thread From: Thomas Uhle @ 2025-11-07 11:45 UTC (permalink / raw) To: git; +Cc: Junio C Hamano, Johannes Schindelin [-- Attachment #1: Type: text/plain, Size: 2790 bytes --] On Thu, 6 Nov 2025, Junio C Hamano wrote: > Johannes Schindelin <Johannes.Schindelin@gmx.de> writes: > >> Hallo Thomas, wie geht's? Grüße an den Biergarten am Blauen Wunder! Ich komme am Schillergarten so bald leider nicht vorbei, es ist einfach zu ungemütlich draußen, und Glühwein gibt es vermutlich auch noch nicht. ;) >> On Wed, 5 Nov 2025, Thomas Uhle wrote: >> >>> * Replace $(LOADLIBES) because it is deprecated since long and it is >>> used nowhere else in the git project. >>> * Use $(gitexecdir) instead of $(libexecdir) because config.mak defines >>> $(libexecdir) as $(prefix)/libexec, not as $(prefix)/libexec/git-core. >>> * Similar to other Makefiles, let install target rule create >>> $(gitexecdir) to make sure the directory exists before copying the >>> executable and also let it respect $(DESTDIR). >>> * Shuffle the lines for the default settings to align them with the >>> other Makefiles in contrib/credential. >>> * Define .PHONY for all special targets (all, install, clean). >> >> These changes all make sense to me. Feel free to add >> >> Acked-by: Johannes Schindelin <johannes.schindelin@gmx.de> >> >> Thank you, >> Johannes > > Thanks, both. Will queue with your Ack. Thank you! Does this patch qualify for the final version 2.52.0 or is it already too late? And if it is the latter, wouldn't it make sense to have it in an updated version 2.52.1? Best regards, Thomas >>> >>> Signed-off-by: Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> >>> --- >>> contrib/credential/wincred/Makefile | 18 ++++++++++-------- >>> 1 file changed, 10 insertions(+), 8 deletions(-) >>> >>> diff --git a/contrib/credential/wincred/Makefile b/contrib/credential/wincred/Makefile >>> index 5b795fc..d92e721 100644 >>> --- a/contrib/credential/wincred/Makefile >>> +++ b/contrib/credential/wincred/Makefile >>> @@ -4,20 +4,22 @@ >>> -include ../../../config.mak.autogen >>> -include ../../../config.mak >>> >>> -CC ?= gcc >>> -RM ?= rm -f >>> -CFLAGS ?= -O2 -Wall >>> - >>> prefix ?= /usr/local >>> -libexecdir ?= $(prefix)/libexec/git-core >>> +gitexecdir ?= $(prefix)/libexec/git-core >>> >>> +CC ?= gcc >>> +CFLAGS ?= -O2 -Wall >>> INSTALL ?= install >>> +RM ?= rm -f >>> >>> -git-credential-wincred.exe : git-credential-wincred.c >>> - $(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@ >>> +git-credential-wincred.exe: git-credential-wincred.c >>> + $(LINK.c) -o $@ $^ $(LDFLAGS) $(LDLIBS) >>> >>> install: git-credential-wincred.exe >>> - $(INSTALL) -m 755 $^ $(libexecdir) >>> + $(INSTALL) -d -m 755 $(DESTDIR)$(gitexecdir) >>> + $(INSTALL) -m 755 $< $(DESTDIR)$(gitexecdir) >>> >>> clean: >>> $(RM) git-credential-wincred.exe >>> + >>> +.PHONY: all install clean >>> >>> base-commit: 4cf919bd7b946477798af5414a371b23fd68bf93 >>> -- >>> 2.47.3 >>> ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-07 11:45 ` Thomas Uhle @ 2025-11-07 16:30 ` Junio C Hamano 2025-11-09 11:45 ` Thomas Uhle 0 siblings, 1 reply; 7+ messages in thread From: Junio C Hamano @ 2025-11-07 16:30 UTC (permalink / raw) To: Thomas Uhle; +Cc: git, Johannes Schindelin Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> writes: > Thank you! Does this patch qualify for the final version 2.52.0 or is it > already too late? And if it is the latter, wouldn't it make sense to have > it in an updated version 2.52.1? Highly unlikely, I would suspect. In general, after -rc1 gets tagged, nothing will become candidate for the final release without a valid excuse. One common reason is that it is a bugfix for a regression that was introduced during the cycle. This clearly isn't one---the aspect of the wincred Makefile your patch fixes haven't changed since ccfb5bda (wincred: add install target, 2012-10-24). People lived with that awkwardness for 13 years. They can live with it a few more months just fine. Those who _have_ been building wincred and installing it for their own (or for their colleages) would have an established procedure to work around the unusual arrangement the Makefile has (which you have fixed), and changing it this close to the final release would only add extra work on them, without helping anybody else. A good time to merge such a change is early in a fresh cycle, so that they have longer preparation period to adjust their build infrastructure. There are reasons we may want to have changes newly floated after -rc1 got tagged; for example, I merged 8d716966 (ci: update {download,upload}-artifact Action versions, 2025-11-06) after tagging -rc1. There were another CI fix merged immediately before -rc1. The benefit any late changes that get merged has to outweigh the risks by a large margin, and CI changes like these have very small blast radius even if it goes wrong (nobody other than our developers would be affected, and they know what to do) while the damage unfixed CI job can cause is larger (CI can deliberately stop to make us realize that the service we rely on is being deprecated). There also is a message typofix merged post -rc1, to correct new messages that appeared during this cycle. The output from the programs before the release candidate were properly localizable, but left unfixed, our translators need to translate typoed messages, and then when the typofix hits 'master' later, they have to adjust their translations by updating what original gets translated again. Is there comparable justification why wincred/Makefile change has to be in the upcoming release? I do not think of any. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] wincred: align Makefile with other Makefiles in contrib 2025-11-07 16:30 ` Junio C Hamano @ 2025-11-09 11:45 ` Thomas Uhle 0 siblings, 0 replies; 7+ messages in thread From: Thomas Uhle @ 2025-11-09 11:45 UTC (permalink / raw) To: Junio C Hamano; +Cc: Johannes Schindelin, git On Fri, 7 Nov 2025, Junio C Hamano wrote: > Thomas Uhle <thomas.uhle@mailbox.tu-dresden.de> writes: > >> Thank you! Does this patch qualify for the final version 2.52.0 or is it >> already too late? And if it is the latter, wouldn't it make sense to have >> it in an updated version 2.52.1? > > Highly unlikely, I would suspect. > > In general, after -rc1 gets tagged, nothing will become candidate > for the final release without a valid excuse. One common reason is > that it is a bugfix for a regression that was introduced during the > cycle. This clearly isn't one---the aspect of the wincred Makefile > your patch fixes haven't changed since ccfb5bda (wincred: add > install target, 2012-10-24). People lived with that awkwardness for > 13 years. They can live with it a few more months just fine. I agree. Fair enough. > Those who _have_ been building wincred and installing it for their > own (or for their colleages) would have an established procedure to > work around the unusual arrangement the Makefile has (which you have > fixed), and changing it this close to the final release would only > add extra work on them, without helping anybody else. A good time > to merge such a change is early in a fresh cycle, so that they have > longer preparation period to adjust their build infrastructure. Understood. > There are reasons we may want to have changes newly floated after > -rc1 got tagged; for example, I merged 8d716966 (ci: update > {download,upload}-artifact Action versions, 2025-11-06) after > tagging -rc1. There were another CI fix merged immediately before > -rc1. > > The benefit any late changes that get merged has to outweigh the > risks by a large margin, and CI changes like these have very small > blast radius even if it goes wrong (nobody other than our developers > would be affected, and they know what to do) while the damage > unfixed CI job can cause is larger (CI can deliberately stop to make > us realize that the service we rely on is being deprecated). > > There also is a message typofix merged post -rc1, to correct new > messages that appeared during this cycle. The output from the > programs before the release candidate were properly localizable, but > left unfixed, our translators need to translate typoed messages, and > then when the typofix hits 'master' later, they have to adjust their > translations by updating what original gets translated again. > > Is there comparable justification why wincred/Makefile change has to > be in the upcoming release? I do not think of any. You are right though. I have just thought that it might be good to have all the three commits for the update of the Makefiles in contrib/credential "in one go". Yet, this is by far not comparable to those other cases. Thanks for your explanations! Best regards, Thomas Uhle ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2025-11-09 11:46 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-11-05 19:55 [PATCH] wincred: align Makefile with other Makefiles in contrib Thomas Uhle 2025-11-06 14:37 ` Junio C Hamano 2025-11-06 15:37 ` Johannes Schindelin 2025-11-06 16:52 ` Junio C Hamano 2025-11-07 11:45 ` Thomas Uhle 2025-11-07 16:30 ` Junio C Hamano 2025-11-09 11:45 ` Thomas Uhle
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).