[PATCH] testbot: Track patches to the Wine modules separately.

Francois Gouget fgouget at codeweavers.com
Wed Jun 27 01:09:26 CDT 2018


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>
---
 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 b2bfe6a9a..811c3b8b2 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 fe333d943..50f720861 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})
     {
-- 
2.18.0




More information about the wine-devel mailing list