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

Re: [PATCH 5/9 v2] Allow the built-in exec path to be relative to the command invocation path

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 28, 2008, 06:42 UTC
Message-ID
<7v1w1ev7ah.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<7v3aly5zz3.fsf@gitster.siamese.dyndns.org>
Junio C Hamano <gitster@pobox.com> writes:
Show 18 quoted lines
> Johannes Sixt <johannes.sixt@telecom.at> writes:
>
>> On Donnerstag, 24. Juli 2008, Junio C Hamano wrote:
>>> Johannes Sixt <johannes.sixt@telecom.at> writes:
>>> > It also fixes 'make install' of git-gui as well (sigh!) by not exporting
>>> > gitexecdir - assuming that Shawn applies the git-gui patch.
>>>
>>> Yeah, this seems to break the install quite badly without git-gui patch.
>>
>> If you squash this in, we don't need the git-gui patch.
>
> Thanks.
>
> I think this patch makes _more_ sense than the git-gui patch, actually.
>
> Within the context of git.git project, we would want to force the
> installation directory of git-gui portion to be consistent with the main
> project.

What I wanted to say with the above is that the main Makefile is what has its own special need from git-gui/Makefile's point of view, so passing such customization from the main Makefile makes a lot of sense.

I think this is also needed; I noticed it while trying the "build on a machine without any git installed" exercise.

diff --git a/Makefile b/Makefile
index 798a2f2..52c67c1 100644
--- a/Makefile
+++ b/Makefile
@@ -1067,7 +1067,7 @@ endif
 
 all::
 ifndef NO_TCLTK
-	$(QUIET_SUBDIR0)git-gui $(QUIET_SUBDIR1) all
+	$(QUIET_SUBDIR0)git-gui $(QUIET_SUBDIR1) gitexecdir='$(gitexec_instdir_SQ)' all
 	$(QUIET_SUBDIR0)gitk-git $(QUIET_SUBDIR1) all
 endif
 	$(QUIET_SUBDIR0)perl $(QUIET_SUBDIR1) PERL_PATH='$(PERL_PATH_SQ)' prefix='$(prefix_SQ)' all
Previous: Johannes SixtNext: Johannes Schindelin
Message 20 of 32 in “Make gitexecdir relative to $(bindir) on Windows”
  1. 0/9 Make gitexecdir relative to $(bindir) on WindowsJohannes Sixt, Jul 21, 2008
  2. 1/9 Makefile: Do not install a copy of 'git' in $(gitexecdir)Johannes Sixt, Jul 21, 2008
  3. 2/9 Makefile: Normalize $(bindir) and $(gitexecdir) before comparingJohannes Sixt, Jul 21, 2008
  4. 3/9 Record the command invocation path earlyJohannes Sixt, Jul 21, 2008
  5. 4/9 Fix relative built-in paths to be relative to the command invocationJohannes Sixt, Jul 21, 2008
  6. 5/9 Allow the built-in exec path to be relative to the command invocation pathJohannes Sixt, Jul 21, 2008
  7. 6/9 Allow add_path() to add non-existent directories to the pathJohannes Sixt, Jul 21, 2008
  8. 7/9 Windows: Make $(gitexecdir) relativeJohannes Sixt, Jul 21, 2008
  9. 8/9 Windows: Make sure argv[0] has a pathJohannes Sixt, Jul 21, 2008
  10. 9/9 Windows: Do not compile git-shellJohannes Sixt, Jul 21, 2008
  11. 10/9 git-gui: git.git now uses $(gitexec_instdir) to point to the exec-pathJohannes Sixt, Jul 21, 2008
  12. Steffen ProhaskaJul 25, 2008
  13. Junio C HamanoJul 23, 2008
  14. 5/9 Allow the built-in exec path to be relative to the command invocation pathJohannes Sixt, Jul 23, 2008
  15. Junio C HamanoJul 24, 2008
  16. Johannes SixtJul 24, 2008
  17. Junio C HamanoJul 25, 2008
  18. Johannes SixtJul 25, 2008
  19. Johannes SixtJul 25, 2008
  20. Junio C HamanoJul 28, 2008
  21. Johannes SchindelinJul 21, 2008
  22. Johannes SixtJul 22, 2008
  23. A Large Angry SCMJul 28, 2008
  24. Junio C HamanoJul 28, 2008
  25. Junio C HamanoJul 28, 2008
  26. A Large Angry SCMJul 28, 2008
  27. A Large Angry SCMJul 28, 2008
  28. A Large Angry SCMJul 28, 2008
  29. Johannes SchindelinJul 21, 2008
  30. Johannes SixtJul 22, 2008
  31. Junio C HamanoJul 23, 2008
  32. Johannes SixtJul 23, 2008

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.