1 2# Copyright (C) Ruslan Ermilov 3# Copyright (C) Nginx, Inc. 4 5 6case $ngx_module_type in 7 HTTP_*) ngx_var=HTTP ;; 8 *) ngx_var=$ngx_module_type ;; 9esac 10 11 12if [ "$ngx_module_link" = DYNAMIC ]; then 13 14 for ngx_module in $ngx_module_name; do 15 # extract the first name 16 break 17 done 18 19 DYNAMIC_MODULES="$DYNAMIC_MODULES $ngx_module" 20 21 eval ${ngx_module}_MODULES=\"$ngx_module_name\" 22 23 if [ -z "$ngx_module_order" -a \ 24 \( "$ngx_module_type" = "HTTP_FILTER" \ 25 -o "$ngx_module_type" = "HTTP_AUX_FILTER" \) ] 26 then 27 eval ${ngx_module}_ORDER=\"$ngx_module_name \ 28 ngx_http_copy_filter_module\" 29 else 30 eval ${ngx_module}_ORDER=\"$ngx_module_order\" 31 fi 32 33 srcs= 34 shrd= 35 for src in $ngx_module_srcs 36 do 37 found=no 38 for old in $DYNAMIC_MODULES_SRCS 39 do 40 if [ $src = $old ]; then 41 found=yes 42 break 43 fi 44 done 45 46 if [ $found = no ]; then 47 srcs="$srcs $src" 48 else 49 shrd="$shrd $src" 50 fi 51 done 52 eval ${ngx_module}_SRCS=\"$srcs\" 53 eval ${ngx_module}_SHRD=\"$shrd\" 54 55 DYNAMIC_MODULES_SRCS="$DYNAMIC_MODULES_SRCS $srcs" 56 57 if test -n "$ngx_module_incs"; then 58 CORE_INCS="$CORE_INCS $ngx_module_incs" 59 fi 60 61 if test -n "$ngx_module_deps"; then 62 NGX_ADDON_DEPS="$NGX_ADDON_DEPS $ngx_module_deps" 63 fi 64 65 libs= 66 for lib in $ngx_module_libs 67 do 68 case $lib in 69 70 LIBXSLT | LIBGD | GEOIP | PERL) 71 libs="$libs \$NGX_LIB_$lib" 72 73 if eval [ "\$USE_${lib}" = NO ] ; then 74 eval USE_${lib}=DYNAMIC 75 fi 76 ;; 77 78 PCRE | OPENSSL | ZLIB) 79 eval USE_${lib}=YES 80 ;; 81 82 MD5 | SHA1) 83 # obsolete 84 ;; 85 86 *) 87 libs="$libs $lib" 88 ;; 89 90 esac 91 done 92 eval ${ngx_module}_LIBS=\'$libs\' 93 94elif [ "$ngx_module_link" = YES ]; then 95 96 eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \ 97 $ngx_module_name\" 98 99 eval ${ngx_var}_SRCS=\"\$${ngx_var}_SRCS $ngx_module_srcs\" 100 101 if test -n "$ngx_module_incs"; then 102 eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\" 103 fi 104 105 if test -n "$ngx_module_deps"; then 106 eval ${ngx_var}_DEPS=\"\$${ngx_var}_DEPS $ngx_module_deps\" 107 fi 108 109 for lib in $ngx_module_libs 110 do 111 case $lib in 112 113 PCRE | OPENSSL | ZLIB | LIBXSLT | LIBGD | PERL | GEOIP) 114 eval USE_${lib}=YES 115 ;; 116 117 MD5 | SHA1) 118 # obsolete 119 ;; 120 121 *) 122 CORE_LIBS="$CORE_LIBS $lib" 123 ;; 124 125 esac 126 done 127 128elif [ "$ngx_module_link" = ADDON ]; then 129 130 eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \ 131 $ngx_module_name\" 132 133 srcs= 134 for src in $ngx_module_srcs 135 do 136 found=no 137 for old in $NGX_ADDON_SRCS 138 do 139 if [ $src = $old ]; then 140 found=yes 141 break 142 fi 143 done 144 145 if [ $found = no ]; then 146 srcs="$srcs $src" 147 fi 148 done 149 150 NGX_ADDON_SRCS="$NGX_ADDON_SRCS $srcs" 151 152 if test -n "$ngx_module_incs"; then 153 eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\" 154 fi 155 156 if test -n "$ngx_module_deps"; then 157 NGX_ADDON_DEPS="$NGX_ADDON_DEPS $ngx_module_deps" 158 fi 159 160 for lib in $ngx_module_libs 161 do 162 case $lib in 163 164 PCRE | OPENSSL | ZLIB | LIBXSLT | LIBGD | PERL | GEOIP) 165 eval USE_${lib}=YES 166 ;; 167 168 MD5 | SHA1) 169 # obsolete 170 ;; 171 172 *) 173 CORE_LIBS="$CORE_LIBS $lib" 174 ;; 175 176 esac 177 done 178fi 179