The handling of _select dependencies had two issues:
1) extralibs from _select dependencies of a component were not added to
the list of extralibs for that component.
2) Previously, _select components were enabled after checking dependencies
for that component. However, extralibs for each component are only added
if that component is enabled. In minimal builds when an enabled component
_selects a component that in turn depends on an external library, linker
flags for that external library are not added, thus leading to linking
failures.
---
configure | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/configure b/configure
index 10a6a8d..9cdc2e6 100755
--- a/configure
+++ b/configure
@@ -617,7 +617,6 @@ check_deps(){
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"
@@ -627,6 +626,8 @@ check_deps(){
eval dep_ifa="\$${cfg}_if"
eval dep_ifn="\$${cfg}_if_any"
+ enabled $cfg && enable_deep $dep_sel && enable_deep_weak $dep_sgs
+
pushvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn
check_deps $dep_all $dep_any $dep_con $dep_sel $dep_sgs $dep_ifa
$dep_ifn
popvar cfg dep_all dep_any dep_con dep_sel dep_sgs dep_ifa dep_ifn
@@ -639,9 +640,7 @@ check_deps(){
disabled_any $dep_sel && disable $cfg
if enabled $cfg; then
- enable_deep $dep_sel
- enable_deep_weak $dep_sgs
- for dep in $dep_all $dep_any $dep_sgs; do
+ for dep in $dep_all $dep_any $dep_sgs $dep_sel; do
# filter out library deps, these do not belong in extralibs
is_in $dep $LIBRARY_LIST && continue
enabled $dep && eval append ${cfg}_extralibs ${dep}_extralibs
--
2.1.4
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel