Signed-off-by: Francois Gouget fgouget@codeweavers.com --- testbot/lib/Build/Utils.pm | 11 +++++++++++ testbot/lib/WineTestBot/PatchUtils.pm | 8 +++++++- 2 files changed, 18 insertions(+), 1 deletion(-)
diff --git a/testbot/lib/Build/Utils.pm b/testbot/lib/Build/Utils.pm index 2e6cc853b3..aa5c205d2d 100644 --- a/testbot/lib/Build/Utils.pm +++ b/testbot/lib/Build/Utils.pm @@ -114,6 +114,17 @@ sub ApplyPatch($$) }
my $Impacts = GetPatchImpacts($PatchFile); + if ($Impacts->{MakeRequests}) + { + InfoMsg "\nRunning make_requests\n"; + system("cd '$DataDir/$Dir' && set -x && ./tools/make_requests"); + if ($? != 0) + { + LogMsg "make_requests failed\n"; + return undef; + } + } + if ($Impacts->{MakeMakefiles}) { InfoMsg "\nRunning make_makefiles\n"; diff --git a/testbot/lib/WineTestBot/PatchUtils.pm b/testbot/lib/WineTestBot/PatchUtils.pm index 502a781f6c..7df50f9b21 100644 --- a/testbot/lib/WineTestBot/PatchUtils.pm +++ b/testbot/lib/WineTestBot/PatchUtils.pm @@ -300,6 +300,11 @@ sub GetPatchImpacts($) $Impacts->{PatchedRoot} = $Impacts->{MakeMakefiles} = 1; $Impacts->{IsWinePatch} = 1; } + elsif ($Line =~ m=^--- \w+/server/protocol.def$=) + { + $Impacts->{PatchedRoot} = $Impacts->{MakeRequests} = 1; + $Impacts->{IsWinePatch} = 1; + } elsif ($Line =~ m=^--- /dev/null$=) { $Change = "new"; @@ -344,7 +349,7 @@ sub GetPatchImpacts($) $Impacts->{BuildModules} = {};
# Also backup the build-related fields. - foreach my $Field ("Autoconf", "MakeMakefiles", + foreach my $Field ("Autoconf", "MakeMakefiles", "MakeRequests", "PatchedRoot", "PatchedModules", "PatchedTests") { $PastImpacts->{$Field} = $Impacts->{$Field}; @@ -435,6 +440,7 @@ sub GetPatchImpacts($) { $Impacts->{Autoconf} ||= $PastImpacts->{Autoconf}; $Impacts->{MakeMakefiles} ||= $PastImpacts->{MakeMakefiles}; + $Impacts->{MakeRequests} ||= $PastImpacts->{MakeRequests}; $Impacts->{RebuildRoot} ||= $PastImpacts->{PatchedRoot}; $Impacts->{RebuildModules} ||= $PastImpacts->{PatchedModules}; map { $Impacts->{BuildModules}->{$_} = 1 } keys %{$PastImpacts->{BuildModules}};