configure: add enable_weak and disable_weak

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
This commit is contained in:
Måns Rullgård 2008-10-24 23:18:08 +00:00
parent f9d328da8f
commit 72a436687c

21
configure vendored
View File

@ -250,6 +250,14 @@ set_all(){
done
}
set_weak(){
value=$1
shift
for var; do
eval : \${$var:=$value}
done
}
pushvar(){
for var in $*; do
eval level=\${${var}_level:=0}
@ -277,6 +285,14 @@ disable(){
set_all no $*
}
enable_weak(){
set_weak yes $*
}
disable_weak(){
set_weak no $*
}
do_enable_deep(){
for var; do
enabled $var && continue
@ -292,6 +308,11 @@ enable_deep(){
enable $*
}
enable_deep_weak(){
do_enable_deep $*
enable_weak $*
}
enabled(){
test "${1#!}" = "$1" && op== || op=!=
eval test "x\$${1#!}" $op "xyes"