Francois Gouget : testbot: Track patches to the Wine modules separately.

Alexandre Julliard julliard at winehq.org
Wed Jun 27 12:45:44 CDT 2018


Module: tools
Branch: master
Commit: 941d9107086a0f8e8e0c55104b14f9d55f0823ab
URL:    https://source.winehq.org/git/tools.git/?a=commit;h=941d9107086a0f8e8e0c55104b14f9d55f0823ab

Author: Francois Gouget <fgouget at codeweavers.com>
Date:   Wed Jun 27 08:09:26 2018 +0200

testbot: Track patches to the Wine modules separately.

Patches to the dlls and programs modules don't require a rebuild of
the native Wine tools.

Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 testbot/lib/WineTestBot/PatchUtils.pm | 13 +++++++++++++
 testbot/lib/WineTestBot/Patches.pm    |  3 ++-
 2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/testbot/lib/WineTestBot/PatchUtils.pm b/testbot/lib/WineTestBot/PatchUtils.pm
index b2bfe6a..811c3b8 100644
--- a/testbot/lib/WineTestBot/PatchUtils.pm
+++ b/testbot/lib/WineTestBot/PatchUtils.pm
@@ -193,6 +193,19 @@ sub _HandleFile($$$)
     }
     $Tests->{$Module}->{Files}->{$File} = $Change;
   }
+  elsif ($FilePath =~ m~^(dlls|programs)/([^/]+)/([^/\s]+)$~)
+  {
+    my ($Root, $Dir, $File) = ($1, $2, $3);
+    my $Module = ($Root eq "programs") ? "$Dir.exe" : $Dir;
+    $Impacts->{IsWinePatch} = 1;
+    $Impacts->{ModuleBuild} = 1;
+
+    if ($File eq "Makefile.in" and $Change ne "modify")
+    {
+      # This adds / removes a directory
+      $Impacts->{MakeMakefiles} = 1;
+    }
+  }
   else
   {
     my $WineFiles = $Impacts->{WineFiles} || $_WineFiles;
diff --git a/testbot/lib/WineTestBot/Patches.pm b/testbot/lib/WineTestBot/Patches.pm
index 03a0ebf..cafd54d 100644
--- a/testbot/lib/WineTestBot/Patches.pm
+++ b/testbot/lib/WineTestBot/Patches.pm
@@ -136,7 +136,8 @@ sub Submit($$$)
   $PastImpacts = GetPatchImpact($PatchFileName) if ($IsSet);
   my $Impacts = GetPatchImpact("$DataDir/patches/" . $self->Id, undef, $PastImpacts);
 
-  if (!$Impacts->{WineBuild} and !$Impacts->{TestBuild})
+  if (!$Impacts->{WineBuild} and !$Impacts->{ModuleBuild} and
+      !$Impacts->{TestBuild})
   {
     if ($Impacts->{IsWinePatch})
     {




More information about the wine-cvs mailing list