From 4efc2d39af912f89721614c4856c7777500a6cd4 Mon Sep 17 00:00:00 2001 From: "biao716.wang" Date: Thu, 5 Nov 2020 11:30:15 +0900 Subject: [PATCH] always generate dependence xml file when gbs build Change-Id: I14727c2e11866222c73014290a57966e416689e5 Signed-off-by: biao716.wang --- depanneur | 148 +++++++++++++++++++++++++++++------------------------- 1 file changed, 79 insertions(+), 69 deletions(-) diff --git a/depanneur b/depanneur index cf77bc6..94f5fd3 100755 --- a/depanneur +++ b/depanneur @@ -2395,6 +2395,79 @@ sub update_pkgrdeps { } } +sub generate_depends_xmlfile() { + my $out = "$depends_dir/$dist/$arch/"; + mkdir_p($out); + + # my $total = scalar (keys %to_build); + # my $index = 1; + + #Generate dependence XML file. + info("Generating dependence XML file..."); + my $pkgdepsxml = "$out/$dist\_$arch\_pkgdepends.xml"; + open(my $f, '>', $pkgdepsxml) or die "$pkgdepsxml - $!"; + print $f "\n"; + #sort in alphabetical order + foreach my $p (sort keys %to_build) { + #info("[$index/$total] generating dependence for package $p..."); + print $f "\n"; + #output package source name + print $f "$p\n"; + #output reverse dependence package info. + foreach my $dep (sort @{$pkgdeps{$p}}) { + print $f "$dep\n"; + } + #output subpkg info. + foreach my $subpn (sort @{$to_build{$p}->{subpacks}}) { + print $f "$subpn\n"; + } + print $f "\n"; + #$index++; + } + print $f "\n"; + close $f; + if ($tarfile) + { + my_system("cd $out; tar -zcf $dist\_$arch\_pkgdepends.tar.gz $dist\_$arch\_pkgdepends.xml"); + my_system("rm -rf $pkgdepsxml"); + } + info("The dependence XML file has been generated in $out"); + + #Generate reverse dependence XML file. + info("Generating reverse dependence XML file..."); + my $revpkgdepsxml = "$out/$dist\_$arch\_revpkgdepends.xml"; + open(my $rf, '>', $revpkgdepsxml) or die "$revpkgdepsxml - $!"; + print $rf "\n"; + #sort in alphabetical order + foreach my $p (sort keys %to_build) { + #info("[$index/$total] generating reverse dependence for package $p..."); + print $rf "\n"; + #output package source name + print $rf "$p\n"; + #output reverse dependence package info. + foreach my $dep (sort @{$pkgrdeps{$p}}) { + print $rf "$dep\n"; + } + #output subpkg info. + foreach my $subpn (sort @{$to_build{$p}->{subpacks}}) { + print $rf "$subpn\n"; + } + print $rf "\n"; + #$index++; + } + print $rf "\n"; + close $rf; + if ($tarfile) + { + my_system("cd $out; tar -zcf $dist\_$arch\_revpkgdepends.tar.gz $dist\_$arch\_revpkgdepends.xml"); + my_system("rm -rf $revpkgdepsxml"); + } + + info("The reverse dependence XML file has been generated in $out"); + + +} + sub generate_depends() { ($_, $start_time) = my_system("date +\"%Y-%m-%d %H:%M %z\""); ($_, $gbs_version) = my_system("gbs -V"); @@ -2479,74 +2552,8 @@ sub generate_depends() { update_pkgdeps($reverse_on); update_pkgrdeps(); - my $out = "$depends_dir/$dist/$arch/"; - mkdir_p($out); - - # my $total = scalar (keys %to_build); - # my $index = 1; + generate_depends_xmlfile(); - #Generate dependence XML file. - info("Generating dependence XML file..."); - my $pkgdepsxml = "$out/$dist\_$arch\_pkgdepends.xml"; - open(my $f, '>', $pkgdepsxml) or die "$pkgdepsxml - $!"; - print $f "\n"; - #sort in alphabetical order - foreach my $p (sort keys %to_build) { - #info("[$index/$total] generating dependence for package $p..."); - print $f "\n"; - #output package source name - print $f "$p\n"; - #output reverse dependence package info. - foreach my $dep (sort @{$pkgdeps{$p}}) { - print $f "$dep\n"; - } - #output subpkg info. - foreach my $subpn (sort @{$packs{$p}->{subpacks}}) { - print $f "$subpn\n"; - } - print $f "\n"; - #$index++; - } - print $f "\n"; - close $f; - if ($tarfile) - { - my_system("cd $out; tar -zcf $dist\_$arch\_pkgdepends.tar.gz $dist\_$arch\_pkgdepends.xml"); - my_system("rm -rf $pkgdepsxml"); - } - info("The dependence XML file has been generated in $out"); - - #Generate reverse dependence XML file. - info("Generating reverse dependence XML file..."); - my $revpkgdepsxml = "$out/$dist\_$arch\_revpkgdepends.xml"; - open(my $rf, '>', $revpkgdepsxml) or die "$revpkgdepsxml - $!"; - print $rf "\n"; - #sort in alphabetical order - foreach my $p (sort keys %to_build) { - #info("[$index/$total] generating reverse dependence for package $p..."); - print $rf "\n"; - #output package source name - print $rf "$p\n"; - #output reverse dependence package info. - foreach my $dep (sort @{$pkgrdeps{$p}}) { - print $rf "$dep\n"; - } - #output subpkg info. - foreach my $subpn (sort @{$packs{$p}->{subpacks}}) { - print $rf "$subpn\n"; - } - print $rf "\n"; - #$index++; - } - print $rf "\n"; - close $rf; - if ($tarfile) - { - my_system("cd $out; tar -zcf $dist\_$arch\_revpkgdepends.tar.gz $dist\_$arch\_revpkgdepends.xml"); - my_system("rm -rf $revpkgdepsxml"); - } - - info("The reverse dependence XML file has been generated in $out"); } #use pre-export source to analyse sub fill_packs_from_dir { @@ -2761,7 +2768,7 @@ if ($noinit == 0 && $incremental == 0) { } info("package dependency resolving ..."); -update_pkgdeps($reverse_off); +update_pkgdeps($reverse_on); update_pkgddeps(); my @bins = get_binary_list(); @@ -2803,10 +2810,13 @@ if (@bins) { resolve_skipped_packages(); } $get_order = 0; - update_pkgdeps($reverse_off); + update_pkgdeps($reverse_on); update_pkgddeps(); } +#alway generate depends and reverse depends xml file. +generate_depends_xmlfile(); + warning("no available packages to build.") if (scalar (keys %to_build) == 0); if ($incremental == 1 && scalar(keys %to_build) > 1) { -- 2.34.1