From 023fa2e8743f3864c908be5db7faa003a20b295a Mon Sep 17 00:00:00 2001 From: "Gustavo J. A. M. Carneiro" Date: Mon, 21 Sep 2009 10:59:21 +0100 Subject: [PATCH] Upgrade to upstream WAF 1.5.9 plus a bunch of 'waf tools' layered on top. --- waf | Bin 88110 -> 86338 bytes waf-tools/cflags.py | 192 +++++++++++++++++++++++ waf-tools/command.py | 134 ++++++++++++++++ waf-tools/pkgconfig.py | 71 +++++++++ waf-tools/shellcmd.py | 345 +++++++++++++++++++++++++++++++++++++++++ wscript | 2 + 6 files changed, 744 insertions(+) mode change 100755 => 100644 waf create mode 100644 waf-tools/cflags.py create mode 100644 waf-tools/command.py create mode 100644 waf-tools/pkgconfig.py create mode 100644 waf-tools/shellcmd.py diff --git a/waf b/waf old mode 100755 new mode 100644 index ca4d42c188b318018b51571e8c3016b174878f64..65ab0a8e387f84b3765ad21b1e37c7657490182c GIT binary patch delta 83178 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 L{D2B0JUu-M(v86i delta 84964 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 z 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 list of cflags""" + raise NotImplementedError + + def get_optimization_flags(self, level): + """get_optimization_flags(level) -> list of cflags""" + raise NotImplementedError + + def get_debug_flags(self, level): + """get_debug_flags(level) -> (list of cflags, list of cppdefines)""" + raise NotImplementedError + + +class GccTraits(CompilerTraits): + def __init__(self): + super(GccTraits, self).__init__() + # cumulative list of warnings per level + self.warnings_flags = [['-Wall'], ['-Werror'], ['-Wextra']] + + def get_warnings_flags(self, level): + warnings = [] + for l in range(level): + if l < len(self.warnings_flags): + warnings.extend(self.warnings_flags[l]) + else: + break + return warnings + + def get_optimization_flags(self, level): + if level == 0: + return ['-O0'] + elif level == 1: + return ['-O'] + elif level == 2: + return ['-O2'] + elif level == 3: + return ['-O3'] + + def get_debug_flags(self, level): + if level == 0: + return (['-g0'], ['NDEBUG']) + elif level == 1: + return (['-g'], []) + elif level >= 2: + return (['-ggdb', '-g3'], ['_DEBUG']) + + +class IccTraits(CompilerTraits): + def __init__(self): + super(IccTraits, self).__init__() + # cumulative list of warnings per level + # icc is _very_ verbose with -Wall, -Werror is barely achievable + self.warnings_flags = [[], [], ['-Wall']] + + def get_warnings_flags(self, level): + warnings = [] + for l in range(level): + if l < len(self.warnings_flags): + warnings.extend(self.warnings_flags[l]) + else: + break + return warnings + + def get_optimization_flags(self, level): + if level == 0: + return ['-O0'] + elif level == 1: + return ['-O'] + elif level == 2: + return ['-O2'] + elif level == 3: + return ['-O3'] + + def get_debug_flags(self, level): + if level == 0: + return (['-g0'], ['NDEBUG']) + elif level == 1: + return (['-g'], []) + elif level >= 2: + return (['-ggdb', '-g3'], ['_DEBUG']) + + + +class MsvcTraits(CompilerTraits): + def __init__(self): + super(MsvcTraits, self).__init__() + # cumulative list of warnings per level + self.warnings_flags = [['/W2'], ['/WX'], ['/Wall']] + + def get_warnings_flags(self, level): + warnings = [] + for l in range(level): + if l < len(self.warnings_flags): + warnings.extend(self.warnings_flags[l]) + else: + break + return warnings + + def get_optimization_flags(self, level): + if level == 0: + return ['/Od'] + elif level == 1: + return [] + elif level == 2: + return ['/O2'] + elif level == 3: + return ['/Ox'] + + def get_debug_flags(self, level): + if level == 0: + return ([], ['NDEBUG']) + elif level == 1: + return (['/ZI', '/RTC1'], []) + elif level >= 2: + return (['/ZI', '/RTC1'], ['_DEBUG']) + + + +gcc = GccTraits() +icc = IccTraits() +msvc = MsvcTraits() + +# how to map env['COMPILER_CC'] or env['COMPILER_CXX'] into a traits object +compiler_mapping = { + 'gcc': gcc, + 'g++': gcc, + 'msvc': msvc, + 'icc': icc, + 'icpc': icc, +} + +profiles = { + # profile name: [optimization_level, warnings_level, debug_level] + 'default': [2, 1, 1], + 'debug': [0, 2, 3], + 'release': [3, 1, 0], + } + +default_profile = 'default' + +def set_options(opt): + assert default_profile in profiles + opt.add_option('-d', '--build-profile', + action='store', + default=default_profile, + help=("Specify the build profile. " + "Build profiles control the default compilation flags" + " used for C/C++ programs, if CCFLAGS/CXXFLAGS are not" + " set set in the environment. [Allowed Values: %s]" + % ", ".join([repr(p) for p in profiles.keys()])), + choices=profiles.keys(), + dest='build_profile') + +def detect(conf): + cc = conf.env['COMPILER_CC'] or None + cxx = conf.env['COMPILER_CXX'] or None + if not (cc or cxx): + raise Utils.WafError("neither COMPILER_CC nor COMPILER_CXX are defined; " + "maybe the compiler_cc or compiler_cxx tool has not been configured yet?") + + try: + compiler = compiler_mapping[cc] + except KeyError: + try: + compiler = compiler_mapping[cxx] + except KeyError: + Logs.warn("No compiler flags support for compiler %r or %r" + % (cc, cxx)) + return + + opt_level, warn_level, dbg_level = profiles[Options.options.build_profile] + + optimizations = compiler.get_optimization_flags(opt_level) + debug, debug_defs = compiler.get_debug_flags(dbg_level) + warnings = compiler.get_warnings_flags(warn_level) + + if cc and not conf.env['CCFLAGS']: + conf.env.append_value('CCFLAGS', optimizations) + conf.env.append_value('CCFLAGS', debug) + conf.env.append_value('CCFLAGS', warnings) + conf.env.append_value('CCDEFINES', debug_defs) + if cxx and not conf.env['CXXFLAGS']: + conf.env.append_value('CXXFLAGS', optimizations) + conf.env.append_value('CXXFLAGS', debug) + conf.env.append_value('CXXFLAGS', warnings) + conf.env.append_value('CXXDEFINES', debug_defs) diff --git a/waf-tools/command.py b/waf-tools/command.py new file mode 100644 index 000000000..5034acf3c --- /dev/null +++ b/waf-tools/command.py @@ -0,0 +1,134 @@ +from TaskGen import feature, taskgen, before, task_gen +import Node, Task, Utils, Build, pproc, Constants +import Options + +import shellcmd +shellcmd.subprocess = pproc # the WAF version of the subprocess module is supposedly less buggy + +from Logs import debug, error +shellcmd.debug = debug + +import Task + +import re + + +arg_rx = re.compile(r"(?P\$\$)|(?P\$\{(?P\w+)(?P.*?)\})", re.M) + +class command_task(Task.Task): + color = "BLUE" + def __init__(self, env, generator): + Task.Task.__init__(self, env, normal=1, generator=generator) + + def __str__(self): + "string to display to the user" + env = self.env + src_str = ' '.join([a.nice_path(env) for a in self.inputs]) + tgt_str = ' '.join([a.nice_path(env) for a in self.outputs]) + if self.outputs: + sep = ' -> ' + else: + sep = '' + + pipeline = shellcmd.Pipeline() + pipeline.parse(self.generator.command) + cmd = pipeline.get_abbreviated_command() + + return 'command (%s): %s%s%s\n' % (cmd, src_str, sep, tgt_str) + + def _subst_arg(self, arg, direction, namespace): + """ + @param arg: the command argument (or stdin/stdout/stderr) to substitute + @param direction: direction of the argument: 'in', 'out', or None + """ + def repl(match): + if match.group('dollar'): + return "$" + elif match.group('subst'): + var = match.group('var') + code = match.group('code') + result = eval(var+code, namespace) + if isinstance(result, Node.Node): + if var == 'TGT': + return result.bldpath(self.env) + elif var == 'SRC': + return result.srcpath(self.env) + else: + raise ValueError("Bad subst variable %r" % var) + elif result is self.inputs: + if len(self.inputs) == 1: + return result[0].srcpath(self.env) + else: + raise ValueError("${SRC} requested but have multiple sources; which one?") + elif result is self.outputs: + if len(self.outputs) == 1: + return result[0].bldpath(self.env) + else: + raise ValueError("${TGT} requested but have multiple targets; which one?") + else: + return result + return None + + return arg_rx.sub(repl, arg) + + def run(self): + pipeline = shellcmd.Pipeline() + pipeline.parse(self.generator.command) + namespace = self.env.get_merged_dict() + if self.generator.variables is not None: + namespace.update(self.generator.variables) + namespace.update(env=self.env, SRC=self.inputs, TGT=self.outputs) + for cmd in pipeline.pipeline: + if isinstance(cmd, shellcmd.Command): + if isinstance(cmd.stdin, basestring): + cmd.stdin = self._subst_arg(cmd.stdin, 'in', namespace) + if isinstance(cmd.stdout, basestring): + cmd.stdout = self._subst_arg(cmd.stdout, 'out', namespace) + if isinstance(cmd.stderr, basestring): + cmd.stderr = self._subst_arg(cmd.stderr, 'out', namespace) + for argI in xrange(len(cmd.argv)): + cmd.argv[argI] = self._subst_arg(cmd.argv[argI], None, namespace) + if cmd.env_vars is not None: + env_vars = dict() + for name, value in cmd.env_vars.iteritems(): + env_vars[name] = self._subst_arg(value, None, namespace) + cmd.env_vars = env_vars + elif isinstance(cmd, shellcmd.Chdir): + cmd.dir = self._subst_arg(cmd.dir, None, namespace) + + return pipeline.run(verbose=(Options.options.verbose > 0)) + +@taskgen +@feature('command') +def init_command(self): + Utils.def_attrs(self, + # other variables that can be used in the command: ${VARIABLE} + variables = None) + + + +@taskgen +@feature('command') +@before('apply_core') +def apply_command(self): + self.meths.remove('apply_core') + # create the task + task = self.create_task('command') + setattr(task, "dep_vars", getattr(self, "dep_vars", None)) + # process the sources + inputs = [] + for src in self.to_list(self.source): + node = self.path.find_resource(src) + if node is None: + raise Utils.WafError("source %s not found" % src) + inputs.append(node) + task.set_inputs(inputs) + task.set_outputs([self.path.find_or_declare(tgt) for tgt in self.to_list(self.target)]) + #Task.file_deps = Task.extract_deps + + + +class command_taskgen(task_gen): + def __init__(self, *k, **kw): + task_gen.__init__(self, *k, **kw) + self.features.append('command') diff --git a/waf-tools/pkgconfig.py b/waf-tools/pkgconfig.py new file mode 100644 index 000000000..95d7cf587 --- /dev/null +++ b/waf-tools/pkgconfig.py @@ -0,0 +1,71 @@ +# -*- mode: python; encoding: utf-8 -*- +# Gustavo Carneiro (gjamc) 2008 + +import Options +import Configure +import pproc as subprocess +import config_c + +def detect(conf): + pkg_config = conf.find_program('pkg-config', var='PKG_CONFIG') + if not pkg_config: return + +@Configure.conf +def pkg_check_modules(conf, uselib_name, expression, mandatory=True): + pkg_config = conf.env['PKG_CONFIG'] + if not pkg_config: + if mandatory: + conf.fatal("pkg-config is not available") + else: + return False + + argv = [pkg_config, '--cflags', '--libs', expression] + cmd = subprocess.Popen(argv, stdout=subprocess.PIPE) + out, dummy = cmd.communicate() + retval = cmd.wait() + + msg_checking = ("pkg-config flags for %s" % (uselib_name,)) + if Options.options.verbose: + if retval == 0: + conf.check_message_custom(msg_checking, + ('(%s)' % expression), out) + else: + conf.check_message(msg_checking, ('(%s)' % expression), False) + else: + conf.check_message(msg_checking, '', (retval == 0), '') + conf.log.write('%r: %r (exit code %i)\n' % (argv, out, retval)) + + if retval == 0: + + config_c.parse_flags(out, uselib_name, conf.env) + conf.env[uselib_name] = True + return True + + else: + + conf.env[uselib_name] = False + if mandatory: + raise Configure.ConfigurationError('pkg-config check failed') + else: + return False + +@Configure.conf +def pkg_check_module_variable(conf, module, variable): + pkg_config = conf.env['PKG_CONFIG'] + if not pkg_config: + conf.fatal("pkg-config is not available") + + argv = [pkg_config, '--variable', variable, module] + cmd = subprocess.Popen(argv, stdout=subprocess.PIPE) + out, dummy = cmd.communicate() + retval = cmd.wait() + out = out.rstrip() # strip the trailing newline + + msg_checking = ("pkg-config variable %r in %s" % (variable, module,)) + conf.check_message_custom(msg_checking, '', out) + conf.log.write('%r: %r (exit code %i)\n' % (argv, out, retval)) + + if retval == 0: + return out + else: + raise Configure.ConfigurationError('pkg-config check failed') diff --git a/waf-tools/shellcmd.py b/waf-tools/shellcmd.py new file mode 100644 index 000000000..776593528 --- /dev/null +++ b/waf-tools/shellcmd.py @@ -0,0 +1,345 @@ +# Copyright (C) 2008 Gustavo J. A. M. Carneiro + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +import shlex +import subprocess +import sys +import re +import os + +env_var_rx = re.compile(r"^([a-zA-Z0-9_]+)=(\S+)$") + +def debug(message): + print >> sys.stderr, message + + +if sys.platform == 'win32': + dev_null = open("NUL:", "w") +else: + dev_null = open("/dev/null", "w") + +def _open_out_file(filename): + if filename in ['NUL:', '/dev/null']: + return dev_null + else: + return open(filename, 'wb') + + +class Node(object): + pass + +class Op(Node): + pass + +class Pipe(Op): + pass + +class And(Op): + pass + +class Or(Op): + pass + +class Command(Node): + class PIPE(object): + pass # PIPE is a constant + class STDOUT(object): + pass # PIPE is a constant + + def __init__(self, name): + super(Command, self).__init__() + self.name = name # command name + self.argv = [name] # command argv + self.stdin = None + self.stdout = None + self.stderr = None + self.env_vars = None + + def __repr__(self): + return "Command(%r, argv=%r, stdin=%r, stdout=%r, stderr=%r)" \ + % (self.name, self.argv, self.stdin, self.stdout, self.stderr) + +class Chdir(Node): + def __init__(self): + super(Chdir, self).__init__() + self.dir = None + + def __repr__(self): + return "Chdir(%r)" \ + % (self.dir) + +class Pipeline(object): + def __init__(self): + self.current_command = None + self.pipeline = [] + + def _commit_command(self): + assert self.current_command is not None + self.pipeline.append(self.current_command) + self.current_command = None + + def get_abbreviated_command(self): + l = [] + for node in self.pipeline: + if isinstance(node, Command): + l.append(node.name) + if isinstance(node, Chdir): + l.append('cd %s' % node.dir) + elif isinstance(node, Pipe): + l.append('|') + elif isinstance(node, And): + l.append('&&') + elif isinstance(node, And): + l.append('||') + return ' '.join(l) + + def parse(self, command): + self.current_command = None + self.pipeline = [] + + if isinstance(command, list): + tokens = list(command) + else: + tokens = shlex.split(command) + debug("command: shlex: %r" % (tokens,)) + + BEGIN, COMMAND, CHDIR, STDERR, STDOUT, STDIN = range(6) + state = BEGIN + self.current_command = None + env_vars = dict() + + while tokens: + token = tokens.pop(0) + if state == BEGIN: + env_var_match = env_var_rx.match(token) + if env_var_match is not None: + env_vars[env_var_match.group(1)] = env_var_match.group(2) + else: + assert self.current_command is None + if token == 'cd': + self.current_command = Chdir() + assert not env_vars + state = CHDIR + else: + self.current_command = Command(token) + if env_vars: + self.current_command.env_vars = env_vars + env_vars = dict() + state = COMMAND + elif state == COMMAND: + if token == '>': + state = STDOUT + elif token == '2>': + state = STDERR + elif token == '2>&1': + assert self.current_command.stderr is None + self.current_command.stderr = Command.STDOUT + elif token == '<': + state = STDIN + elif token == '|': + assert self.current_command.stdout is None + self.current_command.stdout = Command.PIPE + self._commit_command() + self.pipeline.append(Pipe()) + state = BEGIN + elif token == '&&': + self._commit_command() + self.pipeline.append(And()) + state = BEGIN + elif token == '||': + self._commit_command() + self.pipeline.append(Or()) + state = BEGIN + else: + self.current_command.argv.append(token) + elif state == CHDIR: + if token == '&&': + self._commit_command() + self.pipeline.append(And()) + state = BEGIN + else: + assert self.current_command.dir is None + self.current_command.dir = token + elif state == STDOUT: + assert self.current_command.stdout is None + self.current_command.stdout = token + state = COMMAND + elif state == STDERR: + assert self.current_command.stderr is None + self.current_command.stderr = token + state = COMMAND + elif state == STDIN: + assert self.current_command.stdin is None + self.current_command.stdin = token + state = COMMAND + self._commit_command() + return self.pipeline + + def _exec_piped_commands(self, commands): + retvals = [] + for cmd in commands: + retvals.append(cmd.wait()) + retval = 0 + for r in retvals: + if r: + retval = retvals[-1] + break + return retval + + def run(self, verbose=False): + pipeline = list(self.pipeline) + files_to_close = [] + piped_commands = [] + piped_commands_display = [] + BEGIN, PIPE = range(2) + state = BEGIN + cwd = '.' + while pipeline: + node = pipeline.pop(0) + + if isinstance(node, Chdir): + next_op = pipeline.pop(0) + assert isinstance(next_op, And) + cwd = os.path.join(cwd, node.dir) + if verbose: + piped_commands_display.append("cd %s &&" % node.dir) + continue + + assert isinstance(node, (Command, Chdir)) + cmd = node + if verbose: + if cmd.env_vars: + env_vars_str = ' '.join(['%s=%s' % (key, val) for key, val in cmd.env_vars.iteritems()]) + piped_commands_display.append("%s %s" % (env_vars_str, ' '.join(cmd.argv))) + else: + piped_commands_display.append(' '.join(cmd.argv)) + + if state == PIPE: + stdin = piped_commands[-1].stdout + elif cmd.stdin is not None: + stdin = open(cmd.stdin, "r") + if verbose: + piped_commands_display.append('< %s' % cmd.stdin) + files_to_close.append(stdin) + else: + stdin = None + + if cmd.stdout is None: + stdout = None + elif cmd.stdout is Command.PIPE: + stdout = subprocess.PIPE + else: + stdout = _open_out_file(cmd.stdout) + files_to_close.append(stdout) + if verbose: + piped_commands_display.append('> %s' % cmd.stdout) + + if cmd.stderr is None: + stderr = None + elif cmd.stderr is Command.PIPE: + stderr = subprocess.PIPE + elif cmd.stderr is Command.STDOUT: + stderr = subprocess.STDOUT + if verbose: + piped_commands_display.append('2>&1') + else: + stderr = _open_out_file(cmd.stderr) + files_to_close.append(stderr) + if verbose: + piped_commands_display.append('2> %s' % cmd.stderr) + + if cmd.env_vars: + env = dict(os.environ) + env.update(cmd.env_vars) + else: + env = None + + if cwd == '.': + proc_cwd = None + else: + proc_cwd = cwd + + debug("command: subprocess.Popen(argv=%r, stdin=%r, stdout=%r, stderr=%r, env_vars=%r, cwd=%r)" + % (cmd.argv, stdin, stdout, stderr, cmd.env_vars, proc_cwd)) + proc = subprocess.Popen(cmd.argv, stdin=stdin, stdout=stdout, stderr=stderr, env=env, cwd=proc_cwd) + del stdin, stdout, stderr + piped_commands.append(proc) + + try: + next_node = pipeline.pop(0) + except IndexError: + try: + retval = self._exec_piped_commands(piped_commands) + if verbose: + print "%s: exit code %i" % (' '.join(piped_commands_display), retval) + finally: + for f in files_to_close: + if f is not dev_null: + f.close() + files_to_close = [] + return retval + else: + + if isinstance(next_node, Pipe): + state = PIPE + piped_commands_display.append('|') + + elif isinstance(next_node, Or): + try: + this_retval = self._exec_piped_commands(piped_commands) + finally: + for f in files_to_close: + if f is not dev_null: + f.close() + files_to_close = [] + if this_retval == 0: + if verbose: + print "%s: exit code %i (|| is short-circuited)" % (' '.join(piped_commands_display), retval) + return this_retval + if verbose: + print "%s: exit code %i (|| proceeds)" % (' '.join(piped_commands_display), retval) + state = BEGIN + piped_commands = [] + piped_commands_display = [] + + elif isinstance(next_node, And): + try: + this_retval = self._exec_piped_commands(piped_commands) + finally: + for f in files_to_close: + if f is not dev_null: + f.close() + files_to_close = [] + if this_retval != 0: + if verbose: + print "%s: exit code %i (&& is short-circuited)" % (' '.join(piped_commands_display), retval) + return this_retval + if verbose: + print "%s: exit code %i (&& proceeds)" % (' '.join(piped_commands_display), retval) + state = BEGIN + piped_commands = [] + piped_commands_display = [] + + + +def _main(): + pipeline = Pipeline() + pipeline.parse('./foo.py 2>&1 < xxx | cat && ls') + print pipeline.run() + +if __name__ == '__main__': + _main() + diff --git a/wscript b/wscript index bf37bdeff..00e7e43c7 100644 --- a/wscript +++ b/wscript @@ -27,6 +27,8 @@ import Build import Configure import Scripting +sys.path.insert(0, os.path.abspath('waf-tools')) + import cflags # override the build profiles from waf cflags.profiles = { # profile name: [optimization_level, warnings_level, debug_level]