This series is actually a set of independent changes that improve the Windows port. (Except that 2/5 depends on 1/5.) 1/5 and 2/5 enable threaded code on Windows. This topic was discussed beginning of November. The change to builtin-pack-objects.c was positively commented (though not formally acked) by Nico: http://thread.gmane.org/gmane.comp.version-control.git/131998/focus=132239 3/5 removes a static dependency on shell32.dll so that startup time is reduced. It does reduce the runtime of the test suite ('make -j2 test') from 16:00min to 12:40min for me. 4/5 (the new pipe implementation) could be considered code churn. It reduces LOC, but the effect is not noticable during run-time. 5/5 (avoid "dup dance") straightens our run-command implementation a bit. It is more of the future-proofing kind because it avoids that a writable pipe end remains accidentally open in a child process, leaving the reader waiting idenfinetly. This doesn't seem to be a problem currently, though. I'm using these patches since November. Andrzej K. Haczewski (1): MSVC: Windows-native implementation for subset of Pthreads API Johannes Sixt (4): MinGW: enable pthreads Windows: boost startup by avoiding a static dependency on shell32.dll Windows: simplify the pipe(2) implementation Windows: avoid the "dup dance" when spawning a child process Makefile | 13 +++-- builtin-pack-objects.c | 31 +++++++++++-- compat/mingw.c | 80 ++++++++++++++++---------------- compat/mingw.h | 8 +++- compat/win32/pthread.c | 120 ++++++++++++++++++++++++++++++++++++++++++++++++ compat/win32/pthread.h | 68 +++++++++++++++++++++++++++ run-command.c | 71 ++++++++++++---------------- 7 files changed, 300 insertions(+), 91 deletions(-) create mode 100644 compat/win32/pthread.c create mode 100644 compat/win32/pthread.h -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html