xref: /unit/auto/options (revision 235:467cff8f6def)
1
2# Copyright (C) Igor Sysoev
3# Copyright (C) Valentin V. Bartenev
4# Copyright (C) NGINX, Inc.
5
6
7NXT_CONFIGURE_OPTIONS=
8NXT_CFLAGS=
9NXT_CC_OPT=
10NXT_LD_OPT=
11
12NXT_BUILD_DIR=build
13NXT_PREFIX=
14
15NXT_DEBUG=NO
16
17NXT_INET6=YES
18NXT_UNIX_DOMAIN=YES
19
20NXT_REGEX=NO
21NXT_PCRE=NO
22
23NXT_SSLTLS=NO
24NXT_OPENSSL=NO
25NXT_GNUTLS=NO
26NXT_CYASSL=NO
27NXT_POLARSSL=NO
28
29NXT_TEST_BUILD_EPOLL=NO
30NXT_TEST_BUILD_EVENTPORT=NO
31NXT_TEST_BUILD_DEVPOLL=NO
32NXT_TEST_BUILD_POLLSET=NO
33
34NXT_TEST_BUILD_FREEBSD_SENDFILE=NO
35NXT_TEST_BUILD_LINUX_SENDFILE=NO
36NXT_TEST_BUILD_MACOSX_SENDFILE=NO
37NXT_TEST_BUILD_SOLARIS_SENDFILEV=NO
38NXT_TEST_BUILD_AIX_SEND_FILE=NO
39NXT_TEST_BUILD_HPUX_SENDFILE=NO
40
41NXT_LIB_UNIT_TEST=NO
42
43for nxt_option
44do
45    case "$nxt_option" in
46        -*=*) value=`$echo "$nxt_option" | sed -e 's/[-_a-zA-Z0-9]*=//'`     ;;
47           *) value="" ;;
48    esac
49
50    case "$nxt_option" in
51        --cc=*)                          CC="$value"                         ;;
52        --cc-opt=*)                      NXT_CC_OPT="$value"                 ;;
53        --ld-opt=*)                      NXT_LD_OPT="$value"                 ;;
54
55        --build-dir=*)                   NXT_BUILD_DIR="$value"              ;;
56
57        --prefix=*)                      NXT_PREFIX="$value"                 ;;
58        --pid=*)                         NXT_PID="$value"                    ;;
59        --log=*)                         NXT_LOG="$value"                    ;;
60        --modules=*)                     NXT_MODULES="$value"                ;;
61
62        --control=*)                     NXT_CONTROL="$value"                ;;
63
64        --user=*)                        NXT_USER="$value"                   ;;
65        --group=*)                       NXT_GROUP="$value"                  ;;
66
67        --debug)                         NXT_DEBUG=YES                       ;;
68
69        --no-ipv6)                       NXT_INET6=NO                        ;;
70        --no-unix-sockets)               NXT_UNIX_DOMAIN=NO                  ;;
71
72        --pcre)                          NXT_PCRE=YES                        ;;
73
74        --ssltls)                        NXT_SSLTLS=YES                      ;;
75        --openssl)                       NXT_OPENSSL=YES                     ;;
76        --gnutls)                        NXT_GNUTLS=YES                      ;;
77        --cyassl)                        NXT_CYASSL=YES                      ;;
78        --polarssl)                      NXT_POLARSSL=YES                    ;;
79
80        --test-build-epoll)              NXT_TEST_BUILD_EPOLL=YES            ;;
81        --test-build-eventport)          NXT_TEST_BUILD_EVENTPORT=YES        ;;
82        --test-build-devpoll)            NXT_TEST_BUILD_DEVPOLL=YES          ;;
83        --test-build-pollset)            NXT_TEST_BUILD_POLLSET=YES          ;;
84
85        --test-build-freebsd-sendfile)   NXT_TEST_BUILD_FREEBSD_SENDFILE=YES ;;
86        --test-build-linux-sendfile)     NXT_TEST_BUILD_LINUX_SENDFILE=YES   ;;
87        --test-build-solaris-sendfilev)  NXT_TEST_BUILD_SOLARIS_SENDFILEV=YES ;;
88        --test-build-macosx-sendfile)    NXT_TEST_BUILD_MACOSX_SENDFILE=YES  ;;
89        --test-build-aix-send_file)      NXT_TEST_BUILD_AIX_SEND_FILE=YES    ;;
90        --test-build-hpux-sendfile)      NXT_TEST_BUILD_HPUX_SENDFILE=YES    ;;
91
92        --tests)                         NXT_LIB_UNIT_TEST=YES               ;;
93
94        *)
95            $echo
96            $echo $0: error: invalid option \"$nxt_option\".
97            $echo Run \"$0 --help\" to see available options.
98            $echo
99            exit 1
100        ;;
101    esac
102
103    nxt_opt=`$echo $nxt_option | sed -e "s/\(--[^=]*=\)\(.* .*\)/\1'\2'/"`
104
105    NXT_CONFIGURE_OPTIONS="$NXT_CONFIGURE_OPTIONS $nxt_opt"
106
107done
108
109
110case "$NXT_PREFIX" in
111    ""|*/)  ;;
112     *)  NXT_PREFIX="$NXT_PREFIX/"  ;;
113esac
114
115case "$NXT_PID" in
116    /*)  ;;
117     *)  NXT_PID="$NXT_PREFIX$NXT_PID"  ;;
118esac
119
120case "$NXT_LOG" in
121    /*)  ;;
122     *)  NXT_LOG="$NXT_PREFIX$NXT_LOG"  ;;
123esac
124
125case "$NXT_MODULES" in
126    ""|*/)  ;;
127     *)  NXT_MODULES="$NXT_MODULES/"  ;;
128esac
129
130case "$NXT_MODULES" in
131    /*)  ;;
132     *)  NXT_MODULES="$NXT_PREFIX$NXT_MODULES"  ;;
133esac
134
135case "$NXT_CONTROL" in
136    unix:/*)  ;;
137    unix:*)   NXT_CONTROL="unix:$NXT_PREFIX${NXT_CONTROL##unix:}" ;;
138    *)        ;;
139esac
140