diff -ru git-1.6.6.1.orig/builtin-upload-archive.c git-1.6.6.1/builtin-upload-archive.c --- git-1.6.6.1.orig/builtin-upload-archive.c 2010-03-09 10:51:28 +0100 +++ git-1.6.6.1/builtin-upload-archive.c 2010-03-09 11:06:45 +0100 @@ -132,8 +132,9 @@ packet_flush(1); while (1) { - struct pollfd pfd[2]; int status; +#ifndef __INTERIX + struct pollfd pfd[2]; pfd[0].fd = fd1[0]; pfd[0].events = POLLIN; @@ -156,6 +157,8 @@ if (process_input(pfd[0].fd, 1)) continue; +#endif + if (waitpid(writer, &status, 0) < 0) error_clnt("%s", lostchild); else if (!WIFEXITED(status) || WEXITSTATUS(status) > 0) diff -ru git-1.6.6.1.orig/daemon.c git-1.6.6.1/daemon.c --- git-1.6.6.1.orig/daemon.c 2010-03-09 10:51:28 +0100 +++ git-1.6.6.1/daemon.c 2010-03-09 11:00:50 +0100 @@ -14,6 +14,8 @@ #define NI_MAXSERV 32 #endif +#ifndef __INTERIX /* not available on interix! */ + static int log_syslog; static int verbose; static int reuseaddr; @@ -922,8 +924,13 @@ return service_loop(socknum, socklist); } +#endif /* __INTERIX */ + int main(int argc, char **argv) { +#ifdef __INTERIX + die("not implemented on interix!"); +#else /* !__INTERIX */ int listen_port = 0; char *listen_addr = NULL; int inetd_mode = 0; @@ -1121,4 +1128,5 @@ store_pid(pid_file); return serve(listen_addr, listen_port, pass, gid); +#endif /* __INTERIX */ } diff -ru git-1.6.6.1.orig/git-compat-util.h git-1.6.6.1/git-compat-util.h --- git-1.6.6.1.orig/git-compat-util.h 2010-03-09 10:51:29 +0100 +++ git-1.6.6.1/git-compat-util.h 2010-03-09 10:53:59 +0100 @@ -93,7 +93,9 @@ #include #ifndef __MINGW32__ #include +#ifndef __INTERIX #include +#endif #include #include #ifndef NO_SYS_SELECT_H @@ -104,7 +106,11 @@ #include #include #include +#ifndef __INTERIX #include +#else +#include +#endif #if defined(__CYGWIN__) #undef _XOPEN_SOURCE #include diff -ru git-1.6.6.1.orig/upload-pack.c git-1.6.6.1/upload-pack.c --- git-1.6.6.1.orig/upload-pack.c 2010-03-09 10:51:33 +0100 +++ git-1.6.6.1/upload-pack.c 2010-03-09 10:58:02 +0100 @@ -150,6 +150,7 @@ static void create_pack_file(void) { +#ifndef __INTERIX struct async rev_list; struct child_process pack_objects; int create_full_pack = (nr_our_refs == want_obj.nr && !have_obj.nr); @@ -328,6 +329,9 @@ fail: send_client_data(3, abort_msg, sizeof(abort_msg)); die("git upload-pack: %s", abort_msg); +#else /* __INTERIX */ + die("git upload-pack: not implemented on interix!"); +#endif /* __INTERIX */ } static int got_sha1(char *hex, unsigned char *sha1)