| OLD | NEW |
| 1 #!/usr/bin/python2.6 | 1 #!/usr/bin/python2.6 |
| 2 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 2 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 """Program to run emerge in parallel, for significant speedup. | 6 """Program to run emerge in parallel, for significant speedup. |
| 7 | 7 |
| 8 Usage: | 8 Usage: |
| 9 ./parallel_emerge [--board=BOARD] [--workon=PKGS] [--no-workon-deps] | 9 ./parallel_emerge [--board=BOARD] [--workon=PKGS] [--no-workon-deps] |
| 10 [emerge args] package" | 10 [emerge args] package" |
| (...skipping 620 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 631 | 631 |
| 632 # final_pkgs is a set of the packages we found in the final_db. These | 632 # final_pkgs is a set of the packages we found in the final_db. These |
| 633 # packages are either already installed, or will be installed by the time | 633 # packages are either already installed, or will be installed by the time |
| 634 # we're done. It's populated in BuildFinalPackageSet() | 634 # we're done. It's populated in BuildFinalPackageSet() |
| 635 final_pkgs = set() | 635 final_pkgs = set() |
| 636 | 636 |
| 637 # These packages take a really long time to build, so, for expediency, we | 637 # These packages take a really long time to build, so, for expediency, we |
| 638 # are blacklisting them from automatic rebuilds because one of their | 638 # are blacklisting them from automatic rebuilds because one of their |
| 639 # dependencies needs to be recompiled. | 639 # dependencies needs to be recompiled. |
| 640 rebuild_blacklist = set() | 640 rebuild_blacklist = set() |
| 641 for pkg in ("media-plugins/o3d", "dev-java/icedtea"): | 641 for pkg in ("chromeos-base/chromeos-chrome", "media-plugins/o3d", |
| 642 "dev-java/icedtea"): |
| 642 for match in final_db.match_pkgs(pkg): | 643 for match in final_db.match_pkgs(pkg): |
| 643 rebuild_blacklist.add(str(match.cpv)) | 644 rebuild_blacklist.add(str(match.cpv)) |
| 644 | 645 |
| 645 # deps_map is the actual dependency graph. | 646 # deps_map is the actual dependency graph. |
| 646 # | 647 # |
| 647 # Each package specifies a "needs" list and a "provides" list. The "needs" | 648 # Each package specifies a "needs" list and a "provides" list. The "needs" |
| 648 # list indicates which packages we depend on. The "provides" list | 649 # list indicates which packages we depend on. The "provides" list |
| 649 # indicates the reverse dependencies -- what packages need us. | 650 # indicates the reverse dependencies -- what packages need us. |
| 650 # | 651 # |
| 651 # We also provide some other information in the dependency graph: | 652 # We also provide some other information in the dependency graph: |
| (...skipping 1113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1765 # need to upgrade the rest of the packages. So we'll go ahead and do that. | 1766 # need to upgrade the rest of the packages. So we'll go ahead and do that. |
| 1766 if portage_upgrade: | 1767 if portage_upgrade: |
| 1767 args = sys.argv[1:] + ["--nomerge=sys-apps/portage"] | 1768 args = sys.argv[1:] + ["--nomerge=sys-apps/portage"] |
| 1768 os.execvp(os.path.realpath(sys.argv[0]), args) | 1769 os.execvp(os.path.realpath(sys.argv[0]), args) |
| 1769 | 1770 |
| 1770 print "Done" | 1771 print "Done" |
| 1771 sys.exit(0) | 1772 sys.exit(0) |
| 1772 | 1773 |
| 1773 if __name__ == "__main__": | 1774 if __name__ == "__main__": |
| 1774 main() | 1775 main() |
| OLD | NEW |