コード例 #1
0
ファイル: build.py プロジェクト: nussbrot/ronin
    project = Project('Go Example')

    extensions = [GoPackage(project, 'compile_functions')]

    # Compile main package
    Phase(project=project,
          name='compile_main',
          executor=GoCompile(),
          inputs=glob('src/main.go'),
          extensions=extensions,
          output='main')

    # Compile functions package
    Phase(project=project,
          name='compile_functions',
          executor=GoCompile(),
          inputs=glob('src/functions.go'),
          output='ronin/functions')

    # Link
    Phase(project=project,
          name='link',
          executor=GoLink(),
          inputs_from=['compile_main'],
          extensions=extensions,
          output='example',
          run_output=1 if ctx.build.run else 0)

    cli(project)
コード例 #2
0
from ronin.projects import Project
from ronin.utils.paths import glob, input_path

with new_context() as ctx:

    # Library
    library = Project('gcc Multi-Project Example: Library', file_name='library')
    executor = GccBuild()
    executor.create_shared_library()
    executor.pic()
    Phase(project=library,
          name='build',
          executor=executor,
          inputs=glob('src/foo/**/*.c'),
          output='foo')
    
    # Main
    main = Project('Multi-Project Example: Main', file_name='main')
    executor = GccBuild()
    executor.add_include_path(input_path('src/foo'))
    executor.linker_rpath_origin() # to load the .so file from executable's directory
    Phase(project=main,
          name='build',
          executor=executor,
          inputs=glob('src/main/**/*.c'),
          extensions=[OutputsExtension(library, 'build')],
          output='main',
          run_output=1 if ctx.build.run else 0)
    
    cli(library, main)
コード例 #3
0
    Phase(project=ard,
          name='ASM Sources Compile',
          executor=ardASMCompile,
          inputs=aASMSources)

    Phase(project=ard,
          name='Core Link',
          executor=ardAR,
          inputs_from=[
              'C Sources Compile', 'CXX Sources Compile', 'ASM Sources Compile'
          ],
          output='core.a')

    Phase(project=ard,
          name='Final Link',
          executor=ardLink,
          inputs_from=['Core Link'],
          output='robobo.elf')

    Phase(project=ard,
          name='Binary object creation',
          executor=ardBinary,
          inputs_from=['Final Link'],
          output='robobo.bin')

    if (ctx.build.test):
        cli(utproject)
    else:
        cli(ard)
コード例 #4
0
ファイル: build.py プロジェクト: yorickr/VisionCPP
    link = Phase()
    link.executor = GccLink()
    link.inputs_from.append(compile)
    link.extensions += extensions
    link.output = 'opencv'
    link.executor.hooks.append(debug_hook)
    if ctx.build.run:
        link.run_output = 1
        argv = str(ctx.get('args.argv'))
        print("Running with " + argv)
        to_run = ["{output}", argv]
        link.run_command = to_run

    project.phases['link'] = link
    project.phases['compile'] = compile
    return project


with new_context() as ctx:
    project_version = int(ctx.get('args.version'))
    print("Running project version " + str(project_version))
    if project_version is 1:
        p1 = generate_project('./inleiding-vision-cpp/', 'VisionCPP-1')
        cli(p1)
    elif project_version is 2:
        p2 = generate_project('./vision-cpp-gevorderden/', 'VisionCPP-2')
        cli(p2)
    else:
        print("No project version specified")
コード例 #5
0
        glob('src/receiver/configuration.gs') + \
        glob('src/version.gs') + \
        glob('src/models.gs') + \
        glob('src/iterators.gs') + \
        glob('src/utilities.gs') + \
        glob_src('src/lib/logging/**') + \
        glob_src('src/lib/console/**') + \
        glob_src('src/lib/nap/**') + \
        glob_src('src/lib/json/**') + \
        glob_src('src/lib/dbus/**') + \
        glob_src('src/lib/gtk/**') + \
        glob_src('src/lib/avahi/**') + \
        glob_src('src/lib/scrobbling/**')

    khovsgol_extensions = [
        dependencies.libsoup, dependencies.gee, dependencies.json,
        dependencies.posix, dependencies.sqlite, dependencies.gtk,
        dependencies.unity, dependencies.indicate, dependencies.avahi,
        dependencies.avahi_gobject, dependencies.avahi_direct, dependencies.m
    ]

    khovsgold = create_project('khovsgold', khovsgold_inputs,
                               khovsgold_extensions)
    khovsgolr = create_project('khovsgolr', khovsgolr_inputs,
                               khovsgolr_extensions)
    khovsgolc = create_project('khovsgolc', khovsgolc_inputs,
                               khovsgolc_extensions)
    khovsgol = create_project('khovsgol', khovsgol_inputs, khovsgol_extensions)

    cli(khovsgold, khovsgolr, khovsgolc, khovsgol)
コード例 #6
0
ファイル: build.py プロジェクト: tliron/khovsgol
        glob('src/utilities.gs') + \
        glob_src('src/lib/logging/**') + \
        glob_src('src/lib/console/**') + \
        glob_src('src/lib/nap/**') + \
        glob_src('src/lib/json/**') + \
        glob_src('src/lib/dbus/**') + \
        glob_src('src/lib/gtk/**') + \
        glob_src('src/lib/avahi/**') + \
        glob_src('src/lib/scrobbling/**')
    
    khovsgol_extensions = [
        dependencies.libsoup,
        dependencies.gee,
        dependencies.json,
        dependencies.posix,
        dependencies.sqlite,
        dependencies.gtk,
        dependencies.unity,
        dependencies.indicate,
        dependencies.avahi,
        dependencies.avahi_gobject,
        dependencies.avahi_direct,
        dependencies.m]
    
    khovsgold = create_project('khovsgold', khovsgold_inputs, khovsgold_extensions)
    khovsgolr = create_project('khovsgolr', khovsgolr_inputs, khovsgolr_extensions)
    khovsgolc = create_project('khovsgolc', khovsgolc_inputs, khovsgolc_extensions)
    khovsgol = create_project('khovsgol', khovsgol_inputs, khovsgol_extensions)
   
    cli(khovsgold, khovsgolr, khovsgolc, khovsgol)