Browse Source

configure: Fix handling of _select dependencies

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) extralibs from dependencies were only added to the extralibs of a
   component if the component was enabled. This led to incorrect results
   if that component was enabled by another component later in the dependency
   resolution process. Instead, always generate the full list of component
   extralibs for use later in the dependency resolution process.

Also remove a leftover unused variable.
tags/n4.0
Diego Biurrun 8 years ago
parent
commit
d9da7151ee
1 changed files with 7 additions and 10 deletions
  1. +7
    -10
      configure

+ 7
- 10
configure View File

@@ -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"
@@ -638,15 +637,13 @@ check_deps(){
disabled_all $dep_con || disable $cfg
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
# filter out library deps, these do not belong in extralibs
is_in $dep $LIBRARY_LIST && continue
enabled $dep && eval append ${cfg}_extralibs ${dep}_extralibs
done
fi
enabled $cfg && enable_deep_weak $dep_sel $dep_sgs

for dep in $dep_all $dep_any $dep_sel $dep_sgs; 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
done

disable ${cfg}_checking
done


Loading…
Cancel
Save