conf revision e18a033b
1
2# Copyright (C) Igor Sysoev
3# Copyright (C) Nginx, Inc.
4
5
6if [ $NGX_LIBATOMIC != YES ]; then
7
8    have=NGX_HAVE_LIBATOMIC . auto/have
9    CORE_INCS="$CORE_INCS $NGX_LIBATOMIC/src"
10    LINK_DEPS="$LINK_DEPS $NGX_LIBATOMIC/src/libatomic_ops.a"
11    CORE_LIBS="$CORE_LIBS $NGX_LIBATOMIC/src/libatomic_ops.a"
12
13else
14
15    ngx_feature="atomic_ops library"
16    ngx_feature_name=NGX_HAVE_LIBATOMIC
17    ngx_feature_run=yes
18    ngx_feature_incs="#define AO_REQUIRE_CAS
19                      #include <atomic_ops.h>"
20    ngx_feature_path=
21    ngx_feature_libs="-latomic_ops"
22    ngx_feature_test="long  n = 0;
23                      if (!AO_compare_and_swap(&n, 0, 1))
24                          return 1;
25                      if (AO_fetch_and_add(&n, 1) != 1)
26                          return 1;
27                      if (n != 2)
28                          return 1;
29                      AO_nop();"
30    . auto/feature
31
32    if [ $ngx_found = yes ]; then
33        CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
34    else
35
36cat << END
37
38$0: error: libatomic_ops library was not found.
39
40END
41        exit 1
42    fi
43fi
44