1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-23 09:57:40 +03:00

third_party/waf: upgrade to waf 2.0.8

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Alexander Bokovoy 2018-06-15 13:29:45 +03:00 committed by Andrew Bartlett
parent 79c4ba26b0
commit 3b7dfc51ac
176 changed files with 657 additions and 841 deletions

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -315,11 +311,7 @@ def conf(f):
:type f: function
"""
def fun(*k, **kw):
mandatory = True
if 'mandatory' in kw:
mandatory = kw['mandatory']
del kw['mandatory']
mandatory = kw.pop('mandatory', True)
try:
return f(*k, **kw)
except Errors.ConfigurationError:
@ -426,8 +418,8 @@ def find_program(self, filename, **kw):
:type var: string
:param value: obtain the program from the value passed exclusively
:type value: list or string (list is preferred)
:param ext: list of extensions for the binary (do not add an extension for portability)
:type ext: list of string
:param exts: list of extensions for the binary (do not add an extension for portability)
:type exts: list of string
:param msg: name to display in the log, by default filename is used
:type msg: string
:param interpreter: interpreter for the program

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2010-2018 (ita)
@ -15,13 +11,13 @@ from waflib import Utils, Errors, Logs
import waflib.Node
# the following 3 constants are updated on each new release (do not touch)
HEXVERSION=0x2000400
HEXVERSION=0x2000800
"""Constant updated on new releases"""
WAFVERSION="2.0.4"
WAFVERSION="2.0.8"
"""Constant updated on new releases"""
WAFREVISION="5996879673deb7166b61a299be317a738de6891e"
WAFREVISION="f78fbc32bb355a3291c9b5f79bbe0c8dfe81282a"
"""Git revision when the waf version is updated"""
ABI = 20
@ -56,6 +52,9 @@ out_dir = ''
waf_dir = ''
"""Directory containing the waf modules"""
default_encoding = Utils.console_encoding()
"""Encoding to use when reading outputs from other processes"""
g_module = None
"""
Module representing the top-level wscript file (see :py:const:`waflib.Context.run_dir`)
@ -358,6 +357,8 @@ class Context(ctx):
if not isinstance(kw['cwd'], str):
kw['cwd'] = kw['cwd'].abspath()
encoding = kw.pop('decode_as', default_encoding)
try:
ret, out, err = Utils.run_process(cmd, kw, cargs)
except Exception as e:
@ -365,14 +366,14 @@ class Context(ctx):
if out:
if not isinstance(out, str):
out = out.decode(sys.stdout.encoding or 'latin-1', errors='replace')
out = out.decode(encoding, errors='replace')
if self.logger:
self.logger.debug('out: %s', out)
else:
Logs.info(out, extra={'stream':sys.stdout, 'c1': ''})
if err:
if not isinstance(err, str):
err = err.decode(sys.stdout.encoding or 'latin-1', errors='replace')
err = err.decode(encoding, errors='replace')
if self.logger:
self.logger.error('err: %s' % err)
else:
@ -408,17 +409,8 @@ class Context(ctx):
kw['shell'] = isinstance(cmd, str)
self.log_command(cmd, kw)
if 'quiet' in kw:
quiet = kw['quiet']
del kw['quiet']
else:
quiet = None
if 'output' in kw:
to_ret = kw['output']
del kw['output']
else:
to_ret = STDOUT
quiet = kw.pop('quiet', None)
to_ret = kw.pop('output', STDOUT)
if Logs.verbose and not kw['shell'] and not Utils.check_exe(cmd[0]):
raise Errors.WafError('Program %r not found!' % cmd[0])
@ -444,15 +436,17 @@ class Context(ctx):
if not isinstance(kw['cwd'], str):
kw['cwd'] = kw['cwd'].abspath()
encoding = kw.pop('decode_as', default_encoding)
try:
ret, out, err = Utils.run_process(cmd, kw, cargs)
except Exception as e:
raise Errors.WafError('Execution failure: %s' % str(e), ex=e)
if not isinstance(out, str):
out = out.decode(sys.stdout.encoding or 'latin-1', errors='replace')
out = out.decode(encoding, errors='replace')
if not isinstance(err, str):
err = err.decode(sys.stdout.encoding or 'latin-1', errors='replace')
err = err.decode(encoding, errors='replace')
if out and quiet != STDOUT and quiet != BOTH:
self.to_log('out: %s' % out)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2010-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -630,11 +626,10 @@ class Node(object):
if maxdepth:
for k in node.ant_iter(accept=accept, maxdepth=maxdepth - 1, pats=npats, dir=dir, src=src, remove=remove, quiet=quiet):
yield k
raise StopIteration
def ant_glob(self, *k, **kw):
"""
Finds files across folders:
Finds files across folders and returns Node objects:
* ``**/*`` find all files recursively
* ``**/*.class`` find all files ending by .class
@ -643,14 +638,51 @@ class Node(object):
For example::
def configure(cfg):
cfg.path.ant_glob('**/*.cpp') # finds all .cpp files
cfg.root.ant_glob('etc/*.txt') # matching from the filesystem root can be slow
cfg.path.ant_glob('*.cpp', excl=['*.c'], src=True, dir=False)
# find all .cpp files
cfg.path.ant_glob('**/*.cpp')
# find particular files from the root filesystem (can be slow)
cfg.root.ant_glob('etc/*.txt')
# simple exclusion rule example
cfg.path.ant_glob('*.c*', excl=['*.c'], src=True, dir=False)
For more information see http://ant.apache.org/manual/dirtasks.html
For more information about the patterns, consult http://ant.apache.org/manual/dirtasks.html
Please remember that the '..' sequence does not represent the parent directory::
def configure(cfg):
cfg.path.ant_glob('../*.h') # incorrect
cfg.path.parent.ant_glob('*.h') # correct
The Node structure is itself a filesystem cache, so certain precautions must
be taken while matching files in the build or installation phases.
Nodes objects that do have a corresponding file or folder are garbage-collected by default.
This garbage collection is usually required to prevent returning files that do not
exist anymore. Yet, this may also remove Node objects of files that are yet-to-be built.
This typically happens when trying to match files in the build directory,
but there are also cases when files are created in the source directory.
Run ``waf -v`` to display any warnings, and try consider passing ``remove=False``
when matching files in the build directory.
Since ant_glob can traverse both source and build folders, it is a best practice
to call this method only from the most specific build node::
def build(bld):
# traverses the build directory, may need ``remove=False``:
bld.path.ant_glob('project/dir/**/*.h')
# better, no accidental build directory traversal:
bld.path.find_node('project/dir').ant_glob('**/*.h') # best
In addition, files and folders are listed immediately. When matching files in the
build folders, consider passing ``generator=True`` so that the generator object
returned can defer computation to a later stage. For example::
def build(bld):
bld(rule='tar xvf ${SRC}', source='arch.tar')
bld.add_group()
gen = bld.bldnode.ant_glob("*.h", generator=True, remove=True)
# files will be listed only after the arch.tar is unpacked
bld(rule='ls ${SRC}', source=gen, name='XYZ')
The nodes that correspond to files and folders that do not exist are garbage-collected.
To prevent this behaviour in particular when running over the build directory, pass ``remove=False``
:param incl: ant patterns or list of patterns to include
:type incl: string or list of strings
@ -664,13 +696,13 @@ class Node(object):
:type maxdepth: int
:param ignorecase: ignore case while matching (False by default)
:type ignorecase: bool
:returns: The corresponding Nodes
:param generator: Whether to evaluate the Nodes lazily
:type generator: bool
:param remove: remove files/folders that do not exist (True by default)
:type remove: bool
:param quiet: disable build directory traversal warnings (verbose mode)
:type quiet: bool
:returns: Whether to evaluate the Nodes lazily, alters the type of the returned value
:returns: The corresponding Node objects as a list or as a generator object (generator=True)
:rtype: by default, list of :py:class:`waflib.Node.Node` instances
"""
src = kw.get('src', True)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Scott Newton, 2005 (scottn)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -12,9 +8,21 @@ Runner.py: Task scheduling and execution
import heapq, traceback
try:
from queue import Queue
from queue import Queue, PriorityQueue
except ImportError:
from Queue import Queue
try:
from Queue import PriorityQueue
except ImportError:
class PriorityQueue(Queue):
def _init(self, maxsize):
self.maxsize = maxsize
self.queue = []
def _put(self, item):
heapq.heappush(self.queue, item)
def _get(self):
return heapq.heappop(self.queue)
from waflib import Utils, Task, Errors, Logs
GAP = 5
@ -34,6 +42,7 @@ class PriorityTasks(object):
def append(self, task):
heapq.heappush(self.lst, task)
def appendleft(self, task):
"Deprecated, do not use"
heapq.heappush(self.lst, task)
def pop(self):
return heapq.heappop(self.lst)
@ -141,7 +150,7 @@ class Parallel(object):
self.incomplete = set()
"""List of :py:class:`waflib.Task.Task` waiting for dependent tasks to complete (DAG)"""
self.ready = Queue(0)
self.ready = PriorityQueue(0)
"""List of :py:class:`waflib.Task.Task` ready to be executed by consumers"""
self.out = Queue(0)
@ -261,7 +270,26 @@ class Parallel(object):
:type tsk: :py:attr:`waflib.Task.Task`
"""
if getattr(tsk, 'more_tasks', None):
# TODO recompute priorities globally?
more = set(tsk.more_tasks)
groups_done = set()
def iteri(a, b):
for x in a:
yield x
for x in b:
yield x
# Update the dependency tree
# this assumes that task.run_after values were updated
for x in iteri(self.outstanding, self.incomplete):
for k in x.run_after:
if isinstance(k, Task.TaskGroup):
if k not in groups_done:
groups_done.add(k)
for j in k.prev & more:
self.revdeps[j].add(k)
elif k in more:
self.revdeps[k].add(x)
ready, waiting = self.prio_and_split(tsk.more_tasks)
self.outstanding.extend(ready)
self.incomplete.update(waiting)
@ -480,13 +508,12 @@ class Parallel(object):
reverse = self.revdeps
groups_done = set()
for x in tasks:
for k in x.run_after:
if isinstance(k, Task.TaskGroup):
if k.done:
pass
else:
k.done = True
if k not in groups_done:
groups_done.add(k)
for j in k.prev:
reverse[j].add(k)
else:

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -726,6 +722,32 @@ class Task(evil):
v = v() # dependency is a function, call it
upd(v)
def sig_deep_inputs(self):
"""
Enable rebuilds on input files task signatures. Not used by default.
Example: hashes of output programs can be unchanged after being re-linked,
despite the libraries being different. This method can thus prevent stale unit test
results (waf_unit_test.py).
Hashing input file timestamps is another possibility for the implementation.
This may cause unnecessary rebuilds when input tasks are frequently executed.
Here is an implementation example::
lst = []
for node in self.inputs + self.dep_nodes:
st = os.stat(node.abspath())
lst.append(st.st_mtime)
lst.append(st.st_size)
self.m.update(Utils.h_list(lst))
The downside of the implementation is that it absolutely requires all build directory
files to be declared within the current build.
"""
bld = self.generator.bld
lst = [bld.task_sigs[bld.node_sigs[node]] for node in (self.inputs + self.dep_nodes) if node.is_bld()]
self.m.update(Utils.h_list(lst))
def sig_vars(self):
"""
Used by :py:meth:`waflib.Task.Task.signature`; it hashes :py:attr:`waflib.Task.Task.env` variables/values
@ -1244,6 +1266,16 @@ def task_factory(name, func=None, vars=None, color='GREEN', ext_in=[], ext_out=[
return cls
def deep_inputs(cls):
"""
Task class decorator to enable rebuilds on input files task signatures
"""
def sig_explicit_deps(self):
Task.sig_explicit_deps(self)
Task.sig_deep_inputs(self)
cls.sig_explicit_deps = sig_explicit_deps
return cls
TaskBase = Task
"Provided for compatibility reasons, TaskBase should not be used"

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -571,6 +567,7 @@ def process_rule(self):
* stderr: standard error, set to None to prevent waf from capturing the text
* timeout: timeout for command execution (Python 3)
* always: whether to always run the command (False by default)
* deep_inputs: whether the task must depend on the input file tasks too (False by default)
"""
if not getattr(self, 'rule', None):
return
@ -592,12 +589,13 @@ def process_rule(self):
cls_str = getattr(self, 'cls_str', None)
cls_keyword = getattr(self, 'cls_keyword', None)
use_cache = getattr(self, 'cache_rule', 'True')
deep_inputs = getattr(self, 'deep_inputs', False)
scan_val = has_deps = hasattr(self, 'deps')
if scan:
scan_val = id(scan)
key = Utils.h_list((name, self.rule, chmod, shell, color, cls_str, cls_keyword, scan_val, _vars))
key = Utils.h_list((name, self.rule, chmod, shell, color, cls_str, cls_keyword, scan_val, _vars, deep_inputs))
cls = None
if use_cache:
@ -626,6 +624,9 @@ def process_rule(self):
if cls_keyword:
setattr(cls, 'keyword', self.cls_keyword)
if deep_inputs:
Task.deep_inputs(cls)
if scan:
cls.scan = self.scan
elif has_deps:

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2008-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# John O'Meara, 2006

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2015 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy 2008-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2016-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -517,11 +513,11 @@ def apply_implib(self):
node = self.path.find_resource(self.defs)
if not node:
raise Errors.WafError('invalid def file %r' % self.defs)
if 'msvc' in (self.env.CC_NAME, self.env.CXX_NAME):
self.env.append_value('LINKFLAGS', '/def:%s' % node.path_from(self.get_cwd()))
if self.env.def_PATTERN:
self.env.append_value('LINKFLAGS', self.env.def_PATTERN % node.path_from(self.get_cwd()))
self.link_task.dep_nodes.append(node)
else:
#gcc for windows takes *.def file a an input without any special flag
# gcc for windows takes *.def file as input without any special flag
self.link_task.inputs.append(node)
# where to put the import library

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Krzysztof Kosiński 2014

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy 2009-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Matthias Jahn jahn dôt matthias ât freenet dôt de, 2007 (pmarat)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Matthias Jahn jahn dôt matthias ât freenet dôt de 2007 (pmarat)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2007 (dv)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2007 (dv)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2016-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2016-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Ali Sabil, 2007
@ -44,7 +40,7 @@ def add_dbus_file(self, filename, prefix, mode):
self.meths.append('process_dbus')
self.dbus_lst.append([filename, prefix, mode])
@before_method('apply_core')
@before_method('process_source')
def process_dbus(self):
"""
Processes the dbus files stored in the attribute *dbus_lst* to create :py:class:`waflib.Tools.dbus.dbus_binding_tool` instances.

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2007 (dv)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2011 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# DC 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# DC 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# DC 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# John O'Meara, 2006

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# KWS 2010

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2008-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2007 (dv)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# DC 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Ali Sabil, 2007

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Stian Selnes 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy 2009-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# DC 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# imported from samba

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Alex Rønne Petersen, 2012 (alexrp/Zor)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Sebastian Schlingmann, 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2006 (dv)
@ -12,6 +8,12 @@
"""
Microsoft Visual C++/Intel C++ compiler support
If you get detection problems, first try any of the following::
chcp 65001
set PYTHONIOENCODING=...
set PYTHONLEGACYWINDOWSSTDIO=1
Usage::
$ waf configure --msvc_version="msvc 10.0,msvc 9.0" --msvc_target="x64"
@ -461,10 +463,8 @@ def gather_vswhere_versions(conf, versions):
return
if sys.version_info[0] < 3:
try:
txt = txt.decode(sys.stdout.encoding or 'cp1252')
except UnicodeError:
txt = txt.decode('utf-8', 'replace')
txt = txt.decode(Utils.console_encoding())
arr = json.loads(txt)
arr.sort(key=lambda x: x['installationVersion'])
for entry in arr:
@ -940,6 +940,8 @@ def msvc_common_flags(conf):
v.cprogram_PATTERN = v.cxxprogram_PATTERN = '%s.exe'
v.def_PATTERN = '/def:%s'
#######################################################################################################
##### conf above, build below

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2008-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2015 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# andersg at 0x63.nu 2007

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2007-2015 (ita)
@ -450,9 +446,9 @@ def check_python_version(conf, minver=None):
Check if the python interpreter is found matching a given minimum version.
minver should be a tuple, eg. to check for python >= 2.4.2 pass (2,4,2) as minver.
If successful, PYTHON_VERSION is defined as 'MAJOR.MINOR'
(eg. '2.4') of the actual python version found, and PYTHONDIR is
defined, pointing to the site-packages directory appropriate for
If successful, PYTHON_VERSION is defined as 'MAJOR.MINOR' (eg. '2.4')
of the actual python version found, and PYTHONDIR and PYTHONARCHDIR
are defined, pointing to the site-packages directories appropriate for
this python version, where modules/packages/extensions should be
installed.

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)
@ -399,6 +395,19 @@ class rcc(Task.Task):
names.append(x)
return (nodes, names)
def quote_flag(self, x):
"""
Override Task.quote_flag. QT parses the argument files
differently than cl.exe and link.exe
:param x: flag
:type x: string
:return: quoted flag
:rtype: string
"""
return x
class moc(Task.Task):
"""
Creates ``.moc`` files
@ -406,6 +415,19 @@ class moc(Task.Task):
color = 'BLUE'
run_str = '${QT_MOC} ${MOC_FLAGS} ${MOCCPPPATH_ST:INCPATHS} ${MOCDEFINES_ST:DEFINES} ${SRC} ${MOC_ST} ${TGT}'
def quote_flag(self, x):
"""
Override Task.quote_flag. QT parses the argument files
differently than cl.exe and link.exe
:param x: flag
:type x: string
:return: quoted flag
:rtype: string
"""
return x
class ui5(Task.Task):
"""
Processes ``.ui`` files
@ -629,7 +651,6 @@ def find_single_qt5_lib(self, name, uselib, qtlibs, qtincludes, force_static):
for k in ('', '5') if Utils.is_win32 else ['']:
for p in ('lib', ''):
yield (p, name, k, x)
raise StopIteration
for tup in lib_names():
k = ''.join(tup)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# daniel.svensson at purplescout.se 2008

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Ali Sabil, 2007

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Carlos Rafael Giani, 2006
@ -156,6 +152,7 @@ def add_test_results(self, tup):
except AttributeError:
self.bld.utest_results = [tup]
@Task.deep_inputs
class utest(Task.Task):
"""
Execute a unit test
@ -235,11 +232,6 @@ class utest(Task.Task):
def get_cwd(self):
return getattr(self.generator, 'ut_cwd', self.inputs[0].parent)
def sig_explicit_deps(self):
lst = [os.stat(node.abspath()).st_mtime for node in self.inputs]
self.m.update(str(lst))
return super(utest, self).sig_explicit_deps()
def summary(bld):
"""
Display an execution summary::

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Brant Young, 2007

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)
@ -204,6 +200,8 @@ class lazy_generator(object):
it = self.it = self.fun(*self.params)
return next(it)
next = __next__
is_win32 = os.sep == '\\' or sys.platform == 'win32' # msys2
"""
Whether this system is a Windows series
@ -436,6 +434,21 @@ def to_list(val):
else:
return val
def console_encoding():
try:
import ctypes
except ImportError:
pass
else:
try:
codepage = ctypes.windll.kernel32.GetConsoleCP()
except AttributeError:
pass
else:
if codepage:
return 'cp%d' % codepage
return sys.stdout.encoding or ('cp1252' if is_win32 else 'latin-1')
def split_path_unix(path):
return path.split('/')

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2018 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2005-2010 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2015 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2011 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# per rosengren 2011

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Michal Proszek, 2014 (poxip)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Yannick LM 2011

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
#
@ -58,8 +54,7 @@ from waflib import Utils, Logs, Errors
from waflib.Configure import conf
from waflib.TaskGen import feature, after_method
BOOST_LIBS = ['/usr/lib/x86_64-linux-gnu', '/usr/lib/i386-linux-gnu',
'/usr/lib', '/usr/local/lib', '/opt/local/lib', '/sw/lib', '/lib']
BOOST_LIBS = ['/usr/lib', '/usr/local/lib', '/opt/local/lib', '/sw/lib', '/lib']
BOOST_INCLUDES = ['/usr/include', '/usr/local/include', '/opt/local/include', '/sw/include']
BOOST_VERSION_FILE = 'boost/version.hpp'
BOOST_VERSION_CODE = '''
@ -73,6 +68,21 @@ BOOST_ERROR_CODE = '''
int main() { boost::system::error_code c; }
'''
PTHREAD_CODE = '''
#include <pthread.h>
static void* f(void*) { return 0; }
int main() {
pthread_t th;
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_create(&th, &attr, &f, 0);
pthread_join(th, 0);
pthread_cleanup_push(0, 0);
pthread_cleanup_pop(0);
pthread_attr_destroy(&attr);
}
'''
BOOST_THREAD_CODE = '''
#include <boost/thread.hpp>
int main() { boost::thread t; }
@ -309,6 +319,66 @@ def boost_get_libs(self, *k, **kw):
return path.abspath(), match_libs(kw.get('lib'), False), match_libs(kw.get('stlib'), True)
@conf
def _check_pthread_flag(self, *k, **kw):
'''
Computes which flags should be added to CXXFLAGS and LINKFLAGS to compile in multi-threading mode
Yes, we *need* to put the -pthread thing in CPPFLAGS because with GCC3,
boost/thread.hpp will trigger a #error if -pthread isn't used:
boost/config/requires_threads.hpp:47:5: #error "Compiler threading support
is not turned on. Please set the correct command line options for
threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)"
Based on _BOOST_PTHREAD_FLAG(): https://github.com/tsuna/boost.m4/blob/master/build-aux/boost.m4
'''
var = kw.get('uselib_store', 'BOOST')
self.start_msg('Checking the flags needed to use pthreads')
# The ordering *is* (sometimes) important. Some notes on the
# individual items follow:
# (none): in case threads are in libc; should be tried before -Kthread and
# other compiler flags to prevent continual compiler warnings
# -lpthreads: AIX (must check this before -lpthread)
# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h)
# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able)
# -llthread: LinuxThreads port on FreeBSD (also preferred to -pthread)
# -pthread: GNU Linux/GCC (kernel threads), BSD/GCC (userland threads)
# -pthreads: Solaris/GCC
# -mthreads: MinGW32/GCC, Lynx/GCC
# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it
# doesn't hurt to check since this sometimes defines pthreads too;
# also defines -D_REENTRANT)
# ... -mt is also the pthreads flag for HP/aCC
# -lpthread: GNU Linux, etc.
# --thread-safe: KAI C++
if Utils.unversioned_sys_platform() == "sunos":
# On Solaris (at least, for some versions), libc contains stubbed
# (non-functional) versions of the pthreads routines, so link-based
# tests will erroneously succeed. (We need to link with -pthreads/-mt/
# -lpthread.) (The stubs are missing pthread_cleanup_push, or rather
# a function called by this macro, so we could check for that, but
# who knows whether they'll stub that too in a future libc.) So,
# we'll just look for -pthreads and -lpthread first:
boost_pthread_flags = ["-pthreads", "-lpthread", "-mt", "-pthread"]
else:
boost_pthread_flags = ["", "-lpthreads", "-Kthread", "-kthread", "-llthread", "-pthread",
"-pthreads", "-mthreads", "-lpthread", "--thread-safe", "-mt"]
for boost_pthread_flag in boost_pthread_flags:
try:
self.env.stash()
self.env.append_value('CXXFLAGS_%s' % var, boost_pthread_flag)
self.env.append_value('LINKFLAGS_%s' % var, boost_pthread_flag)
self.check_cxx(code=PTHREAD_CODE, msg=None, use=var, execute=False)
self.end_msg(boost_pthread_flag)
return
except self.errors.ConfigurationError:
self.env.revert()
self.end_msg('None')
@conf
def check_boost(self, *k, **kw):
@ -333,6 +403,11 @@ def check_boost(self, *k, **kw):
var = kw.get('uselib_store', 'BOOST')
self.find_program('dpkg-architecture', var='DPKG_ARCHITECTURE', mandatory=False)
if self.env.DPKG_ARCHITECTURE:
deb_host_multiarch = self.cmd_and_log([self.env.DPKG_ARCHITECTURE[0], '-qDEB_HOST_MULTIARCH'])
BOOST_LIBS.insert(0, '/usr/lib/%s' % deb_host_multiarch.strip())
self.start_msg('Checking boost includes')
self.env['INCLUDES_%s' % var] = inc = self.boost_get_includes(**params)
versions = self.boost_get_version(inc)
@ -360,32 +435,26 @@ def check_boost(self, *k, **kw):
Logs.pprint('CYAN', ' shared libs : %s' % libs)
Logs.pprint('CYAN', ' static libs : %s' % stlibs)
def has_shlib(lib):
return params['lib'] and lib in params['lib']
def has_stlib(lib):
return params['stlib'] and lib in params['stlib']
def has_lib(lib):
return has_shlib(lib) or has_stlib(lib)
if has_lib('thread'):
# not inside try_link to make check visible in the output
self._check_pthread_flag(k, kw)
def try_link():
if (params['lib'] and 'system' in params['lib']) or \
params['stlib'] and 'system' in params['stlib']:
if has_lib('system'):
self.check_cxx(fragment=BOOST_ERROR_CODE, use=var, execute=False)
if (params['lib'] and 'thread' in params['lib']) or \
params['stlib'] and 'thread' in params['stlib']:
if has_lib('thread'):
self.check_cxx(fragment=BOOST_THREAD_CODE, use=var, execute=False)
def is_log_mt():
'''Check if found boost_log library is multithread-safe'''
for lib in libs:
if lib.startswith('boost_log'):
lib_log = lib
break
return '-mt' in lib_log
if params['lib'] and 'log' in params['lib']:
self.env['DEFINES_%s' % var] += ['BOOST_LOG_DYN_LINK']
if not is_log_mt():
self.env['DEFINES_%s' % var] += ['BOOST_LOG_NO_THREADS']
self.check_cxx(fragment=BOOST_LOG_CODE, use=var, execute=False)
if params['stlib'] and 'log' in params['stlib']:
# Static linking is assumed by default
if not is_log_mt():
if has_lib('log'):
if not has_lib('thread'):
self.env['DEFINES_%s' % var] += ['BOOST_LOG_NO_THREADS']
if has_shlib('log'):
self.env['DEFINES_%s' % var] += ['BOOST_LOG_DYN_LINK']
self.check_cxx(fragment=BOOST_LOG_CODE, use=var, execute=False)
if params.get('linkage_autodetect', False):

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2015

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2013 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Calle Rosenquist, 2017 (xbreak)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# harald at klimachs.de

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2006-2010 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# -*- coding: utf-8 vi:ts=4:noexpandtab

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# harald at klimachs.de

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Anton Feldmann, 2012

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Tool to extend c_config.check_cfg()

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8
# Christoph Koke, 2013
@ -23,11 +19,6 @@ from waflib import Logs, TaskGen, Task
Task.Task.keep_last_cmd = True
if sys.hexversion >= 0x3030000:
quote = shlex.quote
else:
quote = pipes.quote
@TaskGen.feature('c', 'cxx')
@TaskGen.after_method('process_use')
def collect_compilation_db_tasks(self):
@ -60,10 +51,9 @@ def write_compilation_database(ctx):
directory = getattr(task, 'cwd', ctx.variant_dir)
f_node = task.inputs[0]
filename = os.path.relpath(f_node.abspath(), directory)
cmd = " ".join(map(quote, cmd))
entry = {
"directory": directory,
"command": cmd,
"arguments": cmd,
"file": filename,
}
clang_db[filename] = entry
@ -93,4 +83,3 @@ for x in ('c', 'cxx'):
setattr(t, 'old_runnable_status', getattr(t, 'runnable_status', None))
setattr(t, 'runnable_status', runnable_status)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# CodeLite Project

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/env python
# encoding: utf-8

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
# Thomas Nagy, 2010 (ita)

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# -*- encoding: utf-8 -*-
# Michel Mooij, michel.mooij7@gmail.com

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#! /usr/bin/env python
# encoding: utf-8
#

View File

@ -1,7 +1,3 @@
#! /usr/bin/env python
# encoding: utf-8
# WARNING! Do not edit! https://waf.io/book/index.html#_obtaining_the_waf_file
#!/usr/bin/python
# -*- coding: utf-8 vi:ts=4:noexpandtab
# Tool to provide dedicated variables for cross-compilation

Some files were not shown because too many files have changed in this diff Show More