Welcome to mirror list, hosted at ThFree Co, Russian Federation.

conf « os « auto - github.com/nginx/nginx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8c4739fbf15b2b79966dd58bd92b4463ccf2e076 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164

# Copyright (C) Igor Sysoev


if test -z "$NGX_PLATFORM"; then
    echo "checking for OS"

    NGX_SYSTEM=`uname -s 2>/dev/null`
    NGX_RELEASE=`uname -r 2>/dev/null`
    NGX_MACHINE=`uname -m 2>/dev/null`

    echo " + $NGX_SYSTEM $NGX_RELEASE $NGX_MACHINE"

    NGX_PLATFORM="$NGX_SYSTEM:$NGX_RELEASE:$NGX_MACHINE";

else
    echo "building for $NGX_PLATFORM"
fi

case "$NGX_PLATFORM" in

    FreeBSD:* | DragonFly:*)
        . auto/os/freebsd
    ;;

    Linux:*)
        . auto/os/linux
    ;;

    SunOS:*)
        . auto/os/solaris
    ;;

    win32)
        . auto/os/win32
    ;;

    *)
        CORE_INCS="$UNIX_INCS"
        CORE_DEPS="$UNIX_DEPS $POSIX_DEPS"
        CORE_SRCS="$UNIX_SRCS"
    ;;

esac


case "$NGX_MACHINE" in

     i386|i686|i86pc|amd64)
         have=NGX_HAVE_NONALIGNED . auto/have
     ;;

esac


if [ "$NGX_PLATFORM" != win32 ]; then

     NGX_USER=${NGX_USER:-nobody}

    if [ -z "$NGX_GROUP" -a $NGX_USER = nobody ] ; then
       if grep nobody /etc/group 2>&1 >/dev/null; then
           echo "checking for nobody group ... found"
           NGX_GROUP=nobody
       else
           echo "checking for nobody group ... not found"

           if grep nogroup /etc/group 2>&1 >/dev/null; then
               echo "checking for nogroup group ... found"
               NGX_GROUP=nogroup
           else 
               echo "checking for nogroup group ... not found"
               NGX_GROUP=nobody
           fi
       fi

    else
        NGX_GROUP=$NGX_USER
    fi


    ngx_feature="poll()"
    ngx_feature_name=
    ngx_feature_run=no
    ngx_feature_incs="#include <poll.h>"
    ngx_feature_libs=
    ngx_feature_test="int  n, dp; struct pollfd  pl;
                      dp = 0;
                      pl.fd = 0;
                      pl.events = 0;
                      pl.revents = 0;
                      n = poll(&pl, 1, 0)"
    . auto/feature

    if [ $ngx_found = no ]; then
        EVENT_POLL=NONE
    fi


    ngx_feature="/dev/poll"
    ngx_feature_name="NGX_HAVE_DEVPOLL"
    ngx_feature_run=no
    ngx_feature_incs="#include <sys/devpoll.h>"
    ngx_feature_libs=
    ngx_feature_test="int  n, dp; struct dvpoll  dvp;
                      dp = 0;
                      dvp.dp_fds = NULL;
                      dvp.dp_nfds = 0;
                      dvp.dp_timeout = 0;
                      n = ioctl(dp, DP_POLL, &dvp)"
    . auto/feature

    if [ $ngx_found = yes ]; then
        CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS"
        EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE"
        EVENT_FOUND=YES
    fi


    if test -z "$NGX_KQUEUE_CHECKED"; then
        ngx_feature="kqueue"
        ngx_feature_name="NGX_HAVE_KQUEUE"
        ngx_feature_run=no
        ngx_feature_incs="#include <sys/event.h>"
        ngx_feature_libs=
        ngx_feature_test="int kq; kq = kqueue()"
        . auto/feature

        if [ $ngx_found = yes ]; then

            have=NGX_HAVE_CLEAR_EVENT . auto/have
            EVENT_MODULES="$EVENT_MODULES $KQUEUE_MODULE"
            CORE_SRCS="$CORE_SRCS $KQUEUE_SRCS"
            EVENT_FOUND=YES

            ngx_feature="kqueue's NOTE_LOWAT"
            ngx_feature_name="NGX_HAVE_LOWAT_EVENT"
            ngx_feature_run=no
            ngx_feature_incs="#include <sys/event.h>"
            ngx_feature_libs=
            ngx_feature_test="struct kevent  kev;
                              kev.fflags = NOTE_LOWAT;"
            . auto/feature
        fi
    fi

    if [ "$NGX_SYSTEM" = "NetBSD" ]; then

        # NetBSD 2.0 incompatibly defines kevent.udata as "intptr_t"

        cat << END >> $NGX_AUTO_CONFIG_H

#define NGX_KQUEUE_UDATA_T

END

    else
        cat << END >> $NGX_AUTO_CONFIG_H

#define NGX_KQUEUE_UDATA_T  (void *)

END

    fi
fi