Mercurial > hg > nginx-vendor-current
comparison auto/unix @ 668:9fbf3ad94cbf NGINX_1_1_18
nginx 1.1.18
*) Change: keepalive connections are no longer disabled for Safari by
default.
*) Feature: the $connection_requests variable.
*) Feature: $tcpinfo_rtt, $tcpinfo_rttvar, $tcpinfo_snd_cwnd and
$tcpinfo_rcv_space variables.
*) Feature: the "worker_cpu_affinity" directive now works on FreeBSD.
*) Feature: the "xslt_param" and "xslt_string_param" directives.
Thanks to Samuel Behan.
*) Bugfix: in configure tests.
Thanks to Piotr Sikora.
*) Bugfix: in the ngx_http_xslt_filter_module.
*) Bugfix: nginx could not be built on Debian GNU/Hurd.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Wed, 28 Mar 2012 00:00:00 +0400 |
parents | e5fa0a4a7d27 |
children | 981b4c44593b |
comparison
equal
deleted
inserted
replaced
667:e0eabdb2bad1 | 668:9fbf3ad94cbf |
---|---|
31 ngx_feature_name= | 31 ngx_feature_name= |
32 ngx_feature_run=no | 32 ngx_feature_run=no |
33 ngx_feature_incs="#include <poll.h>" | 33 ngx_feature_incs="#include <poll.h>" |
34 ngx_feature_path= | 34 ngx_feature_path= |
35 ngx_feature_libs= | 35 ngx_feature_libs= |
36 ngx_feature_test="int n, dp; struct pollfd pl; | 36 ngx_feature_test="int n; struct pollfd pl; |
37 dp = 0; | |
38 pl.fd = 0; | 37 pl.fd = 0; |
39 pl.events = 0; | 38 pl.events = 0; |
40 pl.revents = 0; | 39 pl.revents = 0; |
41 n = poll(&pl, 1, 0)" | 40 n = poll(&pl, 1, 0); |
41 if (n == -1) return 1" | |
42 . auto/feature | 42 . auto/feature |
43 | 43 |
44 if [ $ngx_found = no ]; then | 44 if [ $ngx_found = no ]; then |
45 EVENT_POLL=NONE | 45 EVENT_POLL=NONE |
46 fi | 46 fi |
55 ngx_feature_test="int n, dp; struct dvpoll dvp; | 55 ngx_feature_test="int n, dp; struct dvpoll dvp; |
56 dp = 0; | 56 dp = 0; |
57 dvp.dp_fds = NULL; | 57 dvp.dp_fds = NULL; |
58 dvp.dp_nfds = 0; | 58 dvp.dp_nfds = 0; |
59 dvp.dp_timeout = 0; | 59 dvp.dp_timeout = 0; |
60 n = ioctl(dp, DP_POLL, &dvp)" | 60 n = ioctl(dp, DP_POLL, &dvp); |
61 if (n == -1) return 1" | |
61 . auto/feature | 62 . auto/feature |
62 | 63 |
63 if [ $ngx_found = yes ]; then | 64 if [ $ngx_found = yes ]; then |
64 CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" | 65 CORE_SRCS="$CORE_SRCS $DEVPOLL_SRCS" |
65 EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" | 66 EVENT_MODULES="$EVENT_MODULES $DEVPOLL_MODULE" |
235 $NGX_INCLUDE_SYS_MOUNT_H | 236 $NGX_INCLUDE_SYS_MOUNT_H |
236 $NGX_INCLUDE_SYS_VFS_H" | 237 $NGX_INCLUDE_SYS_VFS_H" |
237 ngx_feature_path= | 238 ngx_feature_path= |
238 ngx_feature_libs= | 239 ngx_feature_libs= |
239 ngx_feature_test="struct statfs fs; | 240 ngx_feature_test="struct statfs fs; |
240 statfs(NULL, &fs);" | 241 statfs(\".\", &fs);" |
241 . auto/feature | 242 . auto/feature |
242 | 243 |
243 | 244 |
244 ngx_feature="statvfs()" | 245 ngx_feature="statvfs()" |
245 ngx_feature_name="NGX_HAVE_STATVFS" | 246 ngx_feature_name="NGX_HAVE_STATVFS" |
247 ngx_feature_incs="#include <sys/types.h> | 248 ngx_feature_incs="#include <sys/types.h> |
248 #include <sys/statvfs.h>" | 249 #include <sys/statvfs.h>" |
249 ngx_feature_path= | 250 ngx_feature_path= |
250 ngx_feature_libs= | 251 ngx_feature_libs= |
251 ngx_feature_test="struct statvfs fs; | 252 ngx_feature_test="struct statvfs fs; |
252 statvfs(NULL, &fs);" | 253 statvfs(\".\", &fs);" |
253 . auto/feature | 254 . auto/feature |
254 | 255 |
255 | 256 |
256 ngx_feature="dlopen()" | 257 ngx_feature="dlopen()" |
257 ngx_feature_name= | 258 ngx_feature_name= |
338 ngx_feature_path= | 339 ngx_feature_path= |
339 ngx_feature_libs= | 340 ngx_feature_libs= |
340 ngx_feature_test="setsockopt(0, IPPROTO_TCP, TCP_KEEPIDLE, NULL, 0); | 341 ngx_feature_test="setsockopt(0, IPPROTO_TCP, TCP_KEEPIDLE, NULL, 0); |
341 setsockopt(0, IPPROTO_TCP, TCP_KEEPINTVL, NULL, 0); | 342 setsockopt(0, IPPROTO_TCP, TCP_KEEPINTVL, NULL, 0); |
342 setsockopt(0, IPPROTO_TCP, TCP_KEEPCNT, NULL, 0)" | 343 setsockopt(0, IPPROTO_TCP, TCP_KEEPCNT, NULL, 0)" |
344 . auto/feature | |
345 | |
346 | |
347 ngx_feature="TCP_INFO" | |
348 ngx_feature_name="NGX_HAVE_TCP_INFO" | |
349 ngx_feature_run=no | |
350 ngx_feature_incs="#include <sys/socket.h> | |
351 #include <netinet/in.h> | |
352 #include <netinet/tcp.h>" | |
353 ngx_feature_path= | |
354 ngx_feature_libs= | |
355 ngx_feature_test="socklen_t optlen = sizeof(struct tcp_info); | |
356 struct tcp_info ti; | |
357 ti.tcpi_rtt = 0; | |
358 ti.tcpi_rttvar = 0; | |
359 ti.tcpi_snd_cwnd = 0; | |
360 ti.tcpi_rcv_space = 0; | |
361 getsockopt(0, IPPROTO_TCP, TCP_INFO, &ti, &optlen)" | |
343 . auto/feature | 362 . auto/feature |
344 | 363 |
345 | 364 |
346 ngx_feature="accept4()" | 365 ngx_feature="accept4()" |
347 ngx_feature_name="NGX_HAVE_ACCEPT4" | 366 ngx_feature_name="NGX_HAVE_ACCEPT4" |
479 | 498 |
480 | 499 |
481 ngx_feature="setproctitle()" | 500 ngx_feature="setproctitle()" |
482 ngx_feature_name="NGX_HAVE_SETPROCTITLE" | 501 ngx_feature_name="NGX_HAVE_SETPROCTITLE" |
483 ngx_feature_run=no | 502 ngx_feature_run=no |
484 ngx_feature_incs= | 503 ngx_feature_incs="#include <stdlib.h>" |
485 ngx_feature_path= | 504 ngx_feature_path= |
486 ngx_feature_libs=$NGX_SETPROCTITLE_LIB | 505 ngx_feature_libs=$NGX_SETPROCTITLE_LIB |
487 ngx_feature_test="setproctitle(\"test\");" | 506 ngx_feature_test="setproctitle(\"test\");" |
488 . auto/feature | 507 . auto/feature |
489 | 508 |
492 ngx_feature_name="NGX_HAVE_PREAD" | 511 ngx_feature_name="NGX_HAVE_PREAD" |
493 ngx_feature_run=no | 512 ngx_feature_run=no |
494 ngx_feature_incs= | 513 ngx_feature_incs= |
495 ngx_feature_path= | 514 ngx_feature_path= |
496 ngx_feature_libs= | 515 ngx_feature_libs= |
497 ngx_feature_test="char buf[1]; ssize_t n; n = pread(0, buf, 1, 0)" | 516 ngx_feature_test="char buf[1]; ssize_t n; n = pread(0, buf, 1, 0); |
517 if (n == -1) return 1" | |
498 . auto/feature | 518 . auto/feature |
499 | 519 |
500 | 520 |
501 ngx_feature="pwrite()" | 521 ngx_feature="pwrite()" |
502 ngx_feature_name="NGX_HAVE_PWRITE" | 522 ngx_feature_name="NGX_HAVE_PWRITE" |
503 ngx_feature_run=no | 523 ngx_feature_run=no |
504 ngx_feature_incs= | 524 ngx_feature_incs= |
505 ngx_feature_path= | 525 ngx_feature_path= |
506 ngx_feature_libs= | 526 ngx_feature_libs= |
507 ngx_feature_test="char buf[1]; ssize_t n; n = pwrite(1, buf, 1, 0)" | 527 ngx_feature_test="char buf[1]; ssize_t n; n = pwrite(1, buf, 1, 0); |
528 if (n == -1) return 1" | |
508 . auto/feature | 529 . auto/feature |
509 | 530 |
510 | 531 |
511 ngx_feature="sys_nerr" | 532 ngx_feature="sys_nerr" |
512 ngx_feature_name="NGX_SYS_NERR" | 533 ngx_feature_name="NGX_SYS_NERR" |
576 ngx_feature_name="NGX_HAVE_POSIX_MEMALIGN" | 597 ngx_feature_name="NGX_HAVE_POSIX_MEMALIGN" |
577 ngx_feature_run=no | 598 ngx_feature_run=no |
578 ngx_feature_incs="#include <stdlib.h>" | 599 ngx_feature_incs="#include <stdlib.h>" |
579 ngx_feature_path= | 600 ngx_feature_path= |
580 ngx_feature_libs= | 601 ngx_feature_libs= |
581 ngx_feature_test="void *p; int n; n = posix_memalign(&p, 4096, 4096)" | 602 ngx_feature_test="void *p; int n; n = posix_memalign(&p, 4096, 4096); |
603 if (n != 0) return 1" | |
582 . auto/feature | 604 . auto/feature |
583 | 605 |
584 | 606 |
585 ngx_feature="memalign()" | 607 ngx_feature="memalign()" |
586 ngx_feature_name="NGX_HAVE_MEMALIGN" | 608 ngx_feature_name="NGX_HAVE_MEMALIGN" |
587 ngx_feature_run=no | 609 ngx_feature_run=no |
588 ngx_feature_incs="#include <stdlib.h>" | 610 ngx_feature_incs="#include <stdlib.h> |
589 ngx_feature_path= | 611 #include <malloc.h>" |
590 ngx_feature_libs= | 612 ngx_feature_path= |
591 ngx_feature_test="void *p; p = memalign(4096, 4096)" | 613 ngx_feature_libs= |
614 ngx_feature_test="void *p; p = memalign(4096, 4096); | |
615 if (p == NULL) return 1" | |
592 . auto/feature | 616 . auto/feature |
593 | 617 |
594 | 618 |
595 ngx_feature="mmap(MAP_ANON|MAP_SHARED)" | 619 ngx_feature="mmap(MAP_ANON|MAP_SHARED)" |
596 ngx_feature_name="NGX_HAVE_MAP_ANON" | 620 ngx_feature_name="NGX_HAVE_MAP_ANON" |
673 | 697 |
674 | 698 |
675 ngx_feature="struct msghdr.msg_control" | 699 ngx_feature="struct msghdr.msg_control" |
676 ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" | 700 ngx_feature_name="NGX_HAVE_MSGHDR_MSG_CONTROL" |
677 ngx_feature_run=no | 701 ngx_feature_run=no |
678 ngx_feature_incs="#include <sys/socket.h>" | 702 ngx_feature_incs="#include <sys/socket.h> |
679 ngx_feature_path= | 703 #include <stdio.h>" |
680 ngx_feature_libs= | 704 ngx_feature_path= |
681 ngx_feature_test="struct msghdr msg; msg.msg_control = NULL" | 705 ngx_feature_libs= |
706 ngx_feature_test="struct msghdr msg; | |
707 printf(\"%d\", (int) sizeof(msg.msg_control))" | |
682 . auto/feature | 708 . auto/feature |
683 | 709 |
684 | 710 |
685 ngx_feature="ioctl(FIONBIO)" | 711 ngx_feature="ioctl(FIONBIO)" |
686 ngx_feature_name="NGX_HAVE_FIONBIO" | 712 ngx_feature_name="NGX_HAVE_FIONBIO" |
687 ngx_feature_run=no | 713 ngx_feature_run=no |
688 ngx_feature_incs="#include <sys/ioctl.h> | 714 ngx_feature_incs="#include <sys/ioctl.h> |
715 #include <stdio.h> | |
689 $NGX_INCLUDE_SYS_FILIO_H" | 716 $NGX_INCLUDE_SYS_FILIO_H" |
690 ngx_feature_path= | 717 ngx_feature_path= |
691 ngx_feature_libs= | 718 ngx_feature_libs= |
692 ngx_feature_test="int i; i = FIONBIO" | 719 ngx_feature_test="int i = FIONBIO; printf(\"%d\", i)" |
693 . auto/feature | 720 . auto/feature |
694 | 721 |
695 | 722 |
696 ngx_feature="struct tm.tm_gmtoff" | 723 ngx_feature="struct tm.tm_gmtoff" |
697 ngx_feature_name="NGX_HAVE_GMTOFF" | 724 ngx_feature_name="NGX_HAVE_GMTOFF" |
698 ngx_feature_run=no | 725 ngx_feature_run=no |
699 ngx_feature_incs="#include <time.h>" | 726 ngx_feature_incs="#include <time.h> |
700 ngx_feature_path= | 727 #include <stdio.h>" |
701 ngx_feature_libs= | 728 ngx_feature_path= |
702 ngx_feature_test="struct tm tm; tm.tm_gmtoff = 0" | 729 ngx_feature_libs= |
730 ngx_feature_test="struct tm tm; tm.tm_gmtoff = 0; | |
731 printf(\"%d\", (int) tm.tm_gmtoff)" | |
703 . auto/feature | 732 . auto/feature |
704 | 733 |
705 | 734 |
706 ngx_feature="struct dirent.d_namlen" | 735 ngx_feature="struct dirent.d_namlen" |
707 ngx_feature_name="NGX_HAVE_D_NAMLEN" | 736 ngx_feature_name="NGX_HAVE_D_NAMLEN" |
708 ngx_feature_run=no | 737 ngx_feature_run=no |
709 ngx_feature_incs="#include <dirent.h>" | 738 ngx_feature_incs="#include <dirent.h> |
710 ngx_feature_path= | 739 #include <stdio.h>" |
711 ngx_feature_libs= | 740 ngx_feature_path= |
712 ngx_feature_test="struct dirent dir; dir.d_namlen = 0" | 741 ngx_feature_libs= |
742 ngx_feature_test="struct dirent dir; dir.d_namlen = 0; | |
743 printf(\"%d\", (int) dir.d_namlen)" | |
713 . auto/feature | 744 . auto/feature |
714 | 745 |
715 | 746 |
716 ngx_feature="struct dirent.d_type" | 747 ngx_feature="struct dirent.d_type" |
717 ngx_feature_name="NGX_HAVE_D_TYPE" | 748 ngx_feature_name="NGX_HAVE_D_TYPE" |
718 ngx_feature_run=no | 749 ngx_feature_run=no |
719 ngx_feature_incs="#include <dirent.h>" | 750 ngx_feature_incs="#include <dirent.h> |
720 ngx_feature_path= | 751 #include <stdio.h>" |
721 ngx_feature_libs= | 752 ngx_feature_path= |
722 ngx_feature_test="struct dirent dir; dir.d_type = DT_REG" | 753 ngx_feature_libs= |
754 ngx_feature_test="struct dirent dir; dir.d_type = DT_REG; | |
755 printf(\"%d\", (int) dir.d_type)" | |
723 . auto/feature | 756 . auto/feature |
724 | 757 |
725 | 758 |
726 ngx_feature="sysconf(_SC_NPROCESSORS_ONLN)" | 759 ngx_feature="sysconf(_SC_NPROCESSORS_ONLN)" |
727 ngx_feature_name="NGX_HAVE_SC_NPROCESSORS_ONLN" | 760 ngx_feature_name="NGX_HAVE_SC_NPROCESSORS_ONLN" |