wtools
ESOwaftools
 All Classes Namespaces Functions Pages
wtools.project Namespace Reference

Classes

class  TestContext
 
class  DocsContext
 
class  LintContext
 
class  CheckContext
 

Functions

def create_project_lmod
 
def create_project_gdbinit
 
def default_configure
 
def wtools_showversion
 
def default_options
 
def default_init
 
def default_build
 
def check_env
 
def declare_project
 

Variables

list __all__ = ['init', 'build', 'test',]
 
string name = ''
 
string version = ''
 
 LMOD_TEMPLATE = \
 
 GDBINIT_TEMPLATE = \
 

Detailed Description

Module that provides automatic declaration of a software project.

Function Documentation

def wtools.project.check_env (   self,
  env,
  predicate = None 
)
Check presence of environment variable env
Args:
    env:    Name of environment variable to test presence for.
    predicate: Predicate used to perform additional test(s).
               Signature (status, error) = predicate(value)
               where 'status' is False for failed test, True otherwise and
               'error' is an error description to the user.

Example:

    def configure(ctx):
        ctx.check_env('FOO')
def wtools.project.declare_project (   name,
  version,
  recurse,
  requires,
  kwargs 
)
Declares a top level waf project

Args:
  name: Project name
  version: Version string
  recurse: Glob-patterns of directories to recurse into.
  requires: A string list of project requirements (c.f. wtools.config.Requires).
kwargs:
  boost_libs: string list of boost libraries to include. E.g. 'program_options filesystem'
def wtools.project.default_build (   bld,
  recurse 
)
Default implementation of build command.
def wtools.project.default_configure (   cnf,
  recurse,
  orig,
  requires,
  wtools_dir,
  kwargs 
)
Returns the default implementation of the configure command.
def wtools.project.default_init (   ctx,
  wtools_dir 
)
Default implementation of init
def wtools.project.default_options (   opt,
  recurse,
  requires,
  wtools_dir,
  kwargs 
)
Default implementation of options in the top level waf script