blob: 37420e3d61eceaabccbc83408ad27aea5f35752b [file] [log] [blame]
Igor Sysoev415b1ce2004-06-17 17:18:53 +00001
Igor Sysoevff8da912004-09-29 16:00:49 +00002# Copyright (C) Igor Sysoev
3
4
Igor Sysoevc0edbcc2004-10-21 15:34:38 +00005echo $ngx_n "checking for $ngx_feature ...$ngx_c"
6
7cat << END >> $NGX_AUTOCONF_ERR
8
9----------------------------------------
10checking for $ngx_feature
11
12END
Igor Sysoev415b1ce2004-06-17 17:18:53 +000013
14ngx_found=no
15
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000016if test -n "$ngx_feature_name"; then
Igor Sysoevac72bd12006-05-04 15:32:46 +000017 ngx_have_feature=`echo $ngx_feature_name \
18 | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ`
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000019fi
Igor Sysoev415b1ce2004-06-17 17:18:53 +000020
21cat << END > $NGX_AUTOTEST.c
22
23#include <sys/types.h>
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000024$NGX_INCLUDE_UNISTD_H
25$ngx_feature_incs
Igor Sysoev415b1ce2004-06-17 17:18:53 +000026
27int main() {
28 $ngx_feature_test;
29 return 0;
30}
31
32END
33
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000034
Igor Sysoevd3283ff2005-12-05 13:18:09 +000035ngx_test="$CC $CC_TEST_FLAGS $CC_AUX_FLAGS \
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000036 -o $NGX_AUTOTEST $NGX_AUTOTEST.c $NGX_LD_OPT $ngx_feature_libs"
Igor Sysoev1b735832004-11-11 14:07:14 +000037
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000038eval "$ngx_test >> $NGX_AUTOCONF_ERR 2>&1"
39
Igor Sysoev415b1ce2004-06-17 17:18:53 +000040
41if [ -x $NGX_AUTOTEST ]; then
42
Igor Sysoev13c68742006-03-10 12:51:52 +000043 case "$ngx_feature_run" in
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000044
Igor Sysoev13c68742006-03-10 12:51:52 +000045 yes)
Igor Sysoev2bdefc12006-09-18 12:27:33 +000046 # /bin/sh is used to intercept "Killed" or "Abort trap" messages
47 if /bin/sh $NGX_AUTOTEST > /dev/null 2>&1; then
Igor Sysoev13c68742006-03-10 12:51:52 +000048 echo " found"
49 ngx_found=yes
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000050
Igor Sysoev13c68742006-03-10 12:51:52 +000051 if test -n "$ngx_feature_name"; then
52 have=$ngx_have_feature . auto/have
53 fi
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000054
Igor Sysoev13c68742006-03-10 12:51:52 +000055 else
56 echo " found but is not working"
57 fi
58 ;;
Igor Sysoev415b1ce2004-06-17 17:18:53 +000059
Igor Sysoev13c68742006-03-10 12:51:52 +000060 bug)
Igor Sysoev2bdefc12006-09-18 12:27:33 +000061 # /bin/sh is used to intercept "Killed" or "Abort trap" messages
62 if /bin/sh $NGX_AUTOTEST > /dev/null 2>&1; then
Igor Sysoev13c68742006-03-10 12:51:52 +000063 echo " not found"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000064
Igor Sysoev13c68742006-03-10 12:51:52 +000065 else
66 echo " found"
67 ngx_found=yes
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000068
Igor Sysoev13c68742006-03-10 12:51:52 +000069 if test -n "$ngx_feature_name"; then
70 have=$ngx_have_feature . auto/have
71 fi
72 fi
73 ;;
74
75 *)
76 echo " found"
77 ngx_found=yes
78
79 if test -n "$ngx_feature_name"; then
80 have=$ngx_have_feature . auto/have
81 fi
82 ;;
83
84 esac
Igor Sysoev415b1ce2004-06-17 17:18:53 +000085
86else
87 echo " not found"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000088
89 echo "----------" >> $NGX_AUTOCONF_ERR
90 cat $NGX_AUTOTEST.c >> $NGX_AUTOCONF_ERR
91 echo "----------" >> $NGX_AUTOCONF_ERR
92 echo $ngx_test >> $NGX_AUTOCONF_ERR
93 echo "----------" >> $NGX_AUTOCONF_ERR
Igor Sysoev415b1ce2004-06-17 17:18:53 +000094fi
95
96rm $NGX_AUTOTEST*