diff options
Diffstat (limited to 'lldb/scripts/swig_bot_lib/client.py')
| -rw-r--r-- | lldb/scripts/swig_bot_lib/client.py | 32 |
1 files changed, 22 insertions, 10 deletions
diff --git a/lldb/scripts/swig_bot_lib/client.py b/lldb/scripts/swig_bot_lib/client.py index 6d21aaff4d9..80a3114ddb8 100644 --- a/lldb/scripts/swig_bot_lib/client.py +++ b/lldb/scripts/swig_bot_lib/client.py @@ -11,6 +11,7 @@ from __future__ import print_function # Python modules import argparse +import io import logging import os import socket @@ -23,8 +24,8 @@ from lldbsuite.support import fs from lldbsuite.support import sockutil # package imports -from . import config from . import local +from . import remote default_ip = "127.0.0.1" default_port = 8537 @@ -152,21 +153,32 @@ def run(args): if not os.path.isfile(options.swig_executable): logging.error("Swig executable '{}' does not exist." .format(options.swig_executable)) - gen_options = local.GenOptions() - gen_options.languages = options.languages - gen_options.src_root = options.src_root - gen_options.target_dir = options.target_dir - gen_options.swig_executable = options.swig_executable - local.generate(gen_options) + config = local.LocalConfig() + config.languages = options.languages + config.src_root = options.src_root + config.target_dir = options.target_dir + config.swig_executable = options.swig_executable + local.generate(config) else: logging.info("swig bot client using remote generation with server '{}'" .format(options.remote)) connection = None try: - config_json = config.generate_config_json(options) - packed_input = local.pack_archive(config_json, options) + config = remote.generate_config(options.languages) + logging.debug("Generated config json {}".format(config)) + inputs = [("include/lldb", ".h"), + ("include/lldb/API", ".h"), + ("scripts", ".swig"), + ("scripts/Python", ".swig"), + ("scripts/interface", ".i")] + zip_data = io.BytesIO() + packed_input = local.pack_archive(zip_data, options.src_root, inputs) + logging.info("(null) -> config.json") + packed_input.writestr("config.json", config) + packed_input.close() + connection = establish_remote_connection(options.remote) - response = transmit_data(connection, packed_input) + response = transmit_data(connection, zip_data.getvalue()) logging.debug("Received {} byte response.".format(len(response))) finally: if connection is not None: |

