All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Shawn O. Pearce" <spearce@spearce.org>
To: "Murphy, John" <john.murphy@bankofamerica.com>
Cc: Abhijit Menon-Sen <ams@toroid.org>, git@vger.kernel.org
Subject: Re: [PATCH] git-gui: Look for gitk in $PATH, not $LIBEXEC/git-core
Date: Tue, 29 Jul 2008 09:48:56 -0700	[thread overview]
Message-ID: <20080729164856.GB1730@spearce.org> (raw)
In-Reply-To: <80915B5E107BED488500050294C6F48712137A@ex2k.bankofamerica.com>

"Murphy, John" <john.murphy@bankofamerica.com> wrote:
> I have rebuilt git-gui with version 0.10.2.18.gc629 it is still not finding gitk.
> I have done some debugging in proc _which
> I have found the issue is with the following line:
> 
> set p [file join $p $what$_search_exe]
> 
> The variable $p = gitk.exe
> 
> And there is no such animal
> 
> When I copy gitk to gitk.exe in /usr/local/git/bin, it works fine.
> 
> So, not sure if this is a git issue or a git-gui issue.

Since you are new to the list, I will politely point out we do
not top-post.  (http://www.html-faq.com/etiquette/?toppost) and
much prefer inline posting.  (Yea, I know, its Outlook.  Switch to
text only message format and then edit inline in the reply.)

This is definately a git-gui bug.  _which should search not just
.exe extensions, but also the base name itself in case it is a
shell script or perl script.  git-gui already has special cases
to handle executing those through their interpreters even on a
pure Win32 Tcl/Tk process.

Its wrong to install gitk as gitk.exe, it is not a Win32 executable
process and the Windows kernel cannot load it into memory on its own.

 
> From: spearce@spearce.org [mailto:spearce@spearce.org] 
> Abhijit Menon-Sen <ams@toroid.org> wrote:
> > At 2008-07-24 09:01:48 -0400, john.murphy@bankofamerica.com wrote:
> > >
> > > I presume this was just an oversight when git- commands were removed
> > > from the bin directory.
> > 
> > Looks like it. The following patch fixes it for me. Does it work for
> > you on Windows?
> 
> Thanks.
> 
> This patch is obviously correct on any platform except Mac OS X.
> On Mac OS X it gets confusing because [info nameofexecutable] is
> a wrapper .app which loads its own main script.  That main script
> needs to use the gitk location it receives from git-gui, and not
> the location it computes from gitexecdir.  So I'm following up
> your patch with this:
> 
> diff --git a/macosx/AppMain.tcl b/macosx/AppMain.tcl
> index 41ca08e..ddbe633 100644
> --- a/macosx/AppMain.tcl
> +++ b/macosx/AppMain.tcl
> @@ -7,7 +7,7 @@ if {[string first -psn [lindex $argv 0]] == 0} {
>  }
>  
>  if {[file tail [lindex $argv 0]] eq {gitk}} {
> -	set argv0 [file join $gitexecdir gitk]
> +	set argv0 [lindex $argv 0]
>  	set AppMain_source $argv0
>  } else {
>  	set argv0 [file join $gitexecdir [file tail [lindex $argv 0]]]

-- 
Shawn.

  reply	other threads:[~2008-07-29 16:50 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-24 13:01 Git Gui bug calling gitk Murphy, John
2008-07-24 13:28 ` [PATCH] git-gui: Look for gitk in $PATH, not $LIBEXEC/git-core Abhijit Menon-Sen
2008-07-25 22:05   ` Shawn O. Pearce
2008-07-29 12:40     ` Murphy, John
2008-07-29 16:48       ` Shawn O. Pearce [this message]
2008-07-30  5:42         ` Shawn O. Pearce

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080729164856.GB1730@spearce.org \
    --to=spearce@spearce.org \
    --cc=ams@toroid.org \
    --cc=git@vger.kernel.org \
    --cc=john.murphy@bankofamerica.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.