libgit2/libgit2 — pull request #987 by pwkelley (2012-10-16 17:26:06+00:00)
Title: Support pthread_cond_* on Win32

This PR implements the following functions on Win32 so that libgit2 builds again on Windows with GIT_THREADS defined. Since the pack-objects work was accepted, it has been broken.

`pthread_cond_init`
`pthread_cond_destroy`
`pthread_cond_wait`
`pthread_cond_signal`

The function `pthread_cond_broadcast` is not implemented because it significantly complicates the implementation of the above four functions, and it is currently not used in libgit2.

The Win32 object backing the implementation of these 4 functions is an auto-reset event.

If we ever need to support `pthread_cond_broadcast` then we'll need to revisit this. There is full condition variable support on Vista+ but the platform target for libgit2 is currently Windows XP.