fix gbs build error about path with'[]' 10/231910/4 accepted/tizen/devbase/tools/20200514.023600 submit/trunk/20200513.162810
authoryan11.meng <yan11.meng@samsung.com>
Sun, 26 Apr 2020 07:23:56 +0000 (15:23 +0800)
committeryan11.meng <yan11.meng@samsung.com>
Wed, 6 May 2020 06:22:09 +0000 (14:22 +0800)
Change-Id: I25fbe60466a632f5feb4e2375284584e4d518501
Signed-off-by: yan11.meng <yan11.meng@samsung.com>
depanneur

index b83b5f69b74aa19fa483f7d3cd63ae625e70eab9..16a406cb0472ad2c68c2ea0922acb081fb26ff0d 100755 (executable)
--- a/depanneur
+++ b/depanneur
@@ -619,6 +619,24 @@ sub fill_packs_from_obs {
 # - get the real packaging dir if it's a symbol link
 # - collect all spec files to @pre_packs
 #---------------------------------------------------------------------
+my @spec_lists;
+sub spec_wanted{
+    if($arg_spec ne ""){
+        if(-f $File::Find::name){
+            if($File::Find::name =~ /$arg_spec/){
+                push(@spec_lists,$File::Find::name);
+            }
+        }
+    }
+    else
+    {
+        if(-f $File::Find::name){
+            if($File::Find::name =~ /\.spec$/){
+                push(@spec_lists,$File::Find::name);
+            }
+        }
+    }
+}
 sub fill_packs_from_git {
     my $name = shift;
     my $base = dirname($name);
@@ -702,11 +720,13 @@ sub fill_packs_from_git {
         }
     } else {
         # specify --include-all use current packaging dir not from git
-        my $pattern = "$base/$l_packaging_dir/*.spec";
-        $pattern = "$base/$l_packaging_dir/$arg_spec" if $arg_spec ne "";
-        my @spec_list = glob($pattern);
+        #my $pattern = "$base/$l_packaging_dir/*.spec";
+        #$pattern = "$base/$l_packaging_dir/$arg_spec" if $arg_spec ne "";
+        #my @spec_list = glob($pattern);
+        my $f_path="$base/$l_packaging_dir";
+        File::Find::find({wanted => \&spec_wanted},$f_path);
         my $specs = "";
-        foreach my $spec (@spec_list) {
+        foreach my $spec (@spec_lists) {
                 $specs = $specs . $spec . ",";
         }
         if ($specs ne "") {