2
0
mirror of https://gitlab.com/ita1024/waf.git synced 2024-11-22 18:07:12 +01:00
Commit Graph

1528 Commits

Author SHA1 Message Date
Thomas Nagy
74e54322c5
Use try-else-finally in Python >= 2.5 2016-05-18 22:01:37 +02:00
Thomas Nagy
3f38b9d2b8
Logic simplification 2016-05-18 21:34:23 +02:00
Thomas Nagy
3c5be88550
Better names for install task method and compatibility fix for install_task.dest 2016-05-18 19:43:14 +02:00
Thomas Nagy
fd05cff103
Missing installation fixes 2016-05-17 19:49:44 +02:00
Thomas Nagy
5cb7b89ac1
typo 2016-05-16 20:11:00 +02:00
Thomas Nagy
26b370f440
Remove a few more 'Exception:' lines 2016-05-14 12:15:15 +02:00
Thomas Nagy
158bc72e8e
Remove the old shutil.copy override on Windows 2016-05-14 11:29:06 +02:00
Thomas Nagy
12c7609802
Removed some dead code 2016-05-14 00:16:29 +02:00
Thomas Nagy
9a5b0e41ac
Fix waf step 2016-05-13 23:24:02 +02:00
Thomas Nagy
62f8b482ab
Code simplifications 2016-05-13 23:20:07 +02:00
Thomas Nagy
da5c7d8b5c
Moved unnecessary constants out of Context.py 2016-05-11 21:59:16 +02:00
Thomas Nagy
441ed98a3d
Better error messages in Qt5 2016-05-09 22:33:01 +02:00
Thomas Nagy
145dba3fd1
Unused variable 2016-05-06 20:59:40 +02:00
Thomas Nagy
3fb226c994
Use the build command in configuration tests (hard-coded BuildContext class) 2016-05-06 20:57:53 +02:00
Thomas Nagy
226c2b1d94
Set install_to from the add_install_task 2016-05-06 20:56:36 +02:00
Thomas Nagy
b1f5c0f814
Create installation tasks directly
Task generators created from other task generators may be
skipped during partial builds. This change re-enables
install_task as a task attribute and provides a task
object with input and output nodes which can be re-used
by other tasks.
2016-05-06 15:54:36 +02:00
Thomas Nagy
5511593318
Move boring Build.inst construction details to the class 2016-05-06 11:12:54 +02:00
Thomas Nagy
9991004343
Extract Build.inst.run_now 2016-05-06 09:57:01 +02:00
Thomas Nagy
20b62a4eea
docs 2016-05-06 09:11:31 +02:00
Thomas Nagy
6c21deb583
install_task -> install_tg 2016-05-03 23:14:10 +02:00
Thomas Nagy
16082a4c3e
docs 2016-05-03 21:27:15 +02:00
Thomas Nagy
b70692dbb3
Add a configuration test to add /usr/local/lib in linkflags on FreeBSD 2016-05-01 17:03:55 +02:00
Thomas Nagy
568cd6881d
Set the Qt5 search path on FreeBSD 2016-05-01 16:21:23 +02:00
Thomas Nagy
e7aa8349be
Changed the moc_foo.cpp file name to moc_foo.n.cpp to protect against name clashes 2016-05-01 14:49:55 +02:00
Thomas Nagy
ae8253f571
Process Qt files according to the Qt documentation 2016-05-01 14:21:46 +02:00
Thomas Nagy
6b2e837bc2
Issue 1726 2016-05-01 13:21:06 +02:00
Thomas Nagy
eb62ce7620
Set post_mode=POST_LAZY by default to process the next build groups once build files are present 2016-04-30 15:10:16 +02:00
Thomas Nagy
a7dac255af
Fix an error in the progress bar 2016-04-30 14:24:46 +02:00
Thomas Nagy
80109eacbe
Improve error handling in the case of missing implicit dependencies
Avoid calling are_implicit_nodes_ready() twice.
Stop the build when files are missing or truncated.
Provide a better error message and avoid catching all exceptions.
2016-04-30 13:35:08 +02:00
Thomas Nagy
fdc67d58f6
Fix an undefined variable in parallel_debug 2016-04-28 20:25:04 +02:00
Thomas Nagy
bf45d33f9e
Update parallel_debug 2016-04-28 20:14:02 +02:00
Thomas Nagy
b59a04a086
Moved the garbage collection code to the object owner 2016-04-28 20:12:20 +02:00
Thomas Nagy
3e86ea6cb8
Fixed an accidental dependency on inst.dest 2016-04-28 00:33:34 +02:00
Thomas Nagy
dd81cb74dc
Pass the vala environment for installation (not modified so it should be fine) 2016-04-28 00:29:12 +02:00
Thomas Nagy
1eaa87413d
Refactor bld.install_as/bld.install_files/bld.symlink_as to use actual task objects 2016-04-28 00:23:54 +02:00
Thomas Nagy
09f67a3b3a
Remove the private Scripting._can_distclean function 2016-04-27 18:42:38 +02:00
Thomas Nagy
bc3915c90a
Close process.py for running processes - Issue 1735 2016-04-27 18:35:02 +02:00
Thomas Nagy
e77b8dc24b
Catch errors in format_defines 2016-04-26 19:38:19 +02:00
Thomas Nagy
8b32d93ec3
cleanup: '%s' -> %r 2016-04-26 19:35:46 +02:00
Thomas Nagy
ba1932ebc2
Do not define the empty prec object on task_gen instances by default 2016-04-26 19:22:56 +02:00
Thomas Nagy
508b20679d
Do not truncate _task suffixes from Task class names 2016-04-26 18:33:03 +02:00
Thomas Nagy
0ba6b042d5
Remove mac_resources processing, use mac_files instead 2016-04-25 22:35:58 +02:00
Thomas Nagy
304935bb9f
Remove popitem() which was added for the lru cache 2016-04-23 23:02:16 +02:00
Thomas Nagy
9133dbc5c9
Cleanup: no need for keys() everywhere 2016-04-22 21:10:22 +02:00
Thomas Nagy
3899c150e3
Provide a more performant LRU cache implementation 2016-04-22 19:43:18 +02:00
Thomas Nagy
d2cd1ebd0b
Provide our own version of ordered_iter_dict
Python OrderedDict does not provide a C implementation, so it
is just best to use our own implementation by default.
We also want the iteration order from the end for the purposes
of matching files by extension.
2016-04-22 19:36:35 +02:00
Thomas Nagy
44db1efc02
Enable regexp objects in @extension besides strings for file extensions 2016-04-22 19:27:22 +02:00
Thomas Nagy
b0954282e9
Remove the -DDLL_EXPORT flag which was added by default to fortran link on windows platforms 2016-04-21 22:37:27 +02:00
Thomas Nagy
b87a761ead
Tuples in startswith/endswith (Python 2.5 feature) 2016-04-21 22:30:35 +02:00
Thomas Nagy
d2ba87b296
Duplicate code 2016-04-21 22:12:39 +02:00
Thomas Nagy
8520dd65bb
Code cleanup 2016-04-19 22:00:21 +02:00
Thomas Nagy
8114914e62
Colorgcc for other compilers? Issue 1732 2016-04-19 21:47:59 +02:00
Thomas Nagy
fd2981f91f
Remove Task.dep_vars as it is unnecessary 2016-04-16 13:05:27 +02:00
Shawn Hoover
ac3a332b03 Enable lazy Visual Studio detection by default: one missed spot. 2016-04-15 13:41:53 -04:00
Thomas Nagy
fa8d8e2b45
Typo in platform_toolset_ver 2016-04-12 22:06:08 +02:00
James Harris
10a6e27872 Add PlatformToolset ver. to msvs proj template
This patch adds support for an easier syntax for customizing which
version of Visual Studio msvs.py targets. It also allows users to
specify the PlatformToolset property on projects generated by waf. This
is necessary in order to properly generate projects for newer versions
of Visual Studio such as 2013 and 2015.

Example Syntax:

To generate a solution targeted at visual studio 2013 use the following
example:

```Python
class msvs_2013(msvs.msvs_generator):
    cmd = 'msvs2013'
    numver = '13.00'
    vsver = '2013'
    platform_toolset_ver = 'v120'
```

This will populate the associated fields correctly for msvs 2013.
2016-04-12 19:06:41 +02:00
Thomas Nagy
e35d3628d2
Add EnvContext to simplify configuration-dependent command definition 2016-04-11 23:28:33 +02:00
Thomas Nagy
e0080e9f58
Identify java tasks more accurately and add build order on non-jar tasks - Issue 1725 2016-04-11 00:08:20 +02:00
Thomas Nagy
aeed691829
Fun with conditional expressions 2016-04-08 18:37:09 +02:00
christophe.duvernois
49ed1e0c0a java tool : allow manifest to be a node 2016-04-05 19:23:32 +02:00
Thomas Nagy
2c06f0acd6
Simplification 2016-04-05 19:22:54 +02:00
Thomas Nagy
d7a295ab0f
Simplification m.group(0) -> m.group() 2016-04-04 22:18:28 +02:00
Thomas Nagy
e8cf059004
Do not strip / from conf.check(x=, uselib_store=Y) stored arguments 2016-04-04 19:00:31 +02:00
Thomas Nagy
a1a24c8456
Use define_name in check_cfg(define_name=, global_define=1) 2016-04-03 13:20:42 +02:00
Thomas Nagy
e790f6d40f
Added a deprecation warning for the case conf.check_cfg(atleast_version=) 2016-04-03 12:40:00 +02:00
Thomas Nagy
89d5b5462f
Enable define_name in conf.check(modversion=,define_name=) 2016-04-03 12:09:22 +02:00
Thomas Nagy
c0c0da2e92
Set DEFINES=[X=1] with conf.check_cfg(define_name=X) to override the defaults 2016-04-03 11:42:59 +02:00
Thomas Nagy
00c955d8fa
Option for adding HAVE_X to conf.env - conf.check(add_have_to_env=1) 2016-04-03 11:08:00 +02:00
Thomas Nagy
cf9330a371
Remove Context.__hash__ 2016-04-01 23:27:46 +02:00
Thomas Nagy
ee0778a76f
Extra parenthesis around assert message 2016-04-01 23:14:26 +02:00
Thomas Nagy
41dcf329b0
Include any symlink in dist archives - Issue 1719 2016-03-31 22:10:47 +02:00
Thomas Nagy
8717fa791f
outstanding.insert -> outstanding.append_left 2016-03-31 07:42:08 +02:00
ita1024
a0bd260957 Merge pull request #1721 from mclayton7/waf-1.9
Fix qt4.py to use deque instead of list
2016-03-31 07:36:28 +02:00
Mac Clayton
19dc72e16d Fix qt4.py to use deque instead of list 2016-03-30 19:04:57 -05:00
Thomas Nagy
bd255ce641
Missing TaskBase.uid() method 2016-03-30 23:01:46 +02:00
Thomas Nagy
c2361d54bd
Removed TaskBase.attr as it is never used 2016-03-30 21:17:26 +02:00
Thomas Nagy
c563396afe
Do not add defines to config.h when global_define is 0 2016-03-28 17:49:27 +02:00
Thomas Nagy
6089893e40
Simplify the assignment of configuration test execution to defines 2016-03-28 16:19:36 +02:00
Thomas Nagy
9fd2683095
Let conf.check/conf.check_cfg set HAVE_x in config.h by default 2016-03-28 16:16:30 +02:00
Thomas Nagy
1eaa5e7a0f
parse_flags code cleanup 2016-03-28 14:46:29 +02:00
Thomas Nagy
b585594d4d
For consistency, cast HAVE_X to integer values 2016-03-28 09:59:24 +02:00
Thomas Nagy
c917e1af63
Remove empty entries in windows path splitting 2016-03-27 21:41:21 +02:00
Thomas Nagy
1ebb318ec0
find_node returns Nodes that exist, no need to verify again 2016-03-27 21:29:02 +02:00
Thomas Nagy
6579592065
re_cpp matches are never empty 2016-03-27 19:25:12 +02:00
Thomas Nagy
51b68cf13b
New --profile command-line option 2016-03-25 14:20:57 +01:00
Thomas Nagy
31742bd06d
Remove old fixes for Python < 2.3 2016-03-25 14:02:36 +01:00
Thomas Nagy
026bae9601
Reduce the amount of function calls in include extraction 2016-03-25 13:30:32 +01:00
Thomas Nagy
df7fc838ce
Do not capture unused regexp groups 2016-03-25 12:56:25 +01:00
Thomas Nagy
5d8d7bf700
Save a few function calls in waflib/Tools/c_preproc.py 2016-03-25 12:22:00 +01:00
Thomas Nagy
ca01ddb83a
Removed an unused variable in Task.py 2016-03-25 12:03:45 +01:00
Thomas Nagy
3cbd029cc9
Task.sig_vars, Task.sig_explit_deps and Task.sig_implicit_deps return None 2016-03-25 11:50:32 +01:00
Thomas Nagy
a64a8d1d29
Extend relative cwd processing to Task generators 2016-03-23 22:28:14 +01:00
Gustavo Jose de Sousa
d46f541099 Use stash/revert/commit pattern for transactional configuration
Apply that pattern when relevant. That allows correct behavior if tools are
loaded inside a transaction.
2016-03-22 08:05:53 +01:00
Thomas Nagy
85e403516c Issue 1632 2016-03-19 18:14:08 +01:00
Gustavo Jose de Sousa
b5584470f9 Add commit() method to ConfigSet
That allows users to use nested transactions.
2016-03-19 15:22:09 +01:00
Thomas Nagy
e8bf2731d1
Increase the default cache size for c_preproc 2016-03-19 15:18:16 +01:00
Thomas Nagy
a08aff6bff
Format debug/info records lazily 2016-03-19 14:46:22 +01:00
Thomas Nagy
d62767e561
Add Node.isdir and remove cache_isdir optimizations for the time being 2016-03-19 14:21:02 +01:00
Thomas Nagy
555507975d
Rewrite ConfigSet._get_list_value_for_modification 2016-03-19 10:26:42 +01:00
Thomas Nagy
d54622e341
Simplification: remove Configure.err_handler 2016-03-18 19:54:31 +01:00
Thomas Nagy
7960f19cb1
Fix for extra lines in windows logs - Issue 1715 2016-03-18 19:32:10 +01:00
Thomas Nagy
1fb3645493
Simplifications 2016-03-18 18:26:25 +01:00
Thomas Nagy
017d8fd39e
Use relative paths in apply_incpaths by default
Relative paths are usually best for for specialized compilers (emscripten),
so this is for convenience. Absolute paths are usually faster.
2016-03-17 22:56:34 +01:00
Thomas Nagy
ddead0ed59
Simplification: use dict.update() 2016-03-16 23:01:49 +01:00
Thomas Nagy
b63ae9b2ef
Code simplification 2016-03-16 22:37:18 +01:00
Thomas Nagy
e19c0e7e77
Simplification, no need to use item ids anymore 2016-03-16 20:11:24 +01:00
Thomas Nagy
0970eb86cb
docs 2016-03-15 22:06:10 +01:00
Thomas Nagy
83c237ffe0
Redundant repr() call 2016-03-12 12:35:09 +01:00
Thomas Nagy
d81dfac34e
docs 2016-03-12 12:32:27 +01:00
Thomas Nagy
89ac2f0215
Issue 1594 2016-03-09 22:25:52 +01:00
Thomas Nagy
42622a6e52
Do not cache Waf tools in configure 2016-03-07 23:38:14 +01:00
Thomas Nagy
3cac9c7077
Node objects can be folders too, but dependencies must be managed manually 2016-03-07 21:12:51 +01:00
Thomas Nagy
6768a4cb38
Unbind task.last_cmd when the command is successful 2016-03-06 17:23:24 +01:00
Thomas Nagy
333aec0b96
Removed Utils.nogc as it is unused 2016-03-05 11:45:16 +01:00
Thomas Nagy
b95db27d05
Micro-optimization 2016-03-05 11:05:43 +01:00
Thomas Nagy
64af7a67bb
clang quirks - Issue 1714 2016-03-04 19:23:14 +01:00
Thomas Nagy
a8a918763f
Missing output with -j1 2016-03-03 23:36:18 +01:00
Thomas Nagy
028ecf43df
Workaround for unreadable home folders 2016-03-01 22:45:39 +01:00
Thomas Nagy
0ab704f5a4 Minor optimization in Utils.h_list 2016-02-29 18:40:44 +01:00
Thomas Nagy
b4437f3b51
Exception handling enhancements 2016-02-28 14:23:54 +01:00
Thomas Nagy
3ced4c6695
Utils.ex_stack is the same as traceback.format_exc as we are no longer on Python 2.3 2016-02-28 12:23:18 +01:00
Thomas Nagy
08a39b7b19
Ironpython does not have += on deques 2016-02-28 11:37:00 +01:00
Thomas Nagy
126fc7e4b4
Missing piece of code 2016-02-28 11:30:18 +01:00
Thomas Nagy
1524d74301
Missing line 2016-02-28 10:34:32 +01:00
Thomas Nagy
df956ed5c5
Better task cleanup logic 2016-02-28 10:13:03 +01:00
Thomas Nagy
248d89e85b
Use deques 2016-02-28 10:01:43 +01:00
Thomas Nagy
220ac6de5e
Pre-fork processes for Python2 2016-02-28 00:12:50 +01:00
Thomas Nagy
9dbcc4274b
Fixed the broken logic in process execution 2016-02-27 09:37:04 +01:00
Daniel Bartel
015f522fb3 add option for line length to cpplint 2016-02-26 23:11:37 +01:00
Thomas Nagy
1f95d2c4cb
Popen objects provide pid (not getpid) 2016-02-26 21:23:49 +01:00
Thomas Nagy
5bf16d51d8
Lockless list of processes 2016-02-26 21:09:50 +01:00
Thomas Nagy
0ce499c24c Revert "Make D dependency scanner aware of package.d files"
This reverts commit a61528efc3.
2016-02-26 21:05:13 +01:00
Alexander Afanasyev
b99a82ddfe Boost module enhancements and fixes
- Output detected version of boost in dot-form (e.g., 1.56.0, instead of 1_56)
- Fix Boost.Log library detection:
  * when linking to shared library, BOOST_LOG_DYN_LINK needs to be defined
  * when linking to non-multithreaded version, BOOST_LOG_NO_THREADS needs to be defined

  (see http://www.boost.org/doc/libs/1_60_0/libs/log/doc/html/log/installation/config.html)
2016-02-26 21:04:50 +01:00
Thomas Nagy
1ee5adc3b3
Error handling enhancements 2016-02-26 20:11:58 +01:00
Thomas Nagy
f56f22bb50
Prefix by # to have the artifacts at the root of the build directory 2016-02-26 19:25:23 +01:00
Thomas Nagy
d131a37ac9
No new processes needed on IronPython 2016-02-26 18:52:43 +01:00
Thomas Nagy
75e9735a22
Python3 fixes 2016-02-26 18:36:38 +01:00
Thomas Nagy
023c540b80
Simplifications - child processes will exit on broken pipes 2016-02-25 22:58:11 +01:00
Thomas Nagy
e0b080b7c6
Jython fix 2016-02-25 22:28:00 +01:00
Thomas Nagy
b2bcee43cb
Python 3 fixes 2016-02-25 21:53:17 +01:00
Thomas Nagy
8207a878a9
Enable multiprocessing for faster subprocess execution 2016-02-25 20:03:07 +01:00
Thiago da Silva Andrade Soares =^.~=
4bea5a28ae Cppcheck tool - Fix creation of invalid command on windows
The following error occurring when we try to run the cppcheck tool on windows.
As we see in the error message, the command is not well formed.

WafError:
    Command "['C:\\\\Program Files (x86)\\\\Cppcheck\\\\cppcheck.exe'] --inconclusive --report-progress --verbose --xml ..."
returned 1
2016-02-24 21:53:15 +01:00
Thomas Nagy
e176101c8c
Nicer configuration message on ruby detection 2016-02-24 07:16:04 +01:00
Thomas Nagy
df8e144631 Smarter detection of programs passed to the command-line 2016-02-23 22:59:29 +01:00
Thomas Nagy
9147e9128a
Cleanup: unnecessary semicolons in Python code 2016-02-19 23:26:40 +01:00
Thomas Nagy
a02a0b54b3
Limit caching unnecessary data in preproc.py 2016-02-19 23:26:19 +01:00
Thomas Nagy
2d89937205
-DFOO in compiler commands - Issue 1704 2016-02-18 21:56:02 +01:00
Thomas Nagy
7e16c7cb1e
Removed bld.returned_tasks 2016-02-15 23:52:11 +01:00
Thomas Nagy
0bafa590f3
Trim less in lru_cache 2016-02-15 23:23:34 +01:00
Thomas Nagy
31381f9b63
Cache Node signatures on the context level 2016-02-15 23:04:30 +01:00