]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/distrib/all/build-all
enable building just the unicode version, or both unicode and ansi
[wxWidgets.git] / wxPython / distrib / all / build-all
index 68b6e82f8e9c8ddf4902042b578e86188374474e..2d005d13740514f03367b16d00f4980d8c29ca89 100755 (executable)
@@ -1,9 +1,9 @@
 #!/usr/bin/python -u
 #----------------------------------------------------------------------
 # Name:        build-all.py
-# Purpose:     Master build script for building all the installers and
-#              such on all the build machines in my lab, and then 
-#              distributing the results as needed.
+# Purpose:     Master build script for building all the wxPython
+#              installers and such on all the build machines in
+#              my lab, and then distributing the results as needed.
 #
 #              This will replace the build-all bash script and is
 #              needed because the needs of the build have outgrown
@@ -37,6 +37,73 @@ class Job(Job):
 
 #----------------------------------------------------------------------
 
+def getTasks(config_env):
+    # Things that need to be done before any of the builds
+    initialTask = Task([
+        Job("", "distrib/all/build-setup", env=config_env),
+        Job("", "distrib/all/build-docs", env=config_env),
+        Job("", "distrib/all/build-sources", env=config_env),
+        ])
+    
+    # Build tasks.  Anything that can be done in parallel (depends greatly
+    # on the nature of the build machines configurations...) is a separate
+    # task.
+    
+    jaguarTask = Task( Job("whopper.23", "distrib/all/build-osx",
+                           [config.OSX_HOST_jaguar, "2.3", "ansi"], env=config_env) )
+    
+    pantherTask = Task( [ Job("bigmac.23", 
+                              "distrib/all/build-osx",
+                              [config.OSX_HOST_panther, "2.3", "both"], env=config_env),
+                          Job("bigmac.24",
+                              "distrib/all/build-osx",
+                              [config.OSX_HOST_panther, "2.4", "both"], env=config_env)
+                          ])
+
+    tigerTask =  Task([ #Job("smallfry.23",
+                        #    "distrib/all/build-osx",
+                        #    [config.OSX_HOST_tiger, "2.3", "both"], env=config_env),
+                        Job("smallfry.24",
+                            "distrib/all/build-osx",
+                            [config.OSX_HOST_tiger, "2.4", "both", "universal"], env=config_env),
+                        Job("smallfry.25",
+                            "distrib/all/build-osx",
+                            [config.OSX_HOST_tiger, "2.5", "both", "universal"], env=config_env)
+                    ])
+
+    
+    beastTask1 = Task(
+        [ Job("beast.23",     "distrib/all/build-windows", ["2.3"], env=config_env),
+          Job("co-rh9.23",    "distrib/all/build-rpm", ["beast", "co-rh9",   "rh9",   "2.3"], env=config_env),
+          Job("beast.24",     "distrib/all/build-windows", ["2.4"], env=config_env),
+          Job("co-rh9.24",    "distrib/all/build-rpm", ["beast", "co-rh9",   "rh9",   "2.4"], env=config_env),
+          Job("beast.25",     "distrib/all/build-windows", ["2.5"], env=config_env),
+          ])
+    
+    beastTask2 = Task(
+        [ Job("co-fc2.23",    "distrib/all/build-rpm", ["beast", "co-fc2",     "fc2",     "2.3"], env=config_env),
+          Job("co-fc4.24",    "distrib/all/build-rpm", ["beast", "co-fc4",     "fc4",     "2.4"], env=config_env),
+          Job("co-mdk102.24", "distrib/all/build-rpm", ["beast", "co-mdk102",  "mdk102",  "2.4"], env=config_env),
+          Job("co-mdk2006.24","distrib/all/build-rpm", ["beast", "co-mdk2006", "mdk2006", "2.4"], env=config_env),
+          ])
+
+    buildTasks = [ jaguarTask,
+                   pantherTask,
+                   tigerTask,
+                   beastTask1,
+                   beastTask2,
+                   ]
+    
+    # Finalization.  This is for things that must wait until all the
+    # builds are done, such as copying the installers someplace, sending
+    # emails, etc.
+    finalizationTask = Task( Job("", "distrib/all/build-finalize", env=config_env) )
+
+    return initialTask, buildTasks, finalizationTask
+
+
+#----------------------------------------------------------------------
+
 def usage():
     print ""
     print "Usage: build-all [command flags...]"
@@ -53,9 +120,10 @@ def usage():
     print "   skipdocs     Don't rebuild the docs"
     print "   skipwin      Don't do the remote Windows build"
     print "   skiposx      Don't do the remote OSX build"
-    print "   skiplinux    Don't do the remote Linux build"
+    print "   skiplinux    Don't do the remote Linux (RPM) build"
     print "   skipclean    Don't do the cleanup step on the remote builds"
     print "   skipupload   Don't upload the builds to starship"
+    print "   ansi         Also do the ansi builds"
     print ""
     print "   nocohost     Don't start the coLinux sessions if they are"
     print "                not already online"
@@ -106,6 +174,9 @@ def main(args):
         elif flag == "skipupload":
             config.skipupload = "yes"
 
+        elif flag == "ansi":
+            config.buildansi = "yes"
+
         elif flag == "nocohost":
             config.startcohost = "no"
             
@@ -131,59 +202,10 @@ def main(args):
     config_env = config.asDict()
     config_env.update(os.environ)
 
-    print `config_env`
-    # Things that need to be done before any of the builds
-    initialTask = Task([ Job("cleanup", "distrib/all/build-setup", env=config_env),
-                         Job("makedocs", "distrib/all/build-docs", env=config_env),
-                         Job("maketarball", "distrib/all/build-sources", env=config_env),
-                         ])
-    
-    # Build tasks.  Anything that can be done in parallel (depends greatly
-    # on the nature of the build machines configurations...) is a separate
-    # task.
-    
-    jaguarTask =  Task( Job("whopper.23",
-                            "distrib/all/build-osx", [config.OSX_HOST_jaguar, "jaguar", "2.3"], env=config_env) )
-    
-    pantherTask =  Task([ Job("bigmac.23", 
-                              "distrib/all/build-osx", [config.OSX_HOST_panther, "panther", "2.3"], env=config_env),
-                          Job("bigmac.24",
-                              "distrib/all/build-osx", [config.OSX_HOST_panther, "panther", "2.4"], env=config_env)
-                         ])
-    
-    beastTask1 = Task([ Job("beast.23",     "distrib/all/build-windows", ["2.3"], env=config_env),
-                        Job("beast.24",     "distrib/all/build-windows", ["2.4"], env=config_env),
-                        Job("co-mdk102.24", "distrib/all/build-rpm", ["beast", "co-mdk102","mdk102","2.4"], env=config_env),
-                        ])
-    
-    beastTask2 = Task([ Job("co-fc2.23",    "distrib/all/build-rpm", ["beast", "co-fc2",   "fc2",   "2.3"], env=config_env),
-                        Job("co-mdk101.23", "distrib/all/build-rpm", ["beast", "co-mdk101","mdk101","2.3"], env=config_env),
-                        Job("co-fc2.24",    "distrib/all/build-rpm", ["beast", "co-fc2",   "fc2",   "2.4"], env=config_env),
-                        #Job("co-mdk101.24", "distrib/all/build-rpm", ["beast", "co-mdk101","mdk101","2.4"], env=config),
-                        ])
-    
-    cyclopsTask = Task([ Job("co-mdk92.23",  "distrib/all/build-rpm", ["cyclops", "co-mdk92", "mdk92", "2.3"], env=config_env),
-                         Job("co-rh9.23",    "distrib/all/build-rpm", ["cyclops", "co-rh9",   "rh9",   "2.3"], env=config_env),
-                         Job("co-mdk92.24",  "distrib/all/build-rpm", ["cyclops", "co-mdk92", "mdk92", "2.4"], env=config_env),
-                         Job("co-rh9.24",    "distrib/all/build-rpm", ["cyclops", "co-rh9",   "rh9",   "2.4"], env=config_env),
-                         ])
-    
-    buildTasks = [ jaguarTask,
-                   pantherTask,
-                   beastTask1,
-                   beastTask2,
-                   cyclopsTask,
-                   ]
-    
-    # Finalization.  This is for things that must wait until all the
-    # builds are done, such as copying the installers someplace, sending
-    # emails, etc.
-    finalizationTask = Task( Job("", "distrib/all/build-finalize", env=config_env) )
-
+    initialTask, buildTasks, finalizationTask = getTasks(config_env)
 
     print "Build getting started at: ", time.ctime()
 
-
     # Run the first task, which will create the docs and sources tarballs
     tr = TaskRunner(initialTask)
     rc = tr.run()