[SCM] libav/experimental: recursive feature dependency checking
siretart at users.alioth.debian.org
siretart at users.alioth.debian.org
Sun Jun 30 15:56:15 UTC 2013
The following commit has been merged in the experimental branch:
commit 799c9e9bcbacd96e37513720b54bc519ac4ad825
Author: Måns Rullgård <mans at mansr.com>
Date: Sun Feb 11 15:49:37 2007 +0000
recursive feature dependency checking
Originally committed as revision 7930 to svn://svn.ffmpeg.org/ffmpeg/trunk
diff --git a/configure b/configure
index 66ace8c..359caf6 100755
--- a/configure
+++ b/configure
@@ -216,6 +216,25 @@ set_all(){
done
}
+pushvar(){
+ for var in $*; do
+ eval level=\${${var}_level:=0}
+ eval ${var}_${level}="\$$var"
+ eval ${var}_level=$(($level+1))
+ done
+}
+
+popvar(){
+ for var in $*; do
+ eval level=\${${var}_level:-0}
+ test $level = 0 && continue
+ eval level=$(($level-1))
+ eval $var="\${${var}_${level}}"
+ eval ${var}_level=$level
+ eval unset ${var}_${level}
+ done
+}
+
enable(){
set_all yes $*
}
@@ -258,10 +277,21 @@ disabled_any(){
check_deps(){
for cfg; do
+ enabled ${cfg}_checking && die "Circular dependency for $cfg."
+ disabled ${cfg}_checking && continue
+ enable ${cfg}_checking
+
eval dep_all="\$${cfg}_deps"
eval dep_any="\$${cfg}_deps_any"
+
+ pushvar cfg dep_all dep_any
+ check_deps $dep_all $dep_any
+ popvar cfg dep_all dep_any
+
enabled_all $dep_all || disable $cfg
enabled_any $dep_any || disable $cfg
+
+ disable ${cfg}_checking
done
}
--
Libav/FFmpeg packaging
More information about the pkg-multimedia-commits
mailing list