git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Compiling git with makepp patch

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Aug 24, 2010, 04:32 UTC
Message-ID
<20100824043220.GA20037@burratino>
In-Reply-To
<4C71A53F.2020108@t-online.de>
Hi,
Daniel Pfeiffer wrote:
> .PHONY: FORCE
> 
> I don't know why you depend on a phony that has no rule — I also had
> to make that possible.
Surely the name explains it. :)
Show 5 quoted lines
> The file needs to be built immediately so
> that it can be included, before reading the rest of the makefile.
> But the dependency is only known to be phony after running the rule.
> Here you have a hen-egg problem, where I have no clue how Gnu make
> can cope (this is the one case where it requires .PHONY).

GNU make, unlike, say, pmake, reads all the rules before it runs anything iirc. So you can have

 -include foo
 foo:
	echo bar: >foo
	echo '	echo hi' >>foo
and it will cope okay.

Anyway, the git makefile is very far from topologically sorted; if you are suggesting we change that, that's fine with me, as long as the new rule is somehow justified and consistent.

Hope that helps, Jonathan

Previous: Daniel PfeifferNext: Daniel Pfeiffer
Message 7 of 11 in “Compiling git with makepp patch”
  1. Daniel PfeifferAug 22, 2010
  2. Thomas RastAug 23, 2010
  3. Jakub NarebskiAug 23, 2010
  4. Daniel PfeifferAug 25, 2010
  5. Ævar Arnfjörð BjarmasonAug 23, 2010
  6. Daniel PfeifferAug 25, 2010
  7. Jonathan NiederAug 24, 2010
  8. Daniel PfeifferAug 25, 2010
  9. Andreas SchwabAug 25, 2010
  10. Junio C HamanoAug 25, 2010
  11. Jonathan NiederAug 26, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.