Thank you very much -- I had completely missed that commit. I sent an email to the Git mailing list.
Best regards, Dario On Thu, Apr 4, 2024 at 8:24 PM Martin Dorey <martin.do...@hitachivantara.com> wrote: > > I'm afraid it's a bug in git's config.mak.uname. To point at one example, I > think of many: > > https://github.com/git/git/blob/7774cfed62/config.mak.uname#L248 > > ... starts with a tab but, this human is reasonably confident, from eg the > indentation, that it's intended as Make syntax rather than shell script. > "else" is common in shell script and in Gnu Make. When Make's parser sees > one in a rule's "recipe", how's it to decide whether it's for the shell or > for Make? According to the Make documentation, it's determined by whether > the line starts with a tab. That's clear, simple and imo what someone new to > the beast would guess but the implementation in Make wasn't previously > rigorous. > > This came up recently in the Linux kernel build system, resulting in: > > https://github.com/torvalds/linux/commit/82175d1f9430d5a026e2231782d13da0bf57155c > > In finding that, I see that poor Yamada-san caught an earful: > > https://www.spinics.net/lists/linux-kbuild/msg39477.html > https://www.spinics.net/lists/linux-kbuild/msg39482.html > > I fear we should have led with the "else" explanation, as I did above. The > Make check-in: > > https://git.savannah.gnu.org/cgit/make.git/commit/?id=07fcee35f058a876447c8a021f9eb1943f902534 > > ... mentions "SV 64815" and its patch mentions "SV 64085", neither of which > were right: > > https://savannah.gnu.org/bugs/?64815: gxditview renders '\-' as '-' (a short > line segment like a hyphen) > https://savannah.gnu.org/bugs/?64085: -e passed to shell in POSIX mode with > -i or .IGNORE > > The intended Make bug was: > > https://savannah.gnu.org/bugs/?64185: *** only one 'else' per conditional. > Stop. due to else in recipe > > ________________________________ > From: bug-make-bounces+martin.dorey=hds....@gnu.org > <bug-make-bounces+martin.dorey=hds....@gnu.org> on behalf of Dario > Gjorgjevski <dario.gjorgjev...@gmail.com> > Sent: Thursday, April 4, 2024 06:41 > To: bug-make@gnu.org <bug-make@gnu.org> > Subject: Unable to build git@7774cfed62 using make@033330e > > ***** EXTERNAL EMAIL ***** > > Attempting to build git@7774cfed62 using make@033330e results in a > missing 'endif' at the end of config.mak.uname: > > config.mak.uname:842: *** missing 'endif'. Stop. > > Permalink to config.mak.uname: > https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgit%2Fgit%2Fblob%2F7774cfed62%2Fconfig.mak.uname&data=05%7C02%7Cmartin.dorey%40hds.com%7C84b15985315d44685dfd08dc54ada395%7C18791e1761594f52a8d4de814ca8284a%7C0%7C0%7C638478351967935311%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=iMn1yFKf%2BejRxv4YtHG1vuRc7F9CU%2FbL4pDC4PYcNow%3D&reserved=0. > (Included from Makefile: > https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fgit%2Fgit%2Fblob%2F7774cfed62%2FMakefile%23L1438&data=05%7C02%7Cmartin.dorey%40hds.com%7C84b15985315d44685dfd08dc54ada395%7C18791e1761594f52a8d4de814ca8284a%7C0%7C0%7C638478351967943429%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=jk37ludTLJf9cNnM%2BySubfTcBHN5GFjrOAdp%2FmG88bk%3D&reserved=0.) > As far as I can see, both git's Makefile and config.mak.uname look > good. The latest tagged release of make, 4.4.1, has no problems with > it, and neither does the make shipped with macOS. > > Best regards, > Dario >