conf 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. # Copyright (C) Igor Sysoev
  2. # Copyright (C) Nginx, Inc.
  3. LINK="\$(CC)"
  4. ngx_include_opt="-I "
  5. ngx_compile_opt="-c"
  6. ngx_objout="-o "
  7. ngx_binout="-o "
  8. ngx_objext="o"
  9. ngx_binext=
  10. ngx_long_start=
  11. ngx_long_end=
  12. ngx_regex_dirsep="\/"
  13. ngx_dirsep='/'
  14. ngx_regex_cont=' \\\
  15. '
  16. ngx_cont=' \
  17. '
  18. ngx_tab=' \
  19. '
  20. ngx_spacer=
  21. ngx_long_regex_cont=$ngx_regex_cont
  22. ngx_long_cont=$ngx_cont
  23. . auto/cc/name
  24. if test -n "$CFLAGS"; then
  25. CC_TEST_FLAGS="$CFLAGS $NGX_CC_OPT"
  26. case $NGX_CC_NAME in
  27. ccc)
  28. # Compaq C V6.5-207
  29. ngx_include_opt="-I"
  30. ;;
  31. esac
  32. else
  33. case $NGX_CC_NAME in
  34. gcc)
  35. # gcc 2.7.2.3, 2.8.1, 2.95.4, egcs-1.1.2
  36. # 3.0.4, 3.1.1, 3.2.3, 3.3.2, 3.3.3, 3.3.4, 3.4.0, 3.4.2
  37. # 4.0.0, 4.0.1, 4.1.0
  38. . auto/cc/gcc
  39. ;;
  40. icc)
  41. # Intel C++ compiler 7.1, 8.0, 8.1
  42. . auto/cc/icc
  43. ;;
  44. sunc)
  45. # Sun C 5.7 Patch 117837-04 2005/05/11
  46. . auto/cc/sunc
  47. ;;
  48. ccc)
  49. # Compaq C V6.5-207
  50. . auto/cc/ccc
  51. ;;
  52. acc)
  53. # aCC: HP ANSI C++ B3910B A.03.55.02
  54. . auto/cc/acc
  55. ;;
  56. msvc*)
  57. # MSVC++ 6.0 SP2, MSVC++ Toolkit 2003
  58. . auto/cc/msvc
  59. ;;
  60. owc)
  61. # Open Watcom C 1.0, 1.2
  62. . auto/cc/owc
  63. ;;
  64. bcc)
  65. # Borland C++ 5.5
  66. . auto/cc/bcc
  67. ;;
  68. esac
  69. CC_TEST_FLAGS="$CC_TEST_FLAGS $NGX_CC_OPT"
  70. fi
  71. CFLAGS="$CFLAGS $NGX_CC_OPT"
  72. NGX_TEST_LD_OPT="$NGX_LD_OPT"
  73. if [ "$NGX_PLATFORM" != win32 ]; then
  74. if test -n "$NGX_LD_OPT"; then
  75. ngx_feature=--with-ld-opt=\"$NGX_LD_OPT\"
  76. ngx_feature_name=
  77. ngx_feature_run=no
  78. ngx_feature_incs=
  79. ngx_feature_path=
  80. ngx_feature_libs=
  81. ngx_feature_test=
  82. . auto/feature
  83. if [ $ngx_found = no ]; then
  84. echo $0: error: the invalid value in --with-ld-opt=\"$NGX_LD_OPT\"
  85. echo
  86. exit 1
  87. fi
  88. fi
  89. ngx_feature="gcc builtin atomic operations"
  90. ngx_feature_name=NGX_HAVE_GCC_ATOMIC
  91. ngx_feature_run=yes
  92. ngx_feature_incs=
  93. ngx_feature_path=
  94. ngx_feature_libs=
  95. ngx_feature_test="long n = 0;
  96. if (!__sync_bool_compare_and_swap(&n, 0, 1))
  97. return 1;
  98. if (__sync_fetch_and_add(&n, 1) != 1)
  99. return 1;
  100. if (n != 2)
  101. return 1;
  102. __sync_synchronize();"
  103. . auto/feature
  104. if [ "$NGX_CC_NAME" = "ccc" ]; then
  105. echo "checking for C99 variadic macros ... disabled"
  106. else
  107. ngx_feature="C99 variadic macros"
  108. ngx_feature_name="NGX_HAVE_C99_VARIADIC_MACROS"
  109. ngx_feature_run=yes
  110. ngx_feature_incs="#include <stdio.h>
  111. #define var(dummy, ...) sprintf(__VA_ARGS__)"
  112. ngx_feature_path=
  113. ngx_feature_libs=
  114. ngx_feature_test="char buf[30]; buf[0] = '0';
  115. var(0, buf, \"%d\", 1);
  116. if (buf[0] != '1') return 1"
  117. . auto/feature
  118. fi
  119. ngx_feature="gcc variadic macros"
  120. ngx_feature_name="NGX_HAVE_GCC_VARIADIC_MACROS"
  121. ngx_feature_run=yes
  122. ngx_feature_incs="#include <stdio.h>
  123. #define var(dummy, args...) sprintf(args)"
  124. ngx_feature_path=
  125. ngx_feature_libs=
  126. ngx_feature_test="char buf[30]; buf[0] = '0';
  127. var(0, buf, \"%d\", 1);
  128. if (buf[0] != '1') return 1"
  129. . auto/feature
  130. # ngx_feature="inline"
  131. # ngx_feature_name=
  132. # ngx_feature_run=no
  133. # ngx_feature_incs="int inline f(void) { return 1 }"
  134. # ngx_feature_path=
  135. # ngx_feature_libs=
  136. # ngx_feature_test=
  137. # . auto/feature
  138. #
  139. # if [ $ngx_found = yes ]; then
  140. # fi
  141. fi