
# Copyright (C) Igor Sysoev


echo $ngx_n "checking for $ngx_feature ..." $ngx_c
echo >> $NGX_ERR
echo "checking for $ngx_feature" >> $NGX_ERR

ngx_found=no

feature=`echo $ngx_feature_name | tr '[a-z]' '[A-Z]'`

cat << END > $NGX_AUTOTEST.c

#include <sys/types.h>
$NGX_UNISTD_H
$ngx_feature_inc

int main() {
    $ngx_feature_test;
    return 0;
}

END

test="$CC_WARN $CC_TEST_FLAGS -o $NGX_AUTOTEST $NGX_AUTOTEST.c \
      $ngx_feature_libs"
eval "$test >> $NGX_ERR 2>&1"

if [ -x $NGX_AUTOTEST ]; then

    if [ $ngx_feature_run = yes ]; then
       if $NGX_AUTOTEST 2>&1 > /dev/null; then
           echo " found"
           have=HAVE_$feature . auto/have
           ngx_found=yes
       else
           echo " found but is not working"
       fi

    else
       echo " found"
       have=HAVE_$feature . auto/have
       ngx_found=yes
    fi

else
    echo " not found"
    echo "---------" >> $NGX_ERR
    cat $NGX_AUTOTEST.c >> $NGX_ERR
    echo "---------" >> $NGX_ERR
    echo $test >> $NGX_ERR
    echo "---------" >> $NGX_ERR
fi

rm $NGX_AUTOTEST*
