blob: 482390029222ed9107bd45cc0dfca82a22e0ac18 [file] [log] [blame]
Igor Sysoevc0edbcc2004-10-21 15:34:38 +00001
2# Copyright (C) Igor Sysoev
3
4
Igor Sysoevaa828612005-02-09 14:31:07 +00005LINK="\$(CC)"
6
Igor Sysoevc0edbcc2004-10-21 15:34:38 +00007ngx_include_opt="-I "
8ngx_compile_opt="-c"
9ngx_objout="-o "
10ngx_binout="-o "
11ngx_objext="o"
12ngx_binext=
13
Igor Sysoev09c684b2005-11-09 17:25:55 +000014ngx_long_start=
15ngx_long_end=
16
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000017ngx_regex_dirsep="\/"
18ngx_dirsep='/'
19
20ngx_regex_cont=' \\\
21 '
22ngx_cont=' \
23 '
24ngx_tab=' \
25 '
26ngx_spacer=
27
Igor Sysoev09c684b2005-11-09 17:25:55 +000028ngx_long_regex_cont=$ngx_regex_cont
29ngx_long_cont=$ngx_cont
30
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000031. auto/cc/name
32
33if test -n "$CFLAGS"; then
34
35 CC_TEST_FLAGS="$CFLAGS $NGX_CC_OPT"
36
37 case $NGX_CC_NAME in
38
39 ccc)
40 # Compaq C V6.5-207
41
42 ngx_include_opt="-I"
43 ;;
44
45 esac
46
47else
48
49 case $NGX_CC_NAME in
50 gcc)
Igor Sysoeve31e90b2005-05-19 13:25:22 +000051 # gcc 2.7.2.3, 2.8.1, 2.95.4, egcs-1.1.2
52 # 3.0.4, 3.1.1, 3.2.3, 3.3.2, 3.3.3, 3.3.4, 3.4.0, 3.4.2
Igor Sysoev78452232005-10-12 13:50:36 +000053 # 4.0.0, 4.0.1, 4.1.0
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000054
55 . auto/cc/gcc
56 ;;
57
58 icc)
Igor Sysoeve31e90b2005-05-19 13:25:22 +000059 # Intel C++ compiler 7.1, 8.0, 8.1
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000060
61 . auto/cc/icc
62 ;;
63
Igor Sysoev78452232005-10-12 13:50:36 +000064 sunc)
65 # Sun C 5.7 Patch 117837-04 2005/05/11
66
67 . auto/cc/sunc
68 ;;
69
Igor Sysoevd43bee82004-11-20 19:52:20 +000070 ccc)
Igor Sysoeve31e90b2005-05-19 13:25:22 +000071 # Compaq C V6.5-207
72
73 . auto/cc/ccc
Igor Sysoevd43bee82004-11-20 19:52:20 +000074 ;;
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000075
Igor Sysoeve31e90b2005-05-19 13:25:22 +000076 acc)
77 # aCC: HP ANSI C++ B3910B A.03.55.02
78
79 . auto/cc/acc
80 ;;
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000081
Igor Sysoev1b735832004-11-11 14:07:14 +000082 msvc*)
83 # MSVC++ 6.0 SP2, MSVC++ Toolkit 2003
Igor Sysoevc0edbcc2004-10-21 15:34:38 +000084
85 . auto/cc/msvc
86 ;;
87
88 owc)
89 # Open Watcom C 1.0, 1.2
90
91 . auto/cc/owc
92 ;;
93
94 bcc)
95 # Borland C++ 5.5
96
97 . auto/cc/bcc
98 ;;
99
100 esac
101
Igor Sysoeve31e90b2005-05-19 13:25:22 +0000102 CC_TEST_FLAGS="$CC_TEST_FLAGS $NGX_CC_OPT"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000103
104fi
105
106CFLAGS="$CFLAGS $NGX_CC_OPT"
107
108
Igor Sysoevf6906042004-11-25 16:17:31 +0000109if [ "$NGX_PLATFORM" != win32 ]; then
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000110
Igor Sysoev1b735832004-11-11 14:07:14 +0000111 if test -n "$NGX_LD_OPT"; then
112 ngx_feature=--with-ld-opt=\"$NGX_LD_OPT\"
Igor Sysoevf6906042004-11-25 16:17:31 +0000113 ngx_feature_name=
Igor Sysoev1b735832004-11-11 14:07:14 +0000114 ngx_feature_run=no
115 ngx_feature_incs=
Igor Sysoev0ec09f92006-11-27 11:07:09 +0000116 ngx_feature_path=
Igor Sysoev1b735832004-11-11 14:07:14 +0000117 ngx_feature_libs=
118 ngx_feature_test=
119 . auto/feature
120
121 if [ $ngx_found = no ]; then
122 echo $0: error: the invalid value in --with-ld-opt=\"$NGX_LD_OPT\"
123 echo
124 exit 1
125 fi
126 fi
127
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000128 ngx_feature="gcc variadic macros"
Igor Sysoevf6906042004-11-25 16:17:31 +0000129 ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS"
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000130 ngx_feature_run=yes
131 ngx_feature_incs="#include <stdio.h>
132#define var(dummy, args...) sprintf(args)"
Igor Sysoev0ec09f92006-11-27 11:07:09 +0000133 ngx_feature_path=
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000134 ngx_feature_libs=
135 ngx_feature_test="char buf[30]; buf[0] = '0';
136 var(0, buf, \"%d\", 1);
137 if (buf[0] != '1') return 1"
138 . auto/feature
139
140
Igor Sysoev4959ec42005-05-23 12:07:45 +0000141 if [ "$NGX_CC_NAME" = "ccc" ]; then
Igor Sysoeve31e90b2005-05-19 13:25:22 +0000142 echo "checking for C99 variadic macros ... disabled"
143 else
144 ngx_feature="C99 variadic macros"
145 ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS"
146 ngx_feature_run=yes
147 ngx_feature_incs="#include <stdio.h>
148#define var(dummy, ...) sprintf(__VA_ARGS__)"
Igor Sysoev0ec09f92006-11-27 11:07:09 +0000149 ngx_feature_path=
Igor Sysoeve31e90b2005-05-19 13:25:22 +0000150 ngx_feature_libs=
151 ngx_feature_test="char buf[30]; buf[0] = '0';
152 var(0, buf, \"%d\", 1);
153 if (buf[0] != '1') return 1"
154 . auto/feature
155 fi
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000156
Igor Sysoevd43bee82004-11-20 19:52:20 +0000157
158# ngx_feature="inline"
Igor Sysoevf6906042004-11-25 16:17:31 +0000159# ngx_feature_name=
Igor Sysoevd43bee82004-11-20 19:52:20 +0000160# ngx_feature_run=no
161# ngx_feature_incs="int inline f(void) { return 1 }"
Igor Sysoev0ec09f92006-11-27 11:07:09 +0000162# ngx_feature_path=
Igor Sysoevd43bee82004-11-20 19:52:20 +0000163# ngx_feature_libs=
164# ngx_feature_test=
165# . auto/feature
166#
167# if [ $ngx_found = yes ]; then
168# fi
169
Igor Sysoevc0edbcc2004-10-21 15:34:38 +0000170fi