Call depends if no ref given
authorHyokeun Jeon <hyokeun.jeon@samsung.com>
Tue, 23 Mar 2021 15:02:07 +0000 (00:02 +0900)
committerHyokeun Jeon <hyokeun.jeon@samsung.com>
Tue, 23 Mar 2021 15:02:07 +0000 (00:02 +0900)
depanneur

index 4ac62ec7f7590901e883f39059ba83058477de4b..55d9b0278f4693d0f56153e829f4ccbc8bb2c983 100755 (executable)
--- a/depanneur
+++ b/depanneur
@@ -2589,11 +2589,38 @@ sub prepare_preorder_list {
     my @preview_orders = ();
 
     if ($preordered_list ne "") {
-        @preview_orders = split(',', $preordered_list)
+        @preview_orders = split /[:,\s\/]+/, $preordered_list;
+        info("Preordered list given");
     }
 
+    my $preview_command = "";
+
     if ($profiling_reference ne "") {
-        my $preview_command = "bsr reorder -j $profiling_reference --verbose ";
+        info("Profiling reference given");
+        $preview_command = "bsr reorder -j $profiling_reference --verbose ";
+    } elsif (@preview_orders <= 0) {
+        info("Order list is empty.. Start call bsr");
+        generate_depends_xmlfile();
+        my $dep_xml_file = "$depends_dir/$dist/$arch/$dist\_$arch\_pkgdepends.xml";
+        info("Depend finished...");
+        if (-e $dep_xml_file) {
+            info("Dep file found...");
+            $preview_command = "bsr preview -a $arch --verbose --depsnumbersort ";
+            $preview_command = $preview_command . " -x \"$dep_xml_file\" ";
+            my $candidate_ref = "";
+            foreach my $r (@package_repos) {
+                if (index($r, "base") != -1 || (index($r, "/debug") != -1)) {
+                    next;
+                }
+                $candidate_ref = $r;
+            }
+            if ($candidate_ref ne "") {
+                $preview_command = $preview_command . " -r \"$candidate_ref\" --criticalsort ";
+            }
+        }
+    }
+
+    if ($preview_command ne "") {
         my_system($preview_command);
 
         info("");
@@ -2630,6 +2657,8 @@ sub prepare_preorder_list {
     if (@preview_orders) {
         $preordered_list = join ",", @preview_orders;
     }
+
+    my_system("rm -rf $depends_dir");
 }
 
 sub profiling_report {