Mercurial > hg > nginx
comparison auto/module @ 7743:4b1299b1856a
Configure: shared sources for addon modules.
Addon modules, both dynamic and static, can now use shared source files.
Shared sources result in only one make rule even if specified several
times in different modules.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Tue, 10 Nov 2020 17:13:20 +0300 |
parents | 2c7a2d75938a |
children |
comparison
equal
deleted
inserted
replaced
7742:4a69fec53b2f | 7743:4b1299b1856a |
---|---|
15 # extract the first name | 15 # extract the first name |
16 break | 16 break |
17 done | 17 done |
18 | 18 |
19 DYNAMIC_MODULES="$DYNAMIC_MODULES $ngx_module" | 19 DYNAMIC_MODULES="$DYNAMIC_MODULES $ngx_module" |
20 eval ${ngx_module}_SRCS=\"$ngx_module_srcs\" | |
21 | 20 |
22 eval ${ngx_module}_MODULES=\"$ngx_module_name\" | 21 eval ${ngx_module}_MODULES=\"$ngx_module_name\" |
23 | 22 |
24 if [ -z "$ngx_module_order" -a \ | 23 if [ -z "$ngx_module_order" -a \ |
25 \( "$ngx_module_type" = "HTTP_FILTER" \ | 24 \( "$ngx_module_type" = "HTTP_FILTER" \ |
28 eval ${ngx_module}_ORDER=\"$ngx_module_name \ | 27 eval ${ngx_module}_ORDER=\"$ngx_module_name \ |
29 ngx_http_copy_filter_module\" | 28 ngx_http_copy_filter_module\" |
30 else | 29 else |
31 eval ${ngx_module}_ORDER=\"$ngx_module_order\" | 30 eval ${ngx_module}_ORDER=\"$ngx_module_order\" |
32 fi | 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" | |
33 | 56 |
34 if test -n "$ngx_module_incs"; then | 57 if test -n "$ngx_module_incs"; then |
35 CORE_INCS="$CORE_INCS $ngx_module_incs" | 58 CORE_INCS="$CORE_INCS $ngx_module_incs" |
36 fi | 59 fi |
37 | 60 |
105 elif [ "$ngx_module_link" = ADDON ]; then | 128 elif [ "$ngx_module_link" = ADDON ]; then |
106 | 129 |
107 eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \ | 130 eval ${ngx_module_type}_MODULES=\"\$${ngx_module_type}_MODULES \ |
108 $ngx_module_name\" | 131 $ngx_module_name\" |
109 | 132 |
110 NGX_ADDON_SRCS="$NGX_ADDON_SRCS $ngx_module_srcs" | 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" | |
111 | 151 |
112 if test -n "$ngx_module_incs"; then | 152 if test -n "$ngx_module_incs"; then |
113 eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\" | 153 eval ${ngx_var}_INCS=\"\$${ngx_var}_INCS $ngx_module_incs\" |
114 fi | 154 fi |
115 | 155 |