diff options
-rwxr-xr-x | examples/depmod.pl | 31 |
1 files changed, 21 insertions, 10 deletions
diff --git a/examples/depmod.pl b/examples/depmod.pl index 6b47bad09..8c6548d28 100755 --- a/examples/depmod.pl +++ b/examples/depmod.pl | |||
@@ -167,21 +167,32 @@ sub maybe_unshift | |||
167 | } | 167 | } |
168 | unshift (@{$array}, $ele); | 168 | unshift (@{$array}, $ele); |
169 | } | 169 | } |
170 | sub add_mod_deps | ||
171 | { | ||
172 | my ($depth, $mod, $mod2, $module, $this_module) = @_; | ||
173 | |||
174 | $depth .= " "; | ||
175 | warn "${depth}loading deps of module: $this_module\n" if $verbose; | ||
176 | |||
177 | foreach my $md (keys %{$mod->{$this_module}}) { | ||
178 | add_mod_deps ($depth, $mod, $mod2, $module, $md); | ||
179 | warn "${depth} outputting $md\n" if $verbose; | ||
180 | maybe_unshift (\@{$$mod2->{$module}}, $md); | ||
181 | } | ||
182 | |||
183 | if (!%{$mod->{$this_module}}) { | ||
184 | warn "${depth} no deps\n" if $verbose; | ||
185 | } | ||
186 | } | ||
170 | foreach my $module (keys %$mod) { | 187 | foreach my $module (keys %$mod) { |
171 | warn "filling out module: $module\n" if $verbose; | 188 | warn "filling out module: $module\n" if $verbose; |
172 | @{$mod2->{$module}} = (); | 189 | @{$mod2->{$module}} = (); |
173 | foreach my $md (keys %{$mod->{$module}}) { | 190 | add_mod_deps ("", $mod, \$mod2, $module, $module); |
174 | foreach my $md2 (keys %{$mod->{$md}}) { | ||
175 | warn "outputting $md2\n" if $verbose; | ||
176 | maybe_unshift (\@{$mod2->{$module}}, $md2); | ||
177 | } | ||
178 | warn "outputting $md\n" if $verbose; | ||
179 | maybe_unshift (\@{$mod2->{$module}}, $md); | ||
180 | } | ||
181 | } | 191 | } |
182 | 192 | ||
183 | # figure out where the output should go | 193 | # figure out where the output should go |
184 | if ($stdout == 0) { | 194 | if ($stdout == 0) { |
195 | warn "writing $basedir/modules.dep\n" if $verbose; | ||
185 | open(STDOUT, ">$basedir/modules.dep") | 196 | open(STDOUT, ">$basedir/modules.dep") |
186 | or die "cannot open $basedir/modules.dep: $!"; | 197 | or die "cannot open $basedir/modules.dep: $!"; |
187 | } | 198 | } |