| patch reported upstream at the mailing list. |
| mail reference is: http://marc.info/?l=git&m=126813299716136&w=2 |
| |
| --- builtin/upload-archive.c |
| +++ builtin/upload-archive.c |
| @@ -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) |
| --- daemon.c |
| +++ daemon.c |
| @@ -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 */ |
| } |
| --- git-compat-util.h |
| +++ git-compat-util.h |
| @@ -93,7 +93,9 @@ |
| #include <utime.h> |
| #ifndef __MINGW32__ |
| #include <sys/wait.h> |
| +#ifndef __INTERIX |
| #include <sys/poll.h> |
| +#endif |
| #include <sys/socket.h> |
| #include <sys/ioctl.h> |
| #ifndef NO_SYS_SELECT_H |
| @@ -104,7 +106,11 @@ |
| #include <arpa/inet.h> |
| #include <netdb.h> |
| #include <pwd.h> |
| +#ifndef __INTERIX |
| #include <inttypes.h> |
| +#else |
| +#include <stdint.h> |
| +#endif |
| #if defined(__CYGWIN__) |
| #undef _XOPEN_SOURCE |
| #include <grp.h> |
| --- upload-pack.c |
| +++ upload-pack.c |
| @@ -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) |