示例#1
0
文件: environment.py 项目: rogual/po
from os.path import join, normpath
import os
import contextlib

from command import command

import attributes
import package
import project
import paths
import select
import util

exit_path = join(paths.state, 'exit.bat')

executables = project.interface(lambda pkg: [])
initializers = project.interface(lambda pkg: [])
headers = project.interface(lambda pkg: [])
libraries = project.interface(lambda pkg: [])
pythonpath = project.interface(lambda pkg: [])

interface_vars = [
    (executables, 'PATH'),
    (headers, 'INCLUDE'),
    (libraries, 'LIB'),
    (pythonpath, 'PYTHONPATH')
]


def define_paths(project, paths):
    """Helper function to define paths for a project."""
示例#2
0
文件: system.py 项目: rogual/po
import repository
import project
import recipe

scan = project.interface(lambda pkg: [])


def get_packages():
    return recipe.get_list(scan)


def find_installed_packages(package_specifier):
    r = []
    for package in get_packages():
        if package_specifier.match(package):
            r.append(package)
    return r


repository.register("system", "System", get_packages, find_installed_packages)
示例#3
0
文件: standard.py 项目: rogual/po
import catalogue
import download
import package
import project
import select
import recipe
import paths
import util


catalogue_path = join(paths.state, 'catalogue')

no_factory = {}

# Projects can implement these
factory = project.interface(lambda prj, spec: no_factory)
installer = project.interface()
uninstaller = project.interface()


# These attributes are now common
a_location = attributes.a_location


@package.command()
def install(package_specifier):
    """Install a package."""
    project_id = package_specifier.project

    # Look up project.
    project = recipe.get_project(project_id)