示例#1
0
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('--data',
                        help='pickled object of TCustomCommand class',
                        required=True)
    parser.add_argument('--src-root', help='$S real path', required=True)
    parser.add_argument('--build-root', help='$B real path', required=True)
    parser.add_argument('--tools',
                        help='binaries needed by command',
                        required=True,
                        nargs='+')
    args = parser.parse_args()

    encoded_cmd = args.data
    src_root = args.src_root
    build_root = args.build_root
    tools = args.tools

    assert (int(tools[0]) == len(tools[1:])), "tools quantity != tools number!"

    cmd_object = pickle.loads(base64.b64decode(encoded_cmd))

    cmd_object.set_source_root(src_root)
    cmd_object.set_build_root(build_root)

    if len(tools[1:]) == 0:
        cmd_object.run(common.get_interpreter_path())
    else:
        cmd_object.run(*tools[1:])
示例#2
0
 def do_run_java(self, binary, path):
     cmd = common.get_interpreter_path() + ['$S/build/scripts/run_swig_java.py', '--tool', binary, '--src', self.resolve_path(path)]
     for inc in self._incl_dirs:
         if inc:
             cmd += ['--flag', 'I' + self.resolve_path(inc)]
     cmd += ['--cpp-out', self._main_out, '--jsrc-out', '/'.join([self.resolve_path(self._bindir), self._out_name]), '--package', self._package]
     self.call(cmd)
示例#3
0
 def do_run_java(self, binary, path):
     cmd = common.get_interpreter_path() + ['$S/build/scripts/run_swig_java.py', '--tool', binary, '--src', self.resolve_path(path)]
     for inc in self._incl_dirs:
         if inc:
             cmd += ['--flag', 'I' + self.resolve_path(inc)]
     cmd += ['--cpp-out', self._main_out, '--jsrc-out', '/'.join([self.resolve_path(self._bindir), self._out_name]), '--package', self._package]
     self.call(cmd)
示例#4
0
 def do_run(self, binary, path):
     def incls():
         for x in self._incl_dirs:
             yield '-I'
             yield self.resolve_path(x)
     output_dir = os.path.dirname(self.resolve_path(common.get(self.output, 0)))
     cmd = common.get_interpreter_path() + ['$S/build/scripts/stdout2stderr.py', binary, '--cpp'] + list(incls()) + ['-o', output_dir, path]
     self.call(cmd)
示例#5
0
    def do_run(self, binary, path):
        def incls():
            for x in self._incl_dirs:
                yield '-I'
                yield self.resolve_path(x)

        output_dir = os.path.dirname(
            self.resolve_path(common.get(self.output, 0)))
        cmd = common.get_interpreter_path() + [
            '$S/build/scripts/stdout2stderr.py', binary, '--cpp'
        ] + list(incls()) + ['-o', output_dir, path]
        self.call(cmd)
示例#6
0
 def do_run(self, binary, path):
     def incls():
         for x in self._incl_dirs:
             yield '-I'
             yield self.resolve_path(x)
     output_dir = os.path.dirname(self.resolve_path(common.get(self.output, 0)))
     cmd = (common.get_interpreter_path() +
            ['$S/build/scripts/stdout2stderr.py', binary, '--cpp', '--keep-prefix', '--gen-mutable', '--schema', '-b'] +
            self.extra_arguments() +
            list(incls()) +
            ['-o', output_dir, path])
     self.call(cmd)
示例#7
0
 def do_run_java(self, binary, path):
     cmd = common.get_interpreter_path() + [
         '$S/build/scripts/run_swig_java.py', '--tool', binary, '--src',
         self.resolve_path(path)
     ]
     for flag in self._incl_flags():
         cmd.append('--flag=' + flag)
     cmd += [
         '--cpp-out', self._main_out, '--jsrc-out',
         '/'.join([self.resolve_path(self._bindir),
                   self._out_name]), '--package', self._package
     ]
     self.call(cmd)
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('--data', help='pickled object of TCustomCommand class', required=True)
    parser.add_argument('--src-root', help='$S real path', required=True)
    parser.add_argument('--build-root', help='$B real path', required=True)
    parser.add_argument('--tools', help='binaries needed by command', required=True, nargs='+')
    args = parser.parse_args()

    encoded_cmd = args.data
    src_root = args.src_root
    build_root = args.build_root
    tools = args.tools

    assert (int(tools[0]) == len(tools[1:])), "tools quantity != tools number!"

    cmd_object = pickle.loads(base64.b64decode(encoded_cmd))

    cmd_object.set_source_root(src_root)
    cmd_object.set_build_root(build_root)

    if len(tools[1:]) == 0:
        cmd_object.run(common.get_interpreter_path())
    else:
        cmd_object.run(*tools[1:])