Re: [PATCH 02/40] Compile some programs only conditionally.
- From
Johannes Sixt <johannes.sixt@telecom.at>
- Date
- Feb 28, 2008, 20:30 UTC
- Message-ID
- <200802282130.10225.johannes.sixt@telecom.at>
- In-Reply-To
- <alpine.LSU.1.00.0802281146050.22527@racer.site>
On Thursday 28 February 2008 12:57, Johannes Schindelin wrote:
Show 18 quoted lines
> Hi, > > On Wed, 27 Feb 2008, Johannes Sixt wrote: > > On MinGW, we won't compile some programs. > > This explanation is good (even if I recall that we compile git-daemon.exe > just fine now). > > > @@ -264,7 +263,7 @@ PROGRAMS = \ > > git-update-server-info$X \ > > git-upload-pack$X \ > > git-pack-redundant$X git-var$X \ > > - git-merge-tree$X git-imap-send$X \ > > + git-merge-tree$X \ > > We do not compile git-imap-send because MinGW lacks socketpair() and > getpass(). Why not say it explicitely, and have a NO_SOCKETPAIR variable? > Likewise, for git-daemon we should say NO_SYSLOG.
Where are NO_WNOHANG, NO_GETPASS, NO_SELECT, NO_SIGCHLD, NO_EXECVE etc in your list? A condition on MINGW32 is certainly sufficient.
> > +ifndef NO_EXTRA_PROGRAMS > > The name NO_EXTRA_PROGRAMS is definitely not illustrating the reasons why > we exclude those programs, so I'd rather not have this patch as-is.
I agree.
> NOTE: I think that both programs are fixable, but only git-daemon is > important enough that I would like to see patch of the "daemon" branch in > 4msysgit.git cherry picked into this series (maybe we should implement a > compat/syslog.c using the ReportEvent() function of the win32 API?).
openlog() etc. is only one problem in git-daemon. It also depends on SIGCHLD, a non-blocking waitpid, and a lot more. The patch that is in 4msysgit.git allows only a single connection, IIRC, after which it terminates. But I also think that git-daemon can be made more complete on Windows, but it certainly requires a major surgery.
-- Hannes