Title: [91782] trunk/Tools
Revision
91782
Author
[email protected]
Date
2011-07-26 14:17:14 -0700 (Tue, 26 Jul 2011)

Log Message

CSS Regions build bot should build with "--css-regions" and "--css-exclusion" flags
https://bugs.webkit.org/show_bug.cgi?id=65171

Added "features" parameter in config.json for "builder" objects. The parameter is optional and must be an array. All the items
of the array will be passed to the build-webkit script. The items will automatically be prefixed with "--".

Patch by Alexandru Chiculita <[email protected]> on 2011-07-26
Reviewed by Adam Roben.

* BuildSlaveSupport/build.webkit.org-config/config.json:
* BuildSlaveSupport/build.webkit.org-config/master.cfg:

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json (91781 => 91782)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json	2011-07-26 20:39:25 UTC (rev 91781)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/config.json	2011-07-26 21:17:14 UTC (rev 91782)
@@ -243,7 +243,7 @@
                       "slavenames": ["efl-linux-slave-1"]
                     },
                     { "name": "CSSRegions SnowLeopard Intel Release (Build)", "type": "Build", "builddir": "cssregions-snowleopard-intel-release",
-                      "platform": "mac-snowleopard", "configuration": "release", "architectures": ["x86_64"],
+                      "platform": "mac-snowleopard", "configuration": "release", "architectures": ["x86_64"], "features": ["css-regions", "css-exclusions"],
                       "slavenames": ["adobe-mac-slave1"]
                     }
                   ],

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg (91781 => 91782)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2011-07-26 20:39:25 UTC (rev 91781)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2011-07-26 21:17:14 UTC (rev 91782)
@@ -29,14 +29,15 @@
     name = "configure build"
     description = ["configuring build"]
     descriptionDone = ["configured build"]
-    def __init__(self, platform, configuration, architecture, buildOnly, *args, **kwargs):
+    def __init__(self, platform, configuration, architecture, buildOnly, features, *args, **kwargs):
         buildstep.BuildStep.__init__(self, *args, **kwargs)
         self.platform = platform.split('-', 1)[0]
         self.fullPlatform = platform
         self.configuration = configuration
         self.architecture = architecture
         self.buildOnly = buildOnly
-        self.addFactoryArguments(platform=platform, configuration=configuration, architecture=architecture, buildOnly=buildOnly)
+        self.features = features;
+        self.addFactoryArguments(platform=platform, configuration=configuration, architecture=architecture, buildOnly=buildOnly, features=features)
 
     def start(self):
         self.setProperty("platform", self.platform)
@@ -44,6 +45,7 @@
         self.setProperty("configuration", self.configuration)
         self.setProperty("architecture", self.architecture)
         self.setProperty("buildOnly", self.buildOnly)
+        self.setProperty("features", self.features)
         self.finished(SUCCESS)
         return defer.succeed(None)
 
@@ -101,6 +103,11 @@
             self.setCommand(self.command + ['DEBUG_INFORMATION_FORMAT=dwarf-with-dsym'])
 
         appendCustomBuildFlags(self, platform)
+
+        features = self.getProperty('features')
+        for feature in features:
+            self.setCommand(self.command + ['--' + feature])
+
         return shell.Compile.start(self)
 
 
@@ -584,9 +591,9 @@
 
 
 class Factory(factory.BuildFactory):
-    def __init__(self, platform, configuration, architectures, buildOnly):
+    def __init__(self, platform, configuration, architectures, buildOnly, features=None):
         factory.BuildFactory.__init__(self)
-        self.addStep(ConfigureBuild, platform=platform, configuration=configuration, architecture=" ".join(architectures), buildOnly=buildOnly)
+        self.addStep(ConfigureBuild, platform=platform, configuration=configuration, architecture=" ".join(architectures), buildOnly=buildOnly, features=features)
         self.addStep(CheckOutSource)
         if platform in ("win", "chromium-win"):
             self.addStep(KillOldProcesses)
@@ -596,8 +603,8 @@
             self.addStep(InstallChromiumDependencies)
 
 class BuildFactory(Factory):
-    def __init__(self, platform, configuration, architectures, triggers=None):
-        Factory.__init__(self, platform, configuration, architectures, True)
+    def __init__(self, platform, configuration, architectures, triggers=None, **kwargs):
+        Factory.__init__(self, platform, configuration, architectures, True, **kwargs)
         self.addStep(CompileWebKit)
         if triggers:
             self.addStep(ArchiveBuiltProduct)
@@ -611,8 +618,8 @@
 class TestFactory(Factory):
     TestClass = RunWebKitTests
     ExtractTestResultsClass = ExtractTestResults
-    def __init__(self, platform, configuration, architectures):
-        Factory.__init__(self, platform, configuration, architectures, False)
+    def __init__(self, platform, configuration, architectures, **kwargs):
+        Factory.__init__(self, platform, configuration, architectures, False, **kwargs)
         if platform == "mac-leopard":
             # Work around an ATSServer leak. See <http://webkit.org/b/51807>.
             self.addStep(StopATSServer)
@@ -634,8 +641,8 @@
 class BuildAndTestFactory(Factory):
     TestClass = RunWebKitTests
     ExtractTestResultsClass = ExtractTestResults
-    def __init__(self, platform, configuration, architectures):
-        Factory.__init__(self, platform, configuration, architectures, False)
+    def __init__(self, platform, configuration, architectures, **kwargs):
+        Factory.__init__(self, platform, configuration, architectures, False, **kwargs)
         if platform.startswith("chromium"):
             self.addStep(CleanupChromiumCrashLogs)
         self.addStep(CompileWebKit)
@@ -717,8 +724,12 @@
             if value:
                 factoryArgs.append(value)
 
-        builder["factory"] = factory(*factoryArgs)
+        factoryKwArgs = {
+            "features": builder.pop("features", [])
+        }
 
+        builder["factory"] = factory(*factoryArgs, **factoryKwArgs)
+
         builder["category"] = "noncore"
         if wkbb._is_core_builder(builder['name']):
             builder["category"] = "core"

Modified: trunk/Tools/ChangeLog (91781 => 91782)


--- trunk/Tools/ChangeLog	2011-07-26 20:39:25 UTC (rev 91781)
+++ trunk/Tools/ChangeLog	2011-07-26 21:17:14 UTC (rev 91782)
@@ -1,3 +1,16 @@
+2011-07-26  Alexandru Chiculita  <[email protected]>
+
+        CSS Regions build bot should build with "--css-regions" and "--css-exclusion" flags
+        https://bugs.webkit.org/show_bug.cgi?id=65171
+
+        Added "features" parameter in config.json for "builder" objects. The parameter is optional and must be an array. All the items
+        of the array will be passed to the build-webkit script. The items will automatically be prefixed with "--".
+
+        Reviewed by Adam Roben.
+
+        * BuildSlaveSupport/build.webkit.org-config/config.json:
+        * BuildSlaveSupport/build.webkit.org-config/master.cfg:
+
 2011-07-26  Chris Rogers  <[email protected]>
 
         Avoid outputting #EOF twice for web audio tests in chromium DRT
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to