yaberauneya | 5ac23b1 | 2009-10-25 10:33:31 +0000 | [diff] [blame] | 1 | AC_PREREQ(2.61) |
| 2 | AC_INIT([realtime],[realtime-20090930],[ltp-results@lists.sourceforge.net]) |
| 3 | AC_CONFIG_AUX_DIR([.]) |
| 4 | AM_INIT_AUTOMAKE |
| 5 | AC_CONFIG_HEADERS([include/realtime_config.h]) |
| 6 | AC_CONFIG_FILES([ \ |
| 7 | m4/Makefile \ |
| 8 | ]) |
| 9 | AC_CHECK_HEADERS_ONCE([ \ |
| 10 | pthread.h \ |
| 11 | ]) |
| 12 | AM_CONDITIONAL(CROSS_COMPILATION, test x$cross_compiling = xyes) |
| 13 | |
| 14 | AC_CANONICAL_HOST |
| 15 | |
| 16 | AC_PROG_CC |
| 17 | # <= autoconf 2.61 doesn't have AC_PROG_AR, but 2.63 has it. Not sure about |
| 18 | # 2.62. |
| 19 | AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)]) |
| 20 | AC_PROG_AR |
| 21 | AC_PROG_RANLIB |
| 22 | |
Garrett Cooper | 7c90af2 | 2010-11-11 01:14:37 -0800 | [diff] [blame] | 23 | AC_MSG_CHECKING([Checking for __sync_add_and_fetch gcc builtin function]) |
Garrett Cooper | 08b93fd | 2010-11-16 08:58:55 -0800 | [diff] [blame^] | 24 | AC_LINK_IFELSE([ |
Garrett Cooper | 7c90af2 | 2010-11-11 01:14:37 -0800 | [diff] [blame] | 25 | #ifndef _GNU_SOURCE |
| 26 | #define _GNU_SOURCE |
| 27 | #endif |
Garrett Cooper | 08b93fd | 2010-11-16 08:58:55 -0800 | [diff] [blame^] | 28 | #include <stdlib.h> |
| 29 | int main(void) { |
Garrett Cooper | 7c90af2 | 2010-11-11 01:14:37 -0800 | [diff] [blame] | 30 | char *c; |
| 31 | return __sync_add_and_fetch(c, 1); |
Garrett Cooper | 08b93fd | 2010-11-16 08:58:55 -0800 | [diff] [blame^] | 32 | }],[has___sync_add_and_fetch=yes]) |
Garrett Cooper | 7c90af2 | 2010-11-11 01:14:37 -0800 | [diff] [blame] | 33 | if test "x$has___sync_add_and_fetch" = xyes; then |
| 34 | AC_DEFINE(HAVE___SYNC_ADD_AND_FETCH,1,[Define to 1 if you have the __sync_add_and_fetch gcc builtin function]) |
| 35 | AC_MSG_RESULT(yes) |
| 36 | else |
| 37 | AC_MSG_RESULT(no) |
| 38 | fi |
| 39 | |
yaberauneya | 5ac23b1 | 2009-10-25 10:33:31 +0000 | [diff] [blame] | 40 | REALTIME_CHECK_PRIO_INHERIT |
Garrett Cooper | 84ab820 | 2010-11-09 02:00:43 -0800 | [diff] [blame] | 41 | |
| 42 | if test "x$has_priority_inherit" = xyes; then |
| 43 | |
| 44 | AC_MSG_CHECKING([Checking for pthread mutex attr protocol functions]) |
| 45 | AC_TRY_COMPILE([ |
| 46 | #ifndef _GNU_SOURCE |
| 47 | #define _GNU_SOURCE |
| 48 | #endif |
| 49 | #include <pthread.h>],[int main(void) { |
| 50 | pthread_mutexattr_t attr; |
| 51 | (void) pthread_mutexattr_getprotocol(&attr, (void*) NULL); |
| 52 | (void) pthread_mutexattr_setprotocol(&attr, 0); |
| 53 | return 0; |
| 54 | }],[has_pthread_mutexattr_protocol_functions="yes"]) |
| 55 | fi |
| 56 | if test "x$has_pthread_mutexattr_protocol_functions" = "xyes" ; then |
| 57 | AC_DEFINE(HAS_PTHREAD_MUTEXATTR_PROTOCOL_FUNCTIONS,1,[Define to 1 if you have the pthread_mutexattr protocol APIs]) |
| 58 | AC_MSG_RESULT(yes) |
| 59 | else |
| 60 | AC_MSG_RESULT(no) |
| 61 | fi |
yaberauneya | 5ac23b1 | 2009-10-25 10:33:31 +0000 | [diff] [blame] | 62 | REALTIME_CHECK_ROBUST_APIS |
| 63 | |
| 64 | AC_OUTPUT |