conf 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. # Copyright (C) Igor Sysoev
  2. if [ $PCRE != NONE ]; then
  3. CORE_INCS="$CORE_INCS $PCRE"
  4. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  5. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  6. case "$NGX_CC_NAME" in
  7. msvc* | owc* | bcc)
  8. have=NGX_PCRE . auto/have
  9. have=PCRE_STATIC . auto/have
  10. CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
  11. LINK_DEPS="$LINK_DEPS $PCRE/pcre.lib"
  12. CORE_LIBS="$CORE_LIBS $PCRE/pcre.lib"
  13. ;;
  14. icc* )
  15. have=NGX_PCRE . auto/have
  16. CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
  17. LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
  18. echo $ngx_n "checking for PCRE library ...$ngx_c"
  19. if [ -f $PCRE/pcre.h ]; then
  20. ngx_pcre_ver=`grep PCRE_MAJOR $PCRE/pcre.h \
  21. | sed -e 's/^.*PCRE_MAJOR.* \(.*\)$/\1/'`
  22. else if [ -f $PCRE/configure.in ]; then
  23. ngx_pcre_ver=`grep PCRE_MAJOR= $PCRE/configure.in \
  24. | sed -e 's/^.*=\(.*\)$/\1/'`
  25. else
  26. ngx_pcre_ver=`grep pcre_major, $PCRE/configure.ac \
  27. | sed -e 's/^.*pcre_major,.*\[\(.*\)\].*$/\1/'`
  28. fi
  29. fi
  30. echo " $ngx_pcre_ver major version found"
  31. # to allow -ipo optimization we link with the *.o but not library
  32. case "$ngx_pcre_ver" in
  33. 4|5)
  34. CORE_LIBS="$CORE_LIBS $PCRE/pcre.o"
  35. ;;
  36. 6)
  37. CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
  38. CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
  39. CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
  40. CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
  41. CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
  42. CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
  43. CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
  44. ;;
  45. *)
  46. CORE_LIBS="$CORE_LIBS $PCRE/pcre_chartables.o"
  47. CORE_LIBS="$CORE_LIBS $PCRE/pcre_compile.o"
  48. CORE_LIBS="$CORE_LIBS $PCRE/pcre_exec.o"
  49. CORE_LIBS="$CORE_LIBS $PCRE/pcre_fullinfo.o"
  50. CORE_LIBS="$CORE_LIBS $PCRE/pcre_globals.o"
  51. CORE_LIBS="$CORE_LIBS $PCRE/pcre_tables.o"
  52. CORE_LIBS="$CORE_LIBS $PCRE/pcre_try_flipped.o"
  53. CORE_LIBS="$CORE_LIBS $PCRE/pcre_newline.o"
  54. ;;
  55. esac
  56. ;;
  57. *)
  58. have=NGX_PCRE . auto/have
  59. CORE_DEPS="$CORE_DEPS $PCRE/pcre.h"
  60. LINK_DEPS="$LINK_DEPS $PCRE/.libs/libpcre.a"
  61. CORE_LIBS="$CORE_LIBS $PCRE/.libs/libpcre.a"
  62. ;;
  63. esac
  64. else
  65. if [ "$NGX_PLATFORM" != win32 ]; then
  66. PCRE=NO
  67. ngx_feature="PCRE library"
  68. ngx_feature_name="NGX_PCRE"
  69. ngx_feature_run=no
  70. ngx_feature_incs="#include <pcre.h>"
  71. ngx_feature_path=
  72. ngx_feature_libs="-lpcre"
  73. ngx_feature_test="pcre *re; re = pcre_compile(NULL, 0, NULL, 0, NULL)"
  74. . auto/feature
  75. if [ $ngx_found = yes ]; then
  76. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  77. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  78. CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
  79. PCRE=YES
  80. ngx_found=no
  81. else
  82. # FreeBSD port
  83. ngx_feature="PCRE library in /usr/local/"
  84. ngx_feature_name="NGX_PCRE"
  85. ngx_feature_run=no
  86. ngx_feature_incs="#include <pcre.h>"
  87. ngx_feature_path="/usr/local/include"
  88. if [ $NGX_RPATH = YES ]; then
  89. ngx_feature_libs="-R/usr/local/lib -L/usr/local/lib -lpcre"
  90. else
  91. ngx_feature_libs="-L/usr/local/lib -lpcre"
  92. fi
  93. ngx_feature_test="pcre *re;
  94. re = pcre_compile(NULL, 0, NULL, 0, NULL)"
  95. . auto/feature
  96. fi
  97. if [ $ngx_found = yes ]; then
  98. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  99. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  100. CORE_INCS="$CORE_INCS $ngx_feature_path"
  101. CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
  102. PCRE=YES
  103. ngx_found=no
  104. else
  105. # Linux package
  106. if [ $PCRE = NO ]; then
  107. ngx_feature="PCRE library in /usr/include/pcre/"
  108. ngx_feature_name="NGX_PCRE"
  109. ngx_feature_run=no
  110. ngx_feature_incs="#include <pcre.h>"
  111. ngx_feature_path="/usr/include/pcre"
  112. ngx_feature_libs="-lpcre"
  113. ngx_feature_test="pcre *re;
  114. re = pcre_compile(NULL, 0, NULL, 0, NULL)"
  115. . auto/feature
  116. fi
  117. fi
  118. if [ $ngx_found = yes ]; then
  119. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  120. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  121. CORE_INCS="$CORE_INCS $ngx_feature_path"
  122. CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
  123. PCRE=YES
  124. ngx_found=no
  125. else
  126. # NetBSD port
  127. if [ $PCRE = NO ]; then
  128. ngx_feature="PCRE library in /usr/pkg/"
  129. ngx_feature_name="NGX_PCRE"
  130. ngx_feature_run=no
  131. ngx_feature_incs="#include <pcre.h>"
  132. ngx_feature_path="/usr/pkg/include"
  133. if [ $NGX_RPATH = YES ]; then
  134. ngx_feature_libs="-R/usr/pkg/lib -L/usr/pkg/lib -lpcre"
  135. else
  136. ngx_feature_libs="-L/usr/pkg/lib -lpcre"
  137. fi
  138. ngx_feature_test="pcre *re;
  139. re = pcre_compile(NULL, 0, NULL, 0, NULL)"
  140. . auto/feature
  141. fi
  142. fi
  143. if [ $ngx_found = yes ]; then
  144. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  145. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  146. CORE_INCS="$CORE_INCS $ngx_feature_path"
  147. CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
  148. PCRE=YES
  149. ngx_found=no
  150. else
  151. # MacPorts
  152. if [ $PCRE = NO ]; then
  153. ngx_feature="PCRE library in /opt/local/"
  154. ngx_feature_name="NGX_PCRE"
  155. ngx_feature_run=no
  156. ngx_feature_incs="#include <pcre.h>"
  157. ngx_feature_path="/opt/local/include"
  158. if [ $NGX_RPATH = YES ]; then
  159. ngx_feature_libs="-R/opt/local/lib -L/opt/local/lib -lpcre"
  160. else
  161. ngx_feature_libs="-L/opt/local/lib -lpcre"
  162. fi
  163. ngx_feature_test="pcre *re;
  164. re = pcre_compile(NULL, 0, NULL, 0, NULL)"
  165. . auto/feature
  166. fi
  167. fi
  168. if [ $ngx_found = yes ]; then
  169. CORE_DEPS="$CORE_DEPS $REGEX_DEPS"
  170. CORE_SRCS="$CORE_SRCS $REGEX_SRCS"
  171. CORE_INCS="$CORE_INCS $ngx_feature_path"
  172. CORE_LIBS="$CORE_LIBS $ngx_feature_libs"
  173. PCRE=YES
  174. ngx_found=no
  175. fi
  176. fi
  177. fi