annotate auto/lib/libatomic/conf @ 660:d0f7a625f27c NGINX_1_1_14

nginx 1.1.14 *) Feature: multiple "limit_req" limits may be used simultaneously. *) Bugfix: in error handling while connecting to a backend. Thanks to Piotr Sikora. *) Bugfix: in AIO error handling on FreeBSD. *) Bugfix: in the OpenSSL library initialization. *) Bugfix: the "proxy_redirect" directives might not be correctly inherited. *) Bugfix: memory leak during reconfiguration if the "pcre_jit" directive was used.
author Igor Sysoev <http://sysoev.ru>
date Mon, 30 Jan 2012 00:00:00 +0400
parents 25255878df91
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
554
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
1
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
660
d0f7a625f27c nginx 1.1.14
Igor Sysoev <http://sysoev.ru>
parents: 556
diff changeset
3 # Copyright (C) Nginx, Inc.
554
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
4
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
5
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
6 if [ $NGX_LIBATOMIC != YES ]; then
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
7
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
8 have=NGX_HAVE_LIBATOMIC . auto/have
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
9 CORE_INCS="$CORE_INCS $NGX_LIBATOMIC/src"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
10 LINK_DEPS="$LINK_DEPS $NGX_LIBATOMIC/src/libatomic_ops.a"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
11 CORE_LIBS="$CORE_LIBS $NGX_LIBATOMIC/src/libatomic_ops.a"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
12
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
13 else
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
14
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
15 ngx_feature="atomic_ops library"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
16 ngx_feature_name=NGX_HAVE_LIBATOMIC
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
17 ngx_feature_run=yes
556
25255878df91 nginx 0.8.30
Igor Sysoev <http://sysoev.ru>
parents: 554
diff changeset
18 ngx_feature_incs="#define AO_REQUIRE_CAS
25255878df91 nginx 0.8.30
Igor Sysoev <http://sysoev.ru>
parents: 554
diff changeset
19 #include <atomic_ops.h>"
554
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
20 ngx_feature_path=
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
21 ngx_feature_libs="-latomic_ops"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
22 ngx_feature_test="long n = 0;
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
23 if (!AO_compare_and_swap(&n, 0, 1))
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
24 return 1;
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
25 if (AO_fetch_and_add(&n, 1) != 1)
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
26 return 1;
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
27 if (n != 2)
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
28 return 1;
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
29 AO_nop();"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
30 . auto/feature
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
31
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
32 if [ $ngx_found = yes ]; then
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
33 CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
34 else
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
35
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
36 cat << END
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
37
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
38 $0: error: libatomic_ops library was not found.
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
39
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
40 END
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
41 exit 1
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
42 fi
5c576ea5dbd9 nginx 0.8.29
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
43 fi