diff options
| -rwxr-xr-x | bitbake/bin/bitbake | 3 | ||||
| -rw-r--r-- | bitbake/lib/bb/command.py | 20 | ||||
| -rw-r--r-- | bitbake/lib/bb/cooker.py | 47 | ||||
| -rw-r--r-- | bitbake/lib/bb/cookerdata.py | 57 | ||||
| -rw-r--r-- | bitbake/lib/bb/ui/depexp.py | 16 | ||||
| -rw-r--r-- | bitbake/lib/bb/ui/goggle.py | 14 | ||||
| -rwxr-xr-x | bitbake/lib/bb/ui/hob.py | 3 | ||||
| -rw-r--r-- | bitbake/lib/bb/ui/knotty.py | 19 | ||||
| -rw-r--r-- | bitbake/lib/bb/ui/ncurses.py | 14 |
9 files changed, 104 insertions, 89 deletions
diff --git a/bitbake/bin/bitbake b/bitbake/bin/bitbake index 7087d2d94b..c87e5b3984 100755 --- a/bitbake/bin/bitbake +++ b/bitbake/bin/bitbake | |||
| @@ -238,7 +238,6 @@ def main(): | |||
| 238 | try: | 238 | try: |
| 239 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) | 239 | configuration.setServerRegIdleCallback(server.getServerIdleCB()) |
| 240 | cooker = bb.cooker.BBCooker(configuration) | 240 | cooker = bb.cooker.BBCooker(configuration) |
| 241 | cooker.parseCommandLine() | ||
| 242 | 241 | ||
| 243 | server.addcooker(cooker) | 242 | server.addcooker(cooker) |
| 244 | server.saveConnectionDetails() | 243 | server.saveConnectionDetails() |
| @@ -272,7 +271,7 @@ def main(): | |||
| 272 | os.environ[k] = cleanedvars[k] | 271 | os.environ[k] = cleanedvars[k] |
| 273 | 272 | ||
| 274 | try: | 273 | try: |
| 275 | return server.launchUI(ui_main, server_connection.connection, server_connection.events) | 274 | return server.launchUI(ui_main, server_connection.connection, server_connection.events, configParams) |
| 276 | finally: | 275 | finally: |
| 277 | bb.event.ui_queue = [] | 276 | bb.event.ui_queue = [] |
| 278 | server_connection.terminate() | 277 | server_connection.terminate() |
diff --git a/bitbake/lib/bb/command.py b/bitbake/lib/bb/command.py index 8577df6e0c..29d31d5985 100644 --- a/bitbake/lib/bb/command.py +++ b/bitbake/lib/bb/command.py | |||
| @@ -143,18 +143,6 @@ class CommandsSync: | |||
| 143 | """ | 143 | """ |
| 144 | command.cooker.stop() | 144 | command.cooker.stop() |
| 145 | 145 | ||
| 146 | def getCmdLineAction(self, command, params): | ||
| 147 | """ | ||
| 148 | Get any command parsed from the commandline | ||
| 149 | """ | ||
| 150 | cmd_action = command.cooker.commandlineAction | ||
| 151 | if cmd_action is None: | ||
| 152 | return None | ||
| 153 | elif 'msg' in cmd_action and cmd_action['msg']: | ||
| 154 | raise CommandError(cmd_action['msg']) | ||
| 155 | else: | ||
| 156 | return cmd_action['action'] | ||
| 157 | |||
| 158 | def getVariable(self, command, params): | 146 | def getVariable(self, command, params): |
| 159 | """ | 147 | """ |
| 160 | Read the value of a variable from configuration.data | 148 | Read the value of a variable from configuration.data |
| @@ -174,6 +162,14 @@ class CommandsSync: | |||
| 174 | value = str(params[1]) | 162 | value = str(params[1]) |
| 175 | command.cooker.configuration.data.setVar(varname, value) | 163 | command.cooker.configuration.data.setVar(varname, value) |
| 176 | 164 | ||
| 165 | def setConfig(self, command, params): | ||
| 166 | """ | ||
| 167 | Set the value of variable in configuration | ||
| 168 | """ | ||
| 169 | varname = params[0] | ||
| 170 | value = str(params[1]) | ||
| 171 | setattr(command.cooker.configuration, varname, value) | ||
| 172 | |||
| 177 | def enableDataTracking(self, command, params): | 173 | def enableDataTracking(self, command, params): |
| 178 | """ | 174 | """ |
| 179 | Enable history tracking for variables | 175 | Enable history tracking for variables |
diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 1a2c01639e..ca544558f0 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py | |||
| @@ -147,10 +147,6 @@ class BBCooker: | |||
| 147 | if not self.lock: | 147 | if not self.lock: |
| 148 | bb.fatal("Only one copy of bitbake should be run against a build directory") | 148 | bb.fatal("Only one copy of bitbake should be run against a build directory") |
| 149 | 149 | ||
| 150 | bbpkgs = self.configuration.data.getVar('BBPKGS', True) | ||
| 151 | if bbpkgs and len(self.configuration.pkgs_to_build) == 0: | ||
| 152 | self.configuration.pkgs_to_build.extend(bbpkgs.split()) | ||
| 153 | |||
| 154 | # | 150 | # |
| 155 | # Special updated configuration we use for firing events | 151 | # Special updated configuration we use for firing events |
| 156 | # | 152 | # |
| @@ -175,7 +171,7 @@ class BBCooker: | |||
| 175 | 171 | ||
| 176 | def initConfigurationData(self): | 172 | def initConfigurationData(self): |
| 177 | self.configuration.data = bb.data.init() | 173 | self.configuration.data = bb.data.init() |
| 178 | if self.configuration.show_environment: | 174 | if self.configuration.tracking: |
| 179 | self.configuration.data.enableTracking() | 175 | self.configuration.data.enableTracking() |
| 180 | 176 | ||
| 181 | if not self.configuration.server_register_idlecallback: | 177 | if not self.configuration.server_register_idlecallback: |
| @@ -203,9 +199,6 @@ class BBCooker: | |||
| 203 | logger.exception("Error parsing configuration files") | 199 | logger.exception("Error parsing configuration files") |
| 204 | sys.exit(1) | 200 | sys.exit(1) |
| 205 | 201 | ||
| 206 | if not self.configuration.cmd: | ||
| 207 | self.configuration.cmd = self.configuration.data.getVar("BB_DEFAULT_TASK", True) or "build" | ||
| 208 | |||
| 209 | def saveConfigurationVar(self, var, val, default_file): | 202 | def saveConfigurationVar(self, var, val, default_file): |
| 210 | 203 | ||
| 211 | replaced = False | 204 | replaced = False |
| @@ -309,44 +302,6 @@ class BBCooker: | |||
| 309 | 302 | ||
| 310 | self.handleCollections( self.configuration.data.getVar("BBFILE_COLLECTIONS", True) ) | 303 | self.handleCollections( self.configuration.data.getVar("BBFILE_COLLECTIONS", True) ) |
| 311 | 304 | ||
| 312 | def parseCommandLine(self): | ||
| 313 | # Parse any commandline into actions | ||
| 314 | self.commandlineAction = {'action':None, 'msg':None} | ||
| 315 | if self.configuration.show_environment: | ||
| 316 | if 'world' in self.configuration.pkgs_to_build: | ||
| 317 | self.commandlineAction['msg'] = "'world' is not a valid target for --environment." | ||
| 318 | elif 'universe' in self.configuration.pkgs_to_build: | ||
| 319 | self.commandlineAction['msg'] = "'universe' is not a valid target for --environment." | ||
| 320 | elif len(self.configuration.pkgs_to_build) > 1: | ||
| 321 | self.commandlineAction['msg'] = "Only one target can be used with the --environment option." | ||
| 322 | elif self.configuration.buildfile and len(self.configuration.pkgs_to_build) > 0: | ||
| 323 | self.commandlineAction['msg'] = "No target should be used with the --environment and --buildfile options." | ||
| 324 | elif len(self.configuration.pkgs_to_build) > 0: | ||
| 325 | self.commandlineAction['action'] = ["showEnvironmentTarget", self.configuration.pkgs_to_build] | ||
| 326 | self.configuration.data.setVar("BB_CONSOLELOG", None) | ||
| 327 | else: | ||
| 328 | self.commandlineAction['action'] = ["showEnvironment", self.configuration.buildfile] | ||
| 329 | self.configuration.data.setVar("BB_CONSOLELOG", None) | ||
| 330 | elif self.configuration.buildfile is not None: | ||
| 331 | self.commandlineAction['action'] = ["buildFile", self.configuration.buildfile, self.configuration.cmd] | ||
| 332 | elif self.configuration.revisions_changed: | ||
| 333 | self.commandlineAction['action'] = ["compareRevisions"] | ||
| 334 | elif self.configuration.show_versions: | ||
| 335 | self.commandlineAction['action'] = ["showVersions"] | ||
| 336 | elif self.configuration.parse_only: | ||
| 337 | self.commandlineAction['action'] = ["parseFiles"] | ||
| 338 | elif self.configuration.dot_graph: | ||
| 339 | if self.configuration.pkgs_to_build: | ||
| 340 | self.commandlineAction['action'] = ["generateDotGraph", self.configuration.pkgs_to_build, self.configuration.cmd] | ||
| 341 | else: | ||
| 342 | self.commandlineAction['msg'] = "Please specify a package name for dependency graph generation." | ||
| 343 | else: | ||
| 344 | if self.configuration.pkgs_to_build: | ||
| 345 | self.commandlineAction['action'] = ["buildTargets", self.configuration.pkgs_to_build, self.configuration.cmd] | ||
| 346 | else: | ||
| 347 | #self.commandlineAction['msg'] = "Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information." | ||
| 348 | self.commandlineAction = None | ||
| 349 | |||
| 350 | def runCommands(self, server, data, abort): | 305 | def runCommands(self, server, data, abort): |
| 351 | """ | 306 | """ |
| 352 | Run any queued asynchronous command | 307 | Run any queued asynchronous command |
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py index 2c3275ac65..3c2469ef87 100644 --- a/bitbake/lib/bb/cookerdata.py +++ b/bitbake/lib/bb/cookerdata.py | |||
| @@ -50,6 +50,61 @@ class ConfigParameters(object): | |||
| 50 | def parseEnvironment(self): | 50 | def parseEnvironment(self): |
| 51 | return os.environ.copy() | 51 | return os.environ.copy() |
| 52 | 52 | ||
| 53 | def updateFromServer(self, server): | ||
| 54 | if not self.options.cmd: | ||
| 55 | defaulttask, error = server.runCommand(["getVariable", "BB_DEFAULT_TASK"]) | ||
| 56 | if error: | ||
| 57 | raise Exception("Unable to get the value of BB_DEFAULT_TASK from the server: %s" % error) | ||
| 58 | self.options.cmd = defaulttask or "build" | ||
| 59 | _, error = server.runCommand(["setConfig", "cmd", self.options.cmd]) | ||
| 60 | if error: | ||
| 61 | raise Exception("Unable to set configuration option 'cmd' on the server: %s" % error) | ||
| 62 | |||
| 63 | if not self.options.pkgs_to_build: | ||
| 64 | bbpkgs, error = server.runCommand(["getVariable", "BBPKGS"]) | ||
| 65 | if error: | ||
| 66 | raise Exception("Unable to get the value of BBPKGS from the server: %s" % error) | ||
| 67 | if bbpkgs: | ||
| 68 | self.options.pkgs_to_build.extend(bbpkgs.split()) | ||
| 69 | |||
| 70 | def parseActions(self): | ||
| 71 | # Parse any commandline into actions | ||
| 72 | action = {'action':None, 'msg':None} | ||
| 73 | if self.options.show_environment: | ||
| 74 | if 'world' in self.options.pkgs_to_build: | ||
| 75 | action['msg'] = "'world' is not a valid target for --environment." | ||
| 76 | elif 'universe' in self.options.pkgs_to_build: | ||
| 77 | action['msg'] = "'universe' is not a valid target for --environment." | ||
| 78 | elif len(self.options.pkgs_to_build) > 1: | ||
| 79 | action['msg'] = "Only one target can be used with the --environment option." | ||
| 80 | elif self.options.buildfile and len(self.options.pkgs_to_build) > 0: | ||
| 81 | action['msg'] = "No target should be used with the --environment and --buildfile options." | ||
| 82 | elif len(self.options.pkgs_to_build) > 0: | ||
| 83 | action['action'] = ["showEnvironmentTarget", self.options.pkgs_to_build] | ||
| 84 | else: | ||
| 85 | action['action'] = ["showEnvironment", self.options.buildfile] | ||
| 86 | elif self.options.buildfile is not None: | ||
| 87 | action['action'] = ["buildFile", self.options.buildfile, self.options.cmd] | ||
| 88 | elif self.options.revisions_changed: | ||
| 89 | action['action'] = ["compareRevisions"] | ||
| 90 | elif self.options.show_versions: | ||
| 91 | action['action'] = ["showVersions"] | ||
| 92 | elif self.options.parse_only: | ||
| 93 | action['action'] = ["parseFiles"] | ||
| 94 | elif self.options.dot_graph: | ||
| 95 | if self.options.pkgs_to_build: | ||
| 96 | action['action'] = ["generateDotGraph", self.options.pkgs_to_build, self.options.cmd] | ||
| 97 | else: | ||
| 98 | action['msg'] = "Please specify a package name for dependency graph generation." | ||
| 99 | else: | ||
| 100 | if self.options.pkgs_to_build: | ||
| 101 | action['action'] = ["buildTargets", self.options.pkgs_to_build, self.options.cmd] | ||
| 102 | else: | ||
| 103 | #action['msg'] = "Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information." | ||
| 104 | action = None | ||
| 105 | self.options.initialaction = action | ||
| 106 | return action | ||
| 107 | |||
| 53 | class CookerConfiguration(object): | 108 | class CookerConfiguration(object): |
| 54 | """ | 109 | """ |
| 55 | Manages build options and configurations for one run | 110 | Manages build options and configurations for one run |
| @@ -61,7 +116,7 @@ class CookerConfiguration(object): | |||
| 61 | self.prefile = [] | 116 | self.prefile = [] |
| 62 | self.postfile = [] | 117 | self.postfile = [] |
| 63 | self.debug = 0 | 118 | self.debug = 0 |
| 64 | self.pkgs_to_build = [] | 119 | self.cmd = None |
| 65 | 120 | ||
| 66 | def setConfigParameters(self, parameters): | 121 | def setConfigParameters(self, parameters): |
| 67 | self.params = parameters | 122 | self.params = parameters |
diff --git a/bitbake/lib/bb/ui/depexp.py b/bitbake/lib/bb/ui/depexp.py index 85910f6925..885c31aeac 100644 --- a/bitbake/lib/bb/ui/depexp.py +++ b/bitbake/lib/bb/ui/depexp.py | |||
| @@ -196,16 +196,18 @@ class gtkthread(threading.Thread): | |||
| 196 | gtkthread.quit.set() | 196 | gtkthread.quit.set() |
| 197 | 197 | ||
| 198 | 198 | ||
| 199 | def main(server, eventHandler): | 199 | def main(server, eventHandler, params): |
| 200 | try: | 200 | try: |
| 201 | cmdline, error = server.runCommand(["getCmdLineAction"]) | 201 | params.updateFromServer(server) |
| 202 | if error: | 202 | cmdline = params.parseActions() |
| 203 | print("Error getting bitbake commandline: %s" % error) | 203 | if not cmdline: |
| 204 | return 1 | ||
| 205 | elif not cmdline: | ||
| 206 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") | 204 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") |
| 207 | return 1 | 205 | return 1 |
| 208 | elif not cmdline or cmdline[0] != "generateDotGraph": | 206 | if 'msg' in cmdline and cmdline['msg']: |
| 207 | logger.error(cmdline['msg']) | ||
| 208 | return 1 | ||
| 209 | cmdline = cmdline['action'] | ||
| 210 | if not cmdline or cmdline[0] != "generateDotGraph": | ||
| 209 | print("This UI is only compatible with the -g option") | 211 | print("This UI is only compatible with the -g option") |
| 210 | return 1 | 212 | return 1 |
| 211 | ret, error = server.runCommand(["generateDepTreeEvent", cmdline[1], cmdline[2]]) | 213 | ret, error = server.runCommand(["generateDepTreeEvent", cmdline[1], cmdline[2]]) |
diff --git a/bitbake/lib/bb/ui/goggle.py b/bitbake/lib/bb/ui/goggle.py index e8a54ab295..16faba4c21 100644 --- a/bitbake/lib/bb/ui/goggle.py +++ b/bitbake/lib/bb/ui/goggle.py | |||
| @@ -63,7 +63,7 @@ class MainWindow (gtk.Window): | |||
| 63 | scrolled_window.add (self.cur_build_tv) | 63 | scrolled_window.add (self.cur_build_tv) |
| 64 | 64 | ||
| 65 | 65 | ||
| 66 | def main (server, eventHandler): | 66 | def main (server, eventHandler, params): |
| 67 | gobject.threads_init() | 67 | gobject.threads_init() |
| 68 | gtk.gdk.threads_init() | 68 | gtk.gdk.threads_init() |
| 69 | 69 | ||
| @@ -80,13 +80,15 @@ def main (server, eventHandler): | |||
| 80 | running_build.connect ("build-failed", running_build_failed_cb) | 80 | running_build.connect ("build-failed", running_build_failed_cb) |
| 81 | 81 | ||
| 82 | try: | 82 | try: |
| 83 | cmdline, error = server.runCommand(["getCmdLineAction"]) | 83 | params.updateFromServer(server) |
| 84 | if error: | 84 | cmdline = params.parseActions() |
| 85 | print("Error getting bitbake commandline: %s" % error) | 85 | if not cmdline: |
| 86 | return 1 | ||
| 87 | elif not cmdline: | ||
| 88 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") | 86 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") |
| 89 | return 1 | 87 | return 1 |
| 88 | if 'msg' in cmdline and cmdline['msg']: | ||
| 89 | logger.error(cmdline['msg']) | ||
| 90 | return 1 | ||
| 91 | cmdline = cmdline['action'] | ||
| 90 | ret, error = server.runCommand(cmdline) | 92 | ret, error = server.runCommand(cmdline) |
| 91 | if error: | 93 | if error: |
| 92 | print("Error running command '%s': %s" % (cmdline, error)) | 94 | print("Error running command '%s': %s" % (cmdline, error)) |
diff --git a/bitbake/lib/bb/ui/hob.py b/bitbake/lib/bb/ui/hob.py index 55bd84cca8..2c75cb8fd1 100755 --- a/bitbake/lib/bb/ui/hob.py +++ b/bitbake/lib/bb/ui/hob.py | |||
| @@ -58,7 +58,8 @@ def event_handle_idle_func(eventHandler, hobHandler): | |||
| 58 | event = eventHandler.getEvent() | 58 | event = eventHandler.getEvent() |
| 59 | return True | 59 | return True |
| 60 | 60 | ||
| 61 | def main (server = None, eventHandler = None): | 61 | def main (server, eventHandler, params): |
| 62 | params.updateFromServer(server) | ||
| 62 | gobject.threads_init() | 63 | gobject.threads_init() |
| 63 | 64 | ||
| 64 | # That indicates whether the Hob and the bitbake server are | 65 | # That indicates whether the Hob and the bitbake server are |
diff --git a/bitbake/lib/bb/ui/knotty.py b/bitbake/lib/bb/ui/knotty.py index 6ea7d8694c..389c3cc64d 100644 --- a/bitbake/lib/bb/ui/knotty.py +++ b/bitbake/lib/bb/ui/knotty.py | |||
| @@ -216,7 +216,7 @@ class TerminalFilter(object): | |||
| 216 | fd = sys.stdin.fileno() | 216 | fd = sys.stdin.fileno() |
| 217 | self.termios.tcsetattr(fd, self.termios.TCSADRAIN, self.stdinbackup) | 217 | self.termios.tcsetattr(fd, self.termios.TCSADRAIN, self.stdinbackup) |
| 218 | 218 | ||
| 219 | def main(server, eventHandler, tf = TerminalFilter): | 219 | def main(server, eventHandler, params, tf = TerminalFilter): |
| 220 | 220 | ||
| 221 | # Get values of variables which control our output | 221 | # Get values of variables which control our output |
| 222 | includelogs, error = server.runCommand(["getVariable", "BBINCLUDELOGS"]) | 222 | includelogs, error = server.runCommand(["getVariable", "BBINCLUDELOGS"]) |
| @@ -245,7 +245,8 @@ def main(server, eventHandler, tf = TerminalFilter): | |||
| 245 | bb.msg.addDefaultlogFilter(console) | 245 | bb.msg.addDefaultlogFilter(console) |
| 246 | console.setFormatter(format) | 246 | console.setFormatter(format) |
| 247 | logger.addHandler(console) | 247 | logger.addHandler(console) |
| 248 | if consolelogfile: | 248 | |
| 249 | if consolelogfile and not params.options.show_environment: | ||
| 249 | bb.utils.mkdirhier(os.path.dirname(consolelogfile)) | 250 | bb.utils.mkdirhier(os.path.dirname(consolelogfile)) |
| 250 | conlogformat = bb.msg.BBLogFormatter(format_str) | 251 | conlogformat = bb.msg.BBLogFormatter(format_str) |
| 251 | consolelog = logging.FileHandler(consolelogfile) | 252 | consolelog = logging.FileHandler(consolelogfile) |
| @@ -254,14 +255,16 @@ def main(server, eventHandler, tf = TerminalFilter): | |||
| 254 | logger.addHandler(consolelog) | 255 | logger.addHandler(consolelog) |
| 255 | 256 | ||
| 256 | try: | 257 | try: |
| 257 | cmdline, error = server.runCommand(["getCmdLineAction"]) | 258 | params.updateFromServer(server) |
| 258 | if error: | 259 | cmdline = params.parseActions() |
| 259 | logger.error("Unable to get bitbake commandline arguments: %s" % error) | 260 | if not cmdline: |
| 260 | return 1 | ||
| 261 | elif not cmdline: | ||
| 262 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") | 261 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") |
| 263 | return 1 | 262 | return 1 |
| 264 | ret, error = server.runCommand(cmdline) | 263 | if 'msg' in cmdline and cmdline['msg']: |
| 264 | logger.error(cmdline['msg']) | ||
| 265 | return 1 | ||
| 266 | |||
| 267 | ret, error = server.runCommand(cmdline['action']) | ||
| 265 | if error: | 268 | if error: |
| 266 | logger.error("Command '%s' failed: %s" % (cmdline, error)) | 269 | logger.error("Command '%s' failed: %s" % (cmdline, error)) |
| 267 | return 1 | 270 | return 1 |
diff --git a/bitbake/lib/bb/ui/ncurses.py b/bitbake/lib/bb/ui/ncurses.py index 98647fc3e0..c45ffd63ac 100644 --- a/bitbake/lib/bb/ui/ncurses.py +++ b/bitbake/lib/bb/ui/ncurses.py | |||
| @@ -196,7 +196,7 @@ class NCursesUI: | |||
| 196 | # t.start() | 196 | # t.start() |
| 197 | 197 | ||
| 198 | #-------------------------------------------------------------------------# | 198 | #-------------------------------------------------------------------------# |
| 199 | def main(self, stdscr, server, eventHandler): | 199 | def main(self, stdscr, server, eventHandler, params): |
| 200 | #-------------------------------------------------------------------------# | 200 | #-------------------------------------------------------------------------# |
| 201 | height, width = stdscr.getmaxyx() | 201 | height, width = stdscr.getmaxyx() |
| 202 | 202 | ||
| @@ -236,13 +236,15 @@ class NCursesUI: | |||
| 236 | shutdown = 0 | 236 | shutdown = 0 |
| 237 | 237 | ||
| 238 | try: | 238 | try: |
| 239 | cmdline, error = server.runCommand(["getCmdLineAction"]) | 239 | params.updateFromServer(server) |
| 240 | cmdline = params.parseActions() | ||
| 240 | if not cmdline: | 241 | if not cmdline: |
| 241 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") | 242 | print("Nothing to do. Use 'bitbake world' to build everything, or run 'bitbake --help' for usage information.") |
| 242 | return | 243 | return 1 |
| 243 | elif error: | 244 | if 'msg' in cmdline and cmdline['msg']: |
| 244 | print("Error getting bitbake commandline: %s" % error) | 245 | logger.error(cmdline['msg']) |
| 245 | return | 246 | return 1 |
| 247 | cmdline = cmdline['action'] | ||
| 246 | ret, error = server.runCommand(cmdline) | 248 | ret, error = server.runCommand(cmdline) |
| 247 | if error: | 249 | if error: |
| 248 | print("Error running command '%s': %s" % (cmdline, error)) | 250 | print("Error running command '%s': %s" % (cmdline, error)) |
