Re: Windows support
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jul 26, 2007, 15:43 UTC
- Message-ID
- <Pine.LNX.4.64.0707261638100.14781@racer.site>
- In-Reply-To
- <fcaeb9bf0707260807u476719e3rec2dcf5f780013c0@mail.gmail.com>
Hi,
On Thu, 26 Jul 2007, Nguyen Thai Ngoc Duy wrote:
Show 6 quoted lines
> I make MinGW busybox part of git for some reasons: > > - Making a full MinGW busybox would take lots of time. I don't need > busybox for Windows. What I need is a shell and enough POSIX utilities > to run git shell scripts without any dependencies. Windows users > (including myself when I have to use Windows) hate dependencies.
I think that if you succeed to compile ash on MinGW, the rest is easy.
> - I don't want MinGW busybox to be used outside of git (if it is > installed separated from git), there are cygwin and msys already. I > don't want to compete them. And I don't like conflicts (not sure > though) because you have multiple UNIX emulations on the same system.
But you'd be my hero.
Installing Cygwin is often overkill if all I need is just a tiny shell with just enough POSIX tools to run my scripts.
Installing MinGW is painful. Not because of MinGW, but because there is no single installer for all I want. You need to install MinGW, MSYS, MSYS DTK, iconv, bash (because the default is to old), etc. etc.
With busybox it would be busybox.exe.
Show 6 quoted lines
> - Making ash part of git has an advantage that you could tune the > shell to fit git. Earlier you had to replace find/sort with > /usr/bin/find and /usr/bin/sort in git scripts to avoid Windows > alternatives. I don't like that. If you have control over the shell, > you could make it ignore whatever program out there and use your own > ones. This one is not a strong point though.
I doubt that this is useful. We do want to support the other systems as well, so we have to kinda stick with the available workarounds.
> - MinGW busybox (or gitbox as I call it now) utilizes compat/mingw.c > and other stuff like run-command.c... Making it separate (as source > code) duplicates code for nothing.
It is not duplication. It is forking. Which is a good thing.
> - If you meant separating from git.exe binary, not from source code, > then it's ok.
Yes. Although I see your point in making it a builtin "git-ash" that can be called without an extra fork(), using beginthread instead.
Ciao, Dscho