Re: [PATCH] Define a version of lstat(2) with posix semantics
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Mar 20, 2009, 13:52 UTC
- Message-ID
- <alpine.DEB.1.00.0903201446590.6865@intel-tinevez-2-302>
- In-Reply-To
- <81b0412b0903200639v6d99067csb7715d9a5a3f0ba4@mail.gmail.com>
Hi,
On Fri, 20 Mar 2009, Alex Riesen wrote:
Show 22 quoted lines
> 2009/3/20 Johannes Schindelin <Johannes.Schindelin@gmx.de>: > > On Fri, 20 Mar 2009, Alex Riesen wrote: > > > >> 2009/3/20 Johannes Schindelin <Johannes.Schindelin@gmx.de>: > >> > Now, we _do_ have msysGit, you _do_ have shown the capability to > >> > fix issues when they arise, so I do _not_ see any obstacle why you > >> > should not go msysGit, rather than staying with the pain of trying > >> > to stay POSIX-compatible, but not quite all the time. > >> > >> I understand. It is not pure POSIX compatibility I seek. I just can't > >> use MinGW port, because I absolutely must use the cygwin environment > >> (for "hysterical" reasons) and they don't play well together (tried, > >> yes. Conflicting libraries, but you already know that). > > > > Maybe we can work on those conflicting libraries? After all, we do > > have a "rebase.exe" tool now (for all those as puzzled by the naming > > as I was: the rebase.exe tool can shift the memory range used by a > > .dll so that it does not overlap with that one of another .dll). > > As long as they can be made to coexist I'm fine. Wasn't the problem that > MinGW/MSYS used cygwin1.dll if it were in PATH? Or was it something else > with their supporting libraries?
I think it is the fact that msys-1.0.dll is a stripped-down fork of cygwin1.dll.
It is needed to run shell and perl scripts.
(Unfortunately, a few important parts of Git are still implemented as shell scripts: bisect, pull and rebase being the most obvious to me, but repack, stash and submodule are not too unimportant, either.)
> My other problem is that the cygwin programs, and the worst of all - a > proprietary compiler based on cygwin, must be in PATH. AFAIR, the > presence of cygwin in PATH broken shell scripting.
If it is a PATH issue, then it should be fixable by teaching msysGit to prepend $GIT_ROOT/bin and $GIT_ROOT/libexec/git-core to the PATH, but AFAIR we already do that.
*clicketyclick*
Yep, from reading setup_path() in exec_cmd.c, it appears that we prepend the PATH correctly.
Traditionally, we did have problems with Cygwin, that is correct, but I think with your help we can resolve the interaction issues.
Ciao, Dscho