diff options
Diffstat (limited to 'bitbake/bin')
| -rwxr-xr-x | bitbake/bin/bitbake | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake index 86cf3a8ae8..f44543de2c 100755 --- a/bitbake/bin/bitbake +++ b/bitbake/bin/bitbake | |||
| @@ -75,6 +75,18 @@ def get_ui(config): | |||
| 75 | sys.exit("FATAL: Invalid user interface '%s' specified.\n" | 75 | sys.exit("FATAL: Invalid user interface '%s' specified.\n" |
| 76 | "Valid interfaces: depexp, goggle, ncurses, hob, knotty [default]." % interface) | 76 | "Valid interfaces: depexp, goggle, ncurses, hob, knotty [default]." % interface) |
| 77 | 77 | ||
| 78 | def gather_extra_cache_data(): | ||
| 79 | extra = [] | ||
| 80 | interfaces = ['depexp', 'goggle', 'ncurses', 'hob', 'knotty'] | ||
| 81 | for i in interfaces: | ||
| 82 | try: | ||
| 83 | ui = __import__("bb.ui." + i, fromlist = [i]) | ||
| 84 | if hasattr(ui, "extraCaches"): | ||
| 85 | extra = extra + ui.extraCaches | ||
| 86 | del ui | ||
| 87 | except: | ||
| 88 | pass | ||
| 89 | return extra | ||
| 78 | 90 | ||
| 79 | # Display bitbake/OE warnings via the BitBake.Warnings logger, ignoring others""" | 91 | # Display bitbake/OE warnings via the BitBake.Warnings logger, ignoring others""" |
| 80 | warnlog = logging.getLogger("BitBake.Warnings") | 92 | warnlog = logging.getLogger("BitBake.Warnings") |
| @@ -237,6 +249,12 @@ def main(): | |||
| 237 | 249 | ||
| 238 | try: | 250 | try: |
| 239 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) | 251 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) |
| 252 | |||
| 253 | if configParams.server_only: | ||
| 254 | configuration.extra_caches = gather_extra_cache_data() | ||
| 255 | else: | ||
| 256 | configuration.extra_caches = getattr(ui_module, "extraCaches", []) | ||
| 257 | |||
| 240 | cooker = bb.cooker.BBCooker(configuration) | 258 | cooker = bb.cooker.BBCooker(configuration) |
| 241 | 259 | ||
| 242 | server.addcooker(cooker) | 260 | server.addcooker(cooker) |
