blob: 3aa188303f8cc96d764b2a63b3e701f595559ba4 [file] [log] [blame]
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00001
2CC_WARN=$CC
Igor Sysoevdc867cd2003-12-14 20:10:27 +00003ngx_fmt_collect=yes
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00004
Igor Sysoevc0f8d912003-11-26 15:42:18 +00005# C types
6
Igor Sysoevdc867cd2003-12-14 20:10:27 +00007ngx_type="int"; . auto/types/sizeof;
8ngx_formats="%d"; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +00009
Igor Sysoevdc867cd2003-12-14 20:10:27 +000010ngx_type="long"; . auto/types/sizeof;
11ngx_formats="%ld"; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000012
Igor Sysoevdc867cd2003-12-14 20:10:27 +000013ngx_type="long long"; . auto/types/sizeof;
14ngx_formats="%lld %qd"; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000015
Igor Sysoevdc867cd2003-12-14 20:10:27 +000016ngx_type="void *"; . auto/types/sizeof; ngx_ptr_bytes=$ngx_bytes
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000017
18
Igor Sysoev7af6b162004-02-09 07:46:43 +000019# POSIX types
Igor Sysoevc0f8d912003-11-26 15:42:18 +000020
Igor Sysoevdc867cd2003-12-14 20:10:27 +000021NGX_AUTO_CONFIG="#include \"../$NGX_AUTO_CONFIG_H\""
Igor Sysoevc0f8d912003-11-26 15:42:18 +000022
Igor Sysoevdc867cd2003-12-14 20:10:27 +000023ngx_type="uint64_t"
24ngx_types="u_int64_t"; . auto/types/typedef
Igor Sysoevc0f8d912003-11-26 15:42:18 +000025
Igor Sysoev92602942004-02-05 16:58:36 +000026#ngx_type="sig_atomic_t"
27#ngx_types="int"; . auto/types/typedef
28
Igor Sysoevdc867cd2003-12-14 20:10:27 +000029ngx_type="socklen_t"
30ngx_types="uint32_t"; . auto/types/typedef
Igor Sysoevc0f8d912003-11-26 15:42:18 +000031
Igor Sysoevdc867cd2003-12-14 20:10:27 +000032ngx_type="in_addr_t"
33ngx_types="uint32_t"; . auto/types/typedef
Igor Sysoevc0f8d912003-11-26 15:42:18 +000034
Igor Sysoevdc867cd2003-12-14 20:10:27 +000035ngx_type="rlim_t"
36ngx_types="int"; . auto/types/typedef
Igor Sysoevc0f8d912003-11-26 15:42:18 +000037
38. auto/types/uintptr_t
39
40
Igor Sysoev7af6b162004-02-09 07:46:43 +000041ngx_func="sin_len"
42ngx_func_inc="#include <sys/types.h>
43#include <sys/socket.h>
44#include <netinet/in.h>"
45
46ngx_func_test="struct sockaddr_in sa; sa.sin_len = 5"
47. auto/func
48
49
Igor Sysoevc0f8d912003-11-26 15:42:18 +000050# printf() formats
51
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000052CC_WARN=$CC_STRONG
Igor Sysoevdc867cd2003-12-14 20:10:27 +000053ngx_fmt_collect=no
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000054
Igor Sysoevdc867cd2003-12-14 20:10:27 +000055ngx_fmt_name=OFF_T_FMT; ngx_type="off_t"; . auto/types/sizeof
56eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000057
Igor Sysoevdc867cd2003-12-14 20:10:27 +000058ngx_fmt_name=TIME_T_FMT; ngx_type="time_t"; . auto/types/sizeof
59eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000060
Igor Sysoevdc867cd2003-12-14 20:10:27 +000061ngx_fmt_name=SIZE_T_FMT; ngx_type="size_t"; . auto/types/sizeof
62eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000063
Igor Sysoevdc867cd2003-12-14 20:10:27 +000064ngx_fmt_name=SIZE_T_X_FMT; . auto/fmt/xfmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000065
Igor Sysoevdc867cd2003-12-14 20:10:27 +000066ngx_fmt_name=PID_T_FMT; ngx_type="pid_t"; . auto/types/sizeof
67eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000068
Igor Sysoevdc867cd2003-12-14 20:10:27 +000069ngx_fmt_name=RLIM_T_FMT; ngx_type="rlim_t"; . auto/types/sizeof
70eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000071
72
Igor Sysoevc0f8d912003-11-26 15:42:18 +000073# syscalls and libc calls
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000074
Igor Sysoevdc867cd2003-12-14 20:10:27 +000075ngx_func="pread()"
76ngx_func_inc=
Igor Sysoev7af6b162004-02-09 07:46:43 +000077ngx_func_test="char buf[1]; ssize_t n;
78 n = pread(0, buf, 1, 0)"
Igor Sysoevdc867cd2003-12-14 20:10:27 +000079. auto/func
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000080
81
Igor Sysoevdc867cd2003-12-14 20:10:27 +000082ngx_func="pwrite()"
83ngx_func_inc=
Igor Sysoev7af6b162004-02-09 07:46:43 +000084ngx_func_test="char buf[1]; ssize_t n;
85 n = pwrite(1, buf, 1, 0)"
Igor Sysoevdc867cd2003-12-14 20:10:27 +000086. auto/func
Igor Sysoeva8fa0a62003-11-25 20:44:56 +000087
88
Igor Sysoev3c3ca172004-01-05 20:55:48 +000089#ngx_func="strsignal()"
90#ngx_func_inc="#include <string.h>"
91#ngx_func_test="char *s = strsignal(1)"
92#. auto/func
Igor Sysoeve89c4582003-12-19 08:15:11 +000093
94
Igor Sysoevdc867cd2003-12-14 20:10:27 +000095ngx_func="strerror_r()"
96ngx_func_inc="#include <string.h>"
Igor Sysoev7af6b162004-02-09 07:46:43 +000097ngx_func_test="char buf[20]; int n; n = strerror_r(1, buf, 20)"
Igor Sysoevdc867cd2003-12-14 20:10:27 +000098. auto/func
99
100
101ngx_func="localtime_r()"
102ngx_func_inc="#include <time.h>"
103ngx_func_test="struct tm t; time_t c=0; localtime_r(&c, &t)"
104. auto/func