Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 1 | |
| 2 | CC_WARN=$CC |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 3 | ngx_fmt_collect=yes |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 4 | |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 5 | # C types |
| 6 | |
Igor Sysoev | 48fef66 | 2004-02-24 17:31:46 +0000 | [diff] [blame] | 7 | ngx_type="int"; . auto/types/sizeof |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 8 | ngx_formats="%d"; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 9 | |
Igor Sysoev | 48fef66 | 2004-02-24 17:31:46 +0000 | [diff] [blame] | 10 | ngx_type="long"; . auto/types/sizeof |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 11 | ngx_formats="%ld"; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 12 | |
Igor Sysoev | 48fef66 | 2004-02-24 17:31:46 +0000 | [diff] [blame] | 13 | ngx_type="long long"; . auto/types/sizeof |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 14 | ngx_formats="%lld %qd"; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 15 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 16 | ngx_type="void *"; . auto/types/sizeof; ngx_ptr_bytes=$ngx_bytes |
Igor Sysoev | 48fef66 | 2004-02-24 17:31:46 +0000 | [diff] [blame] | 17 | ngx_fmt_name=PTR_FMT; |
| 18 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/ptrfmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 19 | |
| 20 | |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 21 | # POSIX types |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 22 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 23 | NGX_AUTO_CONFIG="#include \"../$NGX_AUTO_CONFIG_H\"" |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 24 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 25 | ngx_type="uint64_t" |
| 26 | ngx_types="u_int64_t"; . auto/types/typedef |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 27 | |
Igor Sysoev | 6a93045 | 2004-03-04 16:34:23 +0000 | [diff] [blame] | 28 | ngx_type="sig_atomic_t" |
| 29 | ngx_types="int"; . auto/types/typedef |
Igor Sysoev | 9260294 | 2004-02-05 16:58:36 +0000 | [diff] [blame] | 30 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 31 | ngx_type="socklen_t" |
| 32 | ngx_types="uint32_t"; . auto/types/typedef |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 33 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 34 | ngx_type="in_addr_t" |
| 35 | ngx_types="uint32_t"; . auto/types/typedef |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 36 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 37 | ngx_type="rlim_t" |
| 38 | ngx_types="int"; . auto/types/typedef |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 39 | |
| 40 | . auto/types/uintptr_t |
| 41 | |
| 42 | |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 43 | ngx_func="sin_len" |
Igor Sysoev | d09f7a1 | 2004-06-15 17:47:16 +0000 | [diff] [blame^] | 44 | ngx_func_inc="#include <sys/socket.h> |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 45 | #include <netinet/in.h>" |
| 46 | |
| 47 | ngx_func_test="struct sockaddr_in sa; sa.sin_len = 5" |
| 48 | . auto/func |
| 49 | |
| 50 | |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 51 | # printf() formats |
| 52 | |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 53 | CC_WARN=$CC_STRONG |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 54 | ngx_fmt_collect=no |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 55 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 56 | ngx_fmt_name=OFF_T_FMT; ngx_type="off_t"; . auto/types/sizeof |
| 57 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 58 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 59 | ngx_fmt_name=TIME_T_FMT; ngx_type="time_t"; . auto/types/sizeof |
| 60 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 61 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 62 | ngx_fmt_name=SIZE_T_FMT; ngx_type="size_t"; . auto/types/sizeof |
| 63 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 64 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 65 | ngx_fmt_name=SIZE_T_X_FMT; . auto/fmt/xfmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 66 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 67 | ngx_fmt_name=PID_T_FMT; ngx_type="pid_t"; . auto/types/sizeof |
| 68 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 69 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 70 | ngx_fmt_name=RLIM_T_FMT; ngx_type="rlim_t"; . auto/types/sizeof |
| 71 | eval ngx_formats=\${ngx_${ngx_bytes}_fmt}; . auto/fmt/fmt |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 72 | |
| 73 | |
Igor Sysoev | c0f8d91 | 2003-11-26 15:42:18 +0000 | [diff] [blame] | 74 | # syscalls and libc calls |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 75 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 76 | ngx_func="pread()" |
| 77 | ngx_func_inc= |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 78 | ngx_func_test="char buf[1]; ssize_t n; |
| 79 | n = pread(0, buf, 1, 0)" |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 80 | . auto/func |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 81 | |
| 82 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 83 | ngx_func="pwrite()" |
| 84 | ngx_func_inc= |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 85 | ngx_func_test="char buf[1]; ssize_t n; |
| 86 | n = pwrite(1, buf, 1, 0)" |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 87 | . auto/func |
Igor Sysoev | a8fa0a6 | 2003-11-25 20:44:56 +0000 | [diff] [blame] | 88 | |
| 89 | |
Igor Sysoev | 3c3ca17 | 2004-01-05 20:55:48 +0000 | [diff] [blame] | 90 | #ngx_func="strsignal()" |
| 91 | #ngx_func_inc="#include <string.h>" |
| 92 | #ngx_func_test="char *s = strsignal(1)" |
| 93 | #. auto/func |
Igor Sysoev | e89c458 | 2003-12-19 08:15:11 +0000 | [diff] [blame] | 94 | |
| 95 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 96 | ngx_func="strerror_r()" |
| 97 | ngx_func_inc="#include <string.h>" |
Igor Sysoev | 7af6b16 | 2004-02-09 07:46:43 +0000 | [diff] [blame] | 98 | ngx_func_test="char buf[20]; int n; n = strerror_r(1, buf, 20)" |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 99 | . auto/func |
| 100 | |
| 101 | |
Igor Sysoev | c7a2f68 | 2004-02-10 16:23:38 +0000 | [diff] [blame] | 102 | ngx_func="gnu_strerror_r()" |
| 103 | ngx_func_inc="#include <string.h>" |
| 104 | ngx_func_test="char buf[20], *str; str = strerror_r(1, buf, 20)" |
| 105 | . auto/func |
| 106 | |
| 107 | |
Igor Sysoev | dc867cd | 2003-12-14 20:10:27 +0000 | [diff] [blame] | 108 | ngx_func="localtime_r()" |
| 109 | ngx_func_inc="#include <time.h>" |
| 110 | ngx_func_test="struct tm t; time_t c=0; localtime_r(&c, &t)" |
| 111 | . auto/func |
Igor Sysoev | 0ab91b9 | 2004-06-06 19:49:18 +0000 | [diff] [blame] | 112 | |
| 113 | |
| 114 | ngx_func="posix_memalign()" |
| 115 | ngx_func_inc="#include <stdlib.h>" |
| 116 | ngx_func_test="void *p, int n; n = posix_memalign(&p, 4096, 4096)" |
| 117 | . auto/func |
| 118 | |
| 119 | |
| 120 | ngx_func="memalign()" |
| 121 | ngx_func_inc="#include <stdlib.h>" |
| 122 | ngx_func_test="void *p; p = memalign(4096, 4096)" |
| 123 | . auto/func |
Igor Sysoev | d09f7a1 | 2004-06-15 17:47:16 +0000 | [diff] [blame^] | 124 | |
| 125 | |
| 126 | ngx_func="msghdr.msg_control" |
| 127 | ngx_func_inc="#include <sys/socket.h>" |
| 128 | ngx_func_test="struct msghdr msg; msg.msg_control = NULL" |
| 129 | . auto/func |
| 130 | |
| 131 | |
| 132 | ngx_func="FIONBIO" |
| 133 | ngx_func_inc="#include <sys/filio.h>" |
| 134 | ngx_func_test="int i; i = FIONBIO" |
| 135 | . auto/func |