def main(): init_logging(logging.DEBUG) parser = argparse.ArgumentParser() parser.add_argument('--version', action='version', version=version()) subparsers = parser.add_subparsers(title = 'Commands', dest='command') parser_gen = subparsers.add_parser('gen') parser_init = subparsers.add_parser('init') logger = get_logger() parser_init.add_argument('type', type=str, help = 'Type of package (application or library') parser_gen.add_argument('--variant', type=str, default = 'src', help = 'Variant to build e.g. test or linux') parser_gen.add_argument("--rtems", type=str, default = None, help = "RTEMS Makefile Path") parser_gen.add_argument("--verbose", action='store_true', default=False, help = "Print a verbose compilation tree") parser_gen.add_argument("--fast", action="store_true", default = False, help = "Update dependencies without fetching remote tags ") parser_gen.add_argument("--frozen", action="store_true", default = False, help = "Use the frozen dependencies in versions.txt") parser_gen.add_argument('--platform', type=str, default = 'linux', help = 'platform to build e.g. linux, rtems') commands = { 'gen' : generate_build_file, 'init' : init } namespace = parser.parse_args() if 'command' in namespace: command = namespace.command if command in commands: path = os.getcwd() commands[command](path, namespace)
def main(): init_logging(logging.DEBUG) parser = argparse.ArgumentParser() parser.add_argument('--version', action='version', version=version()) subparsers = parser.add_subparsers(title='Commands', dest='command') parser_gen = subparsers.add_parser('gen') parser_init = subparsers.add_parser('init') logger = get_logger() parser_init.add_argument('type', type=str, help='Type of package (application or library') parser_gen.add_argument('--variant', type=str, default='src', help='Variant to build e.g. test or linux') parser_gen.add_argument("--rtems", type=str, default=None, help="RTEMS Makefile Path") parser_gen.add_argument("--verbose", action='store_true', default=False, help="Print a verbose compilation tree") parser_gen.add_argument( "--fast", action="store_true", default=False, help="Update dependencies without fetching remote tags ") parser_gen.add_argument("--frozen", action="store_true", default=False, help="Use the frozen dependencies in versions.txt") parser_gen.add_argument('--platform', type=str, default='linux', help='platform to build e.g. linux, rtems') commands = {'gen': generate_build_file, 'init': init} namespace = parser.parse_args() if 'command' in namespace: command = namespace.command if command in commands: path = os.getcwd() commands[command](path, namespace)
import shutil from distutils.dir_util import copy_tree import pkgutil from pygments import highlight from pygments.lexers import PythonLexer from pygments.formatters import Terminal256Formatter from pygments.styles import get_style_by_name from pprint import pformat from os.path import join, splitext, relpath import tempfile from termcolor import colored from clyde2.clyde_logging import get_logger logger = get_logger() from pkg_resources import resource_filename style = get_style_by_name('friendly') def pprint_color(obj): print highlight(pformat(obj), PythonLexer(), Terminal256Formatter(style=style)) def resource(name): filename = resource_filename(__name__, join('../', name)) return filename def template_resource(template):
import json from os.path import splitext, join, realpath import shutil import yaml from distutils.dir_util import copy_tree import distutils from termcolor import colored from .common import temp_cwd, dict_contains, stable_sha from unidecode import unidecode from clyde2.clyde_logging import get_logger logger = get_logger() class CompilationError(Exception): def __init__(self, stderr=None): self.stderr = stderr Exception.__init__(self) def __repr__(self): return u"Compilation Failed\n\n\t" + unidecode( self.stderr.encode('utf-8')) def __str__(self): return "Compilation Error: \n\n" + unidecode( self.stderr.decode('utf-8'))