These functions enable/disable their options if these are unset,
leaving their old values otherwise.
Originally committed as revision 15689 to svn://svn.ffmpeg.org/ffmpeg/trunk
... | ... |
@@ -250,6 +250,14 @@ set_all(){ |
250 | 250 |
done |
251 | 251 |
} |
252 | 252 |
|
253 |
+set_weak(){ |
|
254 |
+ value=$1 |
|
255 |
+ shift |
|
256 |
+ for var; do |
|
257 |
+ eval : \${$var:=$value} |
|
258 |
+ done |
|
259 |
+} |
|
260 |
+ |
|
253 | 261 |
pushvar(){ |
254 | 262 |
for var in $*; do |
255 | 263 |
eval level=\${${var}_level:=0} |
... | ... |
@@ -277,6 +285,14 @@ disable(){ |
277 | 277 |
set_all no $* |
278 | 278 |
} |
279 | 279 |
|
280 |
+enable_weak(){ |
|
281 |
+ set_weak yes $* |
|
282 |
+} |
|
283 |
+ |
|
284 |
+disable_weak(){ |
|
285 |
+ set_weak no $* |
|
286 |
+} |
|
287 |
+ |
|
280 | 288 |
do_enable_deep(){ |
281 | 289 |
for var; do |
282 | 290 |
enabled $var && continue |
... | ... |
@@ -292,6 +308,11 @@ enable_deep(){ |
292 | 292 |
enable $* |
293 | 293 |
} |
294 | 294 |
|
295 |
+enable_deep_weak(){ |
|
296 |
+ do_enable_deep $* |
|
297 |
+ enable_weak $* |
|
298 |
+} |
|
299 |
+ |
|
295 | 300 |
enabled(){ |
296 | 301 |
test "${1#!}" = "$1" && op== || op=!= |
297 | 302 |
eval test "x\$${1#!}" $op "xyes" |