[asterisk-dev] [asterisk-commits] file: trunk r89394 - in /trunk: ./ include/asterisk/

Joshua Colp jcolp at digium.com
Sun Nov 18 06:18:27 CST 2007

> in my opinion these autoconf checks are completely overkill: you
> are just replacing a macro name with another one, and hiding to the
> programmer the (trivial) logic behind that particular choice.
> autoconf makes sense for things you cannot do from the preprocessor,
> such as passing information back to the Makefile, checking the
> location of a file or the availability of a C symbol or the number
> of arguments in a function.

In this case on Linux PTHREAD_MUTEX_RECURSIVE_NP was actually an enum, not a #define which caused your check in lock.h to fail and mutex locks to NOT get initialized as recursive causing Asterisk to deadlock upon startup on Linux platforms. If you want to try to change it back into preprocessor logic feel free to.

Joshua Colp
Software Developer
Digium, Inc.

More information about the asterisk-dev mailing list