Support POSIX semaphores on Linux. This configure test must run before auto/make, because it adds library. auto/unix was placed after auto/make just for historical reasons. Patch by Denis F. Latypoff
diff --git a/auto/configure b/auto/configure index 8ee1c80..8ef3a9a 100755 --- a/auto/configure +++ b/auto/configure
@@ -53,6 +53,7 @@ if [ "$NGX_PLATFORM" != win32 ]; then . auto/os/features . auto/threads + . auto/unix fi . auto/modules @@ -99,10 +100,6 @@ . auto/lib/make . auto/install -if [ "$NGX_PLATFORM" != win32 ]; then - . auto/unix -fi - # STUB . auto/stubs
diff --git a/auto/unix b/auto/unix index 669314b..502c27e 100755 --- a/auto/unix +++ b/auto/unix
@@ -246,6 +246,19 @@ . auto/feature +if [ $ngx_found = no ]; then + + # Linux has POSIX semaphores in libpthread + ngx_feature="POSIX semaphores in libpthread" + ngx_feature_libs=-lpthread + . auto/feature + + if [ $ngx_found = yes ]; then + CORE_LIBS="$CORE_LIBS -lpthread" + fi +fi + + ngx_feature="struct msghdr.msg_control" ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" ngx_feature_run=no