From d4f8cecc86ea36021b716c3f8ce76a54d7944fc7 Mon Sep 17 00:00:00 2001 From: Mans Rullgard Date: Sun, 9 Dec 2012 17:34:14 +0000 Subject: configure: fix automatic processing of _extralibs in check_deps This fixes the automatic use of $foo_extralibs when feature foo is enabled indirectly through a _select or _suggest. Signed-off-by: Mans Rullgard --- configure | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'configure') diff --git a/configure b/configure index 3e7356e3c3..882f43c462 100755 --- a/configure +++ b/configure @@ -535,12 +535,13 @@ is_in(){ return 1 } -check_deps(){ +do_check_deps(){ for cfg; do cfg="${cfg#!}" enabled ${cfg}_checking && die "Circular dependency for $cfg." disabled ${cfg}_checking && continue enable ${cfg}_checking + append allopts $cfg eval dep_all="\$${cfg}_deps" eval dep_any="\$${cfg}_deps_any" @@ -550,7 +551,7 @@ check_deps(){ eval dep_ifn="\$${cfg}_if_any" pushvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn - check_deps $dep_all $dep_any $dep_sel $dep_sgs $dep_ifa $dep_ifn + do_check_deps $dep_all $dep_any $dep_sel $dep_sgs $dep_ifa $dep_ifn popvar cfg dep_all dep_any dep_sel dep_sgs dep_ifa dep_ifn [ -n "$dep_ifa" ] && { enabled_all $dep_ifa && enable_weak $cfg; } @@ -560,8 +561,6 @@ check_deps(){ disabled_any $dep_sel && disable $cfg if enabled $cfg; then - eval dep_extralibs="\$${cfg}_extralibs" - test -n "$dep_extralibs" && add_extralibs $dep_extralibs enable_deep $dep_sel enable_deep_weak $dep_sgs fi @@ -570,6 +569,18 @@ check_deps(){ done } +check_deps(){ + unset allopts + + do_check_deps "$@" + + for cfg in $allopts; do + enabled $cfg || continue + eval dep_extralibs="\$${cfg}_extralibs" + test -n "$dep_extralibs" && add_extralibs $dep_extralibs + done +} + print_config(){ pfx=$1 files=$2 -- cgit v1.2.3