def Sources(*value): ctx = bcontext.get_context() (names, args) = _parse_name_and_args(*value) tag = syntax_tag.TagSources() for name in names: src = ctx.create_source(name, args) tag.add_sv(src) return tag
def handle(mkwr): ctx = bcontext.get_context(); ctx.clear() targetstring = interpret_configs() interpret_targets(targetstring) ctx.action_depends() ctx.action() mkwr.collect(ctx) mkwr.write()
def _include_paths(tag, value): for s in value: ps = string.split(s) for x in ps: if (x[0] == '$'): ctx = bcontext.get_context() x = '%s%s' % (ctx.workroot(), x[1:]) x = os.path.normpath(x) tag.add_sv(x) return tag
def DEP_CONFIGS(v1, v2, v3): ctx = bcontext.get_context() group_name = v1 project_name = v2 if (ctx.default_git_domain().strip()): if (not ctx.default_git_domain().endswith('/')): repository = ctx.default_git_domain() + '/' + v3 else: repository = ctx.default_git_domain() + v3 else: repository = v3 ctx.git().exec_cmd(group_name, project_name, repository)
def LDFLAGS(*value): ctx = bcontext.get_context() ctx.link_flags().add_vs(value)
def LIBS(*value): ctx = bcontext.get_context() ctx.libraries().add_vs(value)
def INCPATHS(*value): ctx = bcontext.get_context() _include_paths(ctx.include_paths(), value)
def CXXFLAGS(*value): ctx = bcontext.get_context() ctx.cxx_flags().add_vs(value)
def USER_SOURCES_EXTRA(*value): ctx = bcontext.get_context() ctx.user_sources_extra().add_vs(value)
def BUILDMAKE_BIN_PATH(value): ctx = bcontext.get_context() ctx.set_buildmake_bin_path(value)
def WORKROOT(value): ctx = bcontext.get_context() ctx.set_workroot(value)
def interpret_configs(): ctx = bcontext.get_context() targetstring = ctx.interpret_configs_from_buildmake('BUILDMAKE') return targetstring
for (k, v) in opts: if k in ('-h', '--help'): usage(); sys.exit(0) elif k in ('-G', '--generate'): generator.generate() sys.exit(0) elif k in ('-v', '--version'): print 'buildmake version: ' + (VERSION) sys.exit(0) elif k in ('-U', '--update'): UPDATE_ENV = True elif k in ('-B', '--build'): BUILD_ENV = True ctx = bcontext.get_context() if (UPDATE_ENV and BUILD_ENV): ctx.git().set_cmd(bgit.Cmd.UPDATE_AND_BUILD) elif (UPDATE_ENV): ctx.git().set_cmd(bgit.Cmd.UPDATE) elif (BUILD_ENV): ctx.git().set_cmd(bgit.Cmd.BUILD) def interpret_configs(): ctx = bcontext.get_context() targetstring = ctx.interpret_configs_from_buildmake('BUILDMAKE') return targetstring def interpret_targets(targetstring): # In case targetstring contains '\r\n' targetstring = '\n'.join(targetstring.splitlines()) + '\n'
def DEFAULT_LIB_INCLUDE_DIR(value): ctx = bcontext.get_context() ctx.set_default_lib_include_dir(value)
def COPY_USING_HARD_LINK(value): ctx = bcontext.get_context() ctx.set_copy_using_hard_link(value)
def DEFAULT_GIT_DOMAIN(value): ctx = bcontext.get_context() ctx.set_default_git_domain(value)
def CPPFLAGS(*value): ctx = bcontext.get_context() ctx.cpp_flags().add_vs(value)
def _target(name, type, args): ctx = bcontext.get_context() ctx.create_target(name, type, args)
def FLAGS_EXTRA(*value): ctx = bcontext.get_context() ctx.flags_extra().add_vs(value)