Commit Graph

968 Commits

Author SHA1 Message Date
Josh Bartel 81c3ec0bf3
doxygen: Add install support
This adds support to the doxygen tool for installing the documentation
that was generated.  A new install_path attribute can be added to the
doxygen TaskGen to control where it should be installed to.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-06-09 00:33:20 +02:00
Josh Bartel 53945acb25
doxygen: Set cwd to the Doxyfile folder
The doxygen tool had previously been modified to always run from the
root of the build directory.  This was done as a workaround to allow
the OUTPUT_PATH in the doxyfile to contain a relative path.  The tool
then had to be modified to fix up any relative paths in the Doxyfile
to be relative to the root of the build directory.  This is problematic
because there are many DoxyFile parameters that can be relative paths.

This patch fixes up the logic to execute doxygen in the same directory
where the DoxyFile lives.  This allows all relative paths in the
Doxyfile to work so they no longer need fixed up.  It then updates the
logic for OUTPUT_DIRECTORY to handle relative paths correctly.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-06-09 00:31:13 +02:00
Alexander Afanasyev 9bad7d4f58
ccroot: Setting chmod=Utils.O644 for installation of static libraries
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-06-09 00:25:52 +02:00
Thomas Nagy 3ee08a88f4
Issue 1451 2014-06-08 17:34:35 +02:00
Thomas Nagy 1889619dd4
miscallenous enhancements - Issue 1450 2014-05-30 20:35:09 +02:00
Thomas Nagy 8c678183b0
Follow-up on Issue 1450 2014-05-29 07:23:57 +02:00
Thomas Nagy 3f484f4446
End of Issue 1450 2014-05-24 09:01:31 +02:00
Thomas Nagy 4161ce4827
Issue 1457 - boost or.hpp file 2014-05-23 00:49:27 +02:00
Thomas Nagy 27f0fc9450
Issue 1454 2014-05-21 17:21:29 +02:00
Thomas Nagy 8821ab2b28
moved pch out of demos (requires extras/pch.py) and disabled the dependency on boost 2014-05-21 01:37:14 +02:00
Alexander Afanasyev 3970ffd149
extras/pch.py: Experimental extension to enable precompiled headers for clang++ and g++
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-05-21 00:56:41 +02:00
Thomas Nagy c21317c727
Issue 1453 2014-05-19 21:32:24 +02:00
Thomas Nagy 6be13a74bb
cosmetic change: have you forgotten to load a waf tool? 2014-05-18 17:53:03 +02:00
Thomas Nagy 905d0295f6
Issue 1452 2014-05-17 00:11:34 +02:00
Thomas Nagy 79ef335d3d
Added defines for asm - #1442 2014-04-30 22:37:36 +02:00
Thomas Nagy d4ca0e8cdc
Issue 1440 2014-04-27 20:06:04 +02:00
Thomas Nagy 14a8f03012
Cosmetic changes in extras/swig.py 2014-04-20 02:32:25 +02:00
Thomas Nagy 65d25a9a69
Unmask as many exceptions as possible 2014-04-20 02:29:27 +02:00
Thomas Nagy 8e7c583496
add bld(ut_cmd=True) to enable specific test execution commands - Issue 1438 2014-04-14 18:54:04 +02:00
Thomas Nagy 5f95323ecb
Added a note for -kk in 'waf --help' 2014-04-12 18:16:44 +02:00
Thomas Nagy 4004dd47f3
do not eliminate backslashes from scriptlet expressions when shell=False - Issue 1433 2014-04-12 14:01:10 +02:00
Thomas Nagy 0c4b23fe88 hard-coded code snippets in boost.py - Issue 1432 2014-04-10 07:44:17 +02:00
Thomas Nagy ffb298fabc
Define all platform-specific functions in Utils.py so that they can be replaced again later 2014-04-09 22:27:17 +02:00
Thomas Nagy 063da21871
Changed the default installation folders for import libraries 2014-04-09 22:24:55 +02:00
Thomas Nagy 7cc366513f
fixed the case: CC='ccache gcc' waf configure build 2014-04-07 22:10:56 +02:00
Thomas Nagy 3e426d9198
better location for the finalizer - Issue 1374 2014-04-07 19:02:29 +02:00
Thomas Nagy 97b1dca7b8
Issue 1374 - close config.log 2014-04-01 23:06:10 +02:00
Thomas Nagy 816023237b Define the intltool cache flag automatically - Issue 1221 2014-03-30 01:33:15 +01:00
Thomas Nagy 6a419b6289 New qt5 libs 2014-03-25 22:17:51 +01:00
Chris Winter 53387d8eff c_config: parse_flags: add support for parsing '-isystem' and friends
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-03-24 12:43:29 +01:00
Thomas Nagy b5ceb9ef12
Regression due to lists in GHCPKG 2014-03-17 21:14:19 +01:00
Thomas Nagy 9f7e6a1bfb
Revert "it turns out that writeconsole in ansiterm.py is not needed"
This reverts commit 3deaeb241a.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-03-14 21:47:19 +01:00
Thomas Nagy 0cd060c394
Make it easier to declare asm or preprocessed outputs to c/c++ tasks
The following can be used to add asm outputs to a c++ task (gcc):

        from waflib import Task
        from waflib.TaskGen import feature, after_method
        @feature('cxx')
        @after_method('process_source')
        def add_asm_outputs(self):
                for tsk in self.compiled_tasks:
                        node2 = tsk.outputs[0].change_ext('.s')
                        tsk.env.append_value('CXXFLAGS', '-Wa,-adhln=%s' % node2.abspath())
                        tsk.outputs.append(node2)
2014-03-11 21:23:57 +01:00
Thomas Nagy 11180ae9f6 rcc detection for rcc-qt4 2014-03-11 01:24:49 +01:00
Thomas Nagy 15f24dc7d6
Fix for bld(features='subst', fun=xyz) 2014-03-11 01:18:58 +01:00
Thomas Nagy 584bc46c55 Let subst_fun write empty files 2014-03-09 18:56:12 +01:00
Thomas Nagy 92638245ff
Fixed bld(features='tex', deps='wscript') 2014-03-09 18:25:53 +01:00
Thomas Nagy 72334441ce Issue 1419 - gcc 2.95 detection 2014-03-05 21:23:32 +01:00
Thomas Nagy 015ad7349b Write a different waf-print-msvc.py file each time to help debugging 2014-02-26 07:24:47 +01:00
Syl 300d0cf0bc fixed cpplint with -p command line parameter 2014-02-25 22:52:17 +01:00
Syl 45507b2cdf #1413: moved a test 2014-02-24 20:36:36 +01:00
Syl 33bd87417d fix #1413: added sanity tests for LIB and INCLUDE in boost tool. 2014-02-24 20:35:38 +01:00
Thomas Nagy afd9d8fae9 Issue 1412 - reduce multiple underscores to one in computed define names 2014-02-22 10:47:19 +01:00
Syl a8626ef19c boost: rolled back one of my previous patch, "s" for static needs to be passed by abi.
(for example, sgd for static debug)
2014-02-22 09:13:18 +01:00
Thomas Nagy 40673e8860 api fix - Issue 1410 2014-02-20 22:38:22 +01:00
Thomas Nagy f4185e7a26 Added global file installation pointcut 2014-02-17 00:26:58 +01:00
Syl 0e6728ea6e cpplint: fixed import, sry. 2014-02-16 01:47:18 +01:00
Thomas Nagy 87b447772a
Issue 1409 - syms for mac-o/darwin 2014-02-16 01:28:46 +01:00
Syl 67eebf06a0 cpplint: skip it if waf can't import the module 2014-02-15 13:04:44 +01:00
Syl ab108c002d boost: added "s" to lib pattern, to link with static lib 2014-02-15 13:01:26 +01:00
Syl b0330b0d5d boost: split env variable by ";" instead of space
allows to specify multiple path in INCLUDE and LIB
2014-02-15 11:09:37 +01:00
Joe Steeve 876d640d71 #1404, "boost tool misses libs in Debian multiarch (x86_64)", fixed
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-02-14 21:39:54 +01:00
Thomas Nagy fde332a58b Slightly better error messages 2014-02-14 21:25:38 +01:00
Syl 9febff1d4a cpplint: added --cpplint-output, if the user don't want to use my custom output (choices are vs7, emacs, eclipse, from original script)
cpplint: improved options to env parsing
2014-02-11 23:56:37 +01:00
Krzysztof Kosiński f88bf4f554 Fix defining the xxx_compiler variables in configure().
Due to recent changes, setting xxx_compiler in configure() had no effect.
This commit fixes the problem and changes the examples to show setting
the xxx_compiler variables at the top level of the wscript, so that
the default compilers are correctly reported in the help output.
2014-02-10 09:27:11 +01:00
Syl a71edf58e7 cpplint: changed the way to initialize env from options
cpplint: fixed --cpplint-break
2014-02-09 22:10:47 +01:00
Syl 610d0d59f2 Merge branch 'master' of https://code.google.com/p/waf 2014-02-08 21:04:00 +01:00
Syl c2d1e1b3e5 added cpplint tool 2014-02-08 20:57:46 +01:00
Thomas Nagy 1b49106197 Added a solver to distnet 2014-02-08 15:49:25 +01:00
Gustavo Carneiro 69fb126a4c Issue 1405 2014-02-04 10:55:26 +00:00
Thomas Nagy 45f0f3b77a Ported distnet to Python 3 2014-02-03 23:16:32 +01:00
Thomas Nagy 8faafeb913 Issue 1276 - suppress configuration outputs 2014-02-02 04:04:21 +01:00
Jérôme Carretero d15bf94934 add distnet extras tool, and assorted examples (WIP)
vs. builds on shared folders...
2014-02-01 14:41:05 -05:00
Thomas Nagy ff4b88c82f Removed unused variables from Task.py 2014-02-01 14:33:00 +01:00
Thomas Nagy 6e1e59a999 Do not print tasks that have nothing to display 2014-02-01 14:28:00 +01:00
Thomas Nagy e085c8d25d Moved the find_binary function into a replaceable method 2014-02-01 14:13:16 +01:00
Thomas Nagy 1018065c2e Disabled the duplicate flag filter in bld(...) 2014-01-30 21:37:00 +01:00
Thomas Nagy c8bc800432 A more robust way of sorting commands in remote.py 2014-01-30 08:07:07 +01:00
Krzysztof Kosiński 6f18c1bd99 Revert the prune_flags changes.
The changes break flags such as -framework X -framework Y.
2014-01-27 16:34:40 +01:00
Krzysztof Kosiński c9fe554af4 Fix typos in compiler_* tools.
Commit ca60d62bed contaied some errors resulting from copy-pasting
code around, which caused problems with D and Fortran compiler tools.
2014-01-27 16:20:01 +01:00
Krzysztof Kosiński 48a82dacbf ccroot: allow overriding the prune_flags setting
through a taskgen parameter
2014-01-27 16:12:02 +01:00
Krzysztof Kosiński 1e92b72aa6 ccroot: optional deduplication of command line flags.
Introduce a global variable in ccroot called prune_flags.
If set to "True", only the last repetition of each flag
will be left in the command line.
2014-01-27 04:46:14 +01:00
Krzysztof Kosiński 8147d0a18b Add support for parameter define_name to check_cfg 2014-01-27 03:45:35 +01:00
Krzysztof Kosiński 47bd581246 Modularize the tools 'glib2' and 'intltool'.
In some scenarios only some components of the glib2 tool are
necessary; for example, if intltool-merge is only used for
creating localized desktop files, it's not useful on Windows.

Rewrite the configuration function of the tools into several methods,
so that the 'funs' parameter can be used to only configure
specific programs from the tools.
2014-01-27 02:34:27 +01:00
Thomas Nagy d4b2f086a1 Enable automatic ssh host discovery in remote.py 2014-01-26 17:57:49 +01:00
Krzysztof Kosiński b0f8796a27 c_bgxlc: append rather than prepend the compiler 2014-01-26 05:12:56 +01:00
Krzysztof Kosiński f3c57157ea Revert "Rename the c_bgxlc tool to bgxlc." 2014-01-26 05:11:13 +01:00
Thomas Nagy 74b36a1002 Removed a warning in remote.py and ensured each variant runs a remote command 2014-01-25 23:58:41 +01:00
Thomas Nagy 4a0a7106c4 Do not climb if a command starts by 'configure' 2014-01-25 23:38:29 +01:00
Jérôme Carretero 173cd3beca add remote tool, for review 2014-01-25 16:55:03 -05:00
Krzysztof Kosiński 1986a6a80b Interpret leftover arguments containing an equals sign
as environment variable definitions rather than commands
2014-01-25 22:28:07 +01:00
Krzysztof Kosiński e4afaa957e Update default compilers in compiler_c and compiler_cxx
to include the clang tools
2014-01-25 22:12:29 +01:00
Krzysztof Kosiński b0b7227ddd Rename the c_bgxlc tool to bgxlc.
Tool names starting with "c_" are reserved for special tools.
2014-01-25 21:34:28 +01:00
Krzysztof Kosiński e95b150c56 Add simple compiler tools for clang and clang++ 2014-01-25 21:00:27 +01:00
Krzysztof Kosiński 30bdee769b Clean up some cruft in the compiler tools (icc, icpc, gxx) 2014-01-25 20:59:14 +01:00
Krzysztof Kosiński 82ab2fcaf5 Merge branch 'waf-1.8' of https://code.google.com/p/waf into waf-1.8 2014-01-25 20:35:48 +01:00
Krzysztof Kosiński 80b831a958 Improvements to conf.find_program()
1. When using a relative name passed through the environment,
search for it in PATH rather than using it as-is.
This is better, because PATH could have been changed.

2. Do not search for absolute paths in PATH.
2014-01-25 20:28:30 +01:00
Thomas Nagy 564c4c1a60 (keep the -1 in ansiterm for now) 2014-01-25 20:26:11 +01:00
Thomas Nagy 1b534ee8d2 ansiterm fix: use FillConsoleOutputCharacterW instead of FillConsoleOutputCharacterA 2014-01-25 19:59:51 +01:00
Krzysztof Kosiński 9a824a5649 Fix missing module import in compiler_c 2014-01-25 19:31:11 +01:00
Krzysztof Kosiński c38a4fb4f0 More consistent error messages in the generic compiler tools 2014-01-25 19:28:55 +01:00
Krzysztof Kosiński 86b87413c8 Always return a value which evaluates to True when check_cfg succeeds. 2014-01-25 19:12:44 +01:00
Krzysztof Kosiński ca60d62bed Modify the generic compiler tools to use the "Configuration options" group.
Add a mechanism to set the compiler precedence for D, for consistency.
2014-01-25 18:50:04 +01:00
Krzysztof Kosiński cffbb89cb4 Move the initialization of default options from opt_parser
to OptionsContext, so that tools can add options to the default
option groups without using black magic.
2014-01-25 18:28:14 +01:00
Krzysztof Kosiński f386392fb2 Change the option group for glib2 schema dir to be the same
as the one for gnu_dirs installation directories.
2014-01-25 18:24:51 +01:00
Krzysztof Kosiński 526abea553 Improve the directory descriptions in gnu_dirs 2014-01-25 18:23:07 +01:00
Thomas Nagy c395bffed8 Workaround for Issue 1401 - the progress bar cannot display the last character on windows 2014-01-25 02:02:28 +01:00
Thomas Nagy d413616400 The progress bar should always appear on stderr 2014-01-23 22:22:15 +01:00
Thomas Nagy 2943824c51 Issue 1399 - invalid cast in syms.py 2014-01-23 21:19:57 +01:00
Thomas Nagy 3498ef6773 info to stdout, warning and errors to stderr 2014-01-19 21:28:17 +01:00
Thomas Nagy fa8fed39a0
'x use y use AAA' will add the AAA flags to x, but 'x use y uselib AAA' will not 2014-01-18 01:46:53 +01:00
Thomas Nagy fbb7a0e720
Merge from Jerome's branch 2014-01-16 02:03:53 +01:00
Matt Fischer 2f2866a4cd msvs: Added support for MSVS 2012
With the addition of one new field, the project files generated by
the msvs command can be opened by 2012 as well as 2010.

Change-Id: I27c3a04ec156029f7a6690b27cf27013f5816d2f

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2014-01-14 20:26:09 +01:00
Thomas Nagy 9f7ceb0e91 Issue 1395 2014-01-14 20:11:11 +01:00
Thomas Nagy 3581b89fbb
Enable custom regexp in bld(features='subst', re_m4=...) 2014-01-14 19:58:45 +01:00
Thomas Nagy a29f775851 Merge from Jerome's branch 2014-01-14 02:31:08 +01:00
Thomas Nagy b11454526d Fixed the KeyError for multiple dependencies on the same task 2014-01-12 21:19:49 +01:00
Thomas Nagy 010b944062 typo 2014-01-12 19:49:31 +01:00
Jérôme Carretero 0e7df22ad5 Utils: check_exe() to return an absolute path so it can be called
Because there cases where subprocess.Popen'ing the [result] can fail.
2014-01-08 01:58:11 -05:00
Thomas Nagy 12b1212f4d
command-line options override environment variables, and not the other way around 2014-01-06 15:00:45 +01:00
Thomas Nagy 0cc696faa3
Invalid parameter type c_int passed to FillConsoleOutputCharacterA 2014-01-06 01:14:21 +01:00
Thomas Nagy 5c85d5907d
FillConsoleOutputCharacterA seems to be requiring a c_char, not a c_wchar 2014-01-06 01:01:10 +01:00
Thomas Nagy 001488b8d3
Signatures for the rest of ctype functions 2014-01-06 00:54:35 +01:00
Jérôme Carretero 33a60e79e7 treecleaner: 'in [...]' replaced by 'in (...)' where appropriate 2014-01-05 16:27:06 -05:00
Thomas Nagy d01f7f36e0
Stop creating range objects in ansiterm 2014-01-05 21:47:21 +01:00
Thomas Nagy 8d8ba52810
Removed the workaround in ansiterm.py 2014-01-05 21:39:39 +01:00
Thomas Nagy e01695d536
Trying to get rid of the invalid handle errors in ansiterm 2014-01-05 21:31:54 +01:00
Thomas Nagy 107ebc9251
Trying to get rid of the invalid handle errors in ansiterm 2014-01-05 21:30:52 +01:00
Thomas Nagy ece779b5ed
Temporary workaround for ctype errors (invalid handle is returned sometimes) 2014-01-05 20:53:13 +01:00
Thomas Nagy 68acc6a2b9
Return the column count on windows 2014-01-05 11:23:49 +01:00
Thomas Nagy f8b24e70a9
Forgot to change always/never by yes/no in Options.py 2014-01-05 10:54:18 +01:00
Thomas Nagy 85bfd3eded
Minor changes in the logging system 2014-01-05 10:51:24 +01:00
Thomas Nagy 3deaeb241a
it turns out that writeconsole in ansiterm.py is not needed 2014-01-05 10:18:57 +01:00
Thomas Nagy 4107a0e29d
New option --color to control the coloring, and split the coloring from the output synchronization code 2014-01-05 01:39:32 +01:00
Thomas Nagy fa5f149775
removed the is_vista verification, write the text by chunks and default to the default stream writer when not a tty 2014-01-04 23:20:17 +01:00
Thomas Nagy 526620f16d
Cleanup in ansiterm.py 2014-01-04 17:20:19 +01:00
Thomas Nagy 4ce22a6fa2
Typo 2014-01-04 12:15:21 +01:00
Thomas Nagy 1b34dadd88
Re-added Parallel.error_handler 2014-01-04 11:04:59 +01:00
Thomas Nagy 8ae91879ce
Revert 2f7d561cb0 - there are regressions and the performance improvement is in Pypy only 2014-01-03 22:32:58 +01:00
Thomas Nagy 5032695f26
Simplified the error handling on task status in Runner.py (API change) 2014-01-03 18:22:34 +01:00
Jérôme Carretero f462fd9f31 extras: clang_compilation_database: python3 fixes 2014-01-02 18:26:10 -05:00
Thomas Nagy f098a0dde4
make mem_reducer.py ready for python 3 2014-01-02 23:56:31 +01:00
Thomas Nagy 2f7d561cb0
Runtime improvements in Runner.py by using deques by default (python >= 2.4) 2014-01-02 23:35:17 +01:00
Thomas Nagy 5fc835639e
Encapsulate task skipping in a method to help with the shrinking sets feature 2014-01-02 20:21:45 +01:00
Thomas Nagy 44720924b6 case when c classes are brough by msvc but no c compiler is required, demos/c++/wscript on windows 2014-01-02 18:12:35 +01:00
Jérôme Carretero a99ddb808f extras: gccdeps: fix for CXX_NAME (but some issues remain) 2014-01-02 06:24:52 -05:00
Jérôme Carretero 6546e34176 Tools: ar: support for ARFLAGS environment variable
For instance, to make deterministic archives::

ARFLAGS=rcsD waf configure
2014-01-02 06:24:39 -05:00
Thomas Nagy 80bc0a65ce
moved the TINY_STEP variable to the module level 2014-01-01 19:59:59 +01:00
Thomas Nagy 118bbfbf4d let ansiterm write to the standard error on windows 2014-01-01 15:11:32 +01:00
Thomas Nagy 4445b7e0b6 Issue 1391 xrange 2013-12-24 15:32:09 +01:00
Thomas Nagy 29252511d0 Issue 1390 - conf.check(lib='several libs') 2013-12-21 17:29:06 +01:00
Thomas Nagy 69f73f9625 Issue 1388 2013-12-20 18:16:41 +01:00
Thomas Nagy a34eda4e8f Issue 1389 fc scanner improvements 2013-12-20 18:02:03 +01:00
Thomas Nagy d2fcc7b7be special case of files created in the source directory in combination with update_outputs 2013-12-18 23:21:34 +01:00
Thomas Nagy 2048f0fb89 another optimization spot for the shrinking sets system 2013-12-15 17:21:02 +01:00
Thomas Nagy f9536abbb8 shrinking sets for the memory reducer 2013-12-15 12:47:12 +01:00
Thomas Nagy a4b03b0fd6 removed the set copy to enable faster iterations 2013-12-15 12:19:01 +01:00
Thomas Nagy 6d05e237d2 Memory usage reducer, based on a post to the mailing-list by Christian Nilsendahl 2013-12-12 15:26:56 +01:00
Thomas Nagy c09de54b82 Issue 1384 - pickle changes in Python 3.4 2013-12-07 20:17:43 +01:00
Thomas Nagy 6fb96036f0 Issue 1382, hash randomization on python 3.3 causes reconfigurations 2013-11-28 20:00:50 +01:00
Thomas Nagy 16c0bc9d2b problem when merging qt5.py (no run method) 2013-11-24 18:24:03 +01:00
Thomas Nagy 5664664a1a regression in qt4.py when adding qt5.py 2013-11-24 17:58:50 +01:00
Thomas Nagy cf75dc3308 qt5 tool 2013-11-24 14:19:28 +01:00
Thomas Nagy bccf38b50a Issue 1381 - moc file caching 2013-11-23 12:50:39 +01:00
Thomas Nagy c7c299ddf0 unused variable 2013-11-17 13:24:14 +01:00
Thomas Nagy 2226ee472f notes 2013-11-17 01:09:04 +01:00
Thomas Nagy c521b1d076 Issue 1379, nasm trailing slashes 2013-11-16 20:13:41 +01:00
Thomas Nagy 346601b103 handle empty defines when pasting tokens 2013-11-15 23:24:51 +01:00
Thomas Nagy 797b935305 Issue 1377 2013-11-15 18:20:25 +01:00
Thomas Nagy fb022f4787 do not convert to png anymore, and added a templating engine to replace the string appending 2013-11-14 22:44:12 +01:00
Thomas Nagy 4953daf3d4 Issue 1376: Hide commands starting by _ 2013-11-12 21:25:09 +01:00
Thomas Nagy 7b6c4e2c9d inconsistent tabs/spaces 2013-11-10 19:53:56 +01:00
Thomas Nagy cc6de0b989 Guess the console columns in the general case by trying stderr and then stdout 2013-11-10 06:02:04 +01:00
Thomas Nagy ecc1f63a63 moved imports to the top 2013-11-10 05:32:50 +01:00
Thomas Nagy 6055744a5f Use explicit imports in ansiterm.py 2013-11-10 05:27:18 +01:00
Thomas Nagy 8571c15a1b missing change 2013-11-08 22:46:51 +01:00
Thomas Nagy dcd6184d3f Issue 1372 version detection for old and buggy sun compilers 2013-11-08 22:45:34 +01:00
Thomas Nagy 067ade9a40 Issue 1375, doxygen and paths containing spaces 2013-11-07 23:11:57 +01:00
Thomas Nagy de94ba37c9 enable dist/distcheck on windows, Issue 1373 2013-11-07 22:07:05 +01:00
Thomas Nagy 3884124886 Issue 1371 2013-11-03 00:14:04 +01:00
Thomas Nagy 2f43179c39 1.7 -> 1.8 2013-10-28 21:32:25 +01:00
Thomas Nagy feaad909d5 Missing folders for Issue 1325 2013-10-28 21:25:58 +01:00
Thomas Nagy 12cade1ec8 typo 2013-10-28 21:05:57 +01:00
Thomas Nagy ff820ccf49 Extract rpath flags into use variables 2013-10-27 14:56:04 +01:00
Thomas Nagy ed661ed41c have distclean remove the waf cache on windows 2013-10-27 14:01:38 +01:00
Thomas Nagy b13e98f1e4 Match file extensions in the order of declaration 2013-10-27 12:42:41 +01:00
Thomas Nagy 8f24d28534 recompile swig files if the swig version changes 2013-10-27 10:17:38 +01:00
Matt Fischer f381bfd901 syms.py: Fix dep_nodes manipulation
Fixed a line in syms.py to append to the dep_nodes list instead of
forcibly overwriting it.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-10-25 00:02:48 +02:00
Thomas Nagy 84c9aa9a04 another regression caused by find_program changes 2013-10-23 00:10:28 +02:00
Thomas Nagy 50737b138a Python 3.4 now provides non-inheritable file handles by default 2013-10-21 20:58:00 +02:00
Thomas Nagy 0f0f36b040 Issue 1367, python 2.4 and boost.py 2013-10-20 19:39:28 +02:00
Thomas Nagy b0ec707975 Issue 1366, swig defines 2013-10-17 21:37:30 +02:00
7f2fe42579 implicit cython dependency pyx->pxd, Issue 1363 2013-10-15 00:42:13 +02:00
Dariusz Pelowski 53ab568fe5 fix for missing package name argument for 'pkg-config' call during fetching custom variables
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-10-15 00:25:26 +02:00
Thomas Nagy 455e22838a Issue 1361, syms.py and python3 2013-09-30 17:56:48 +02:00
Thomas Nagy 90b491e834 moved the parser function definition out of the while loop 2013-09-30 00:05:36 +02:00
Thomas Nagy 9ec230fb4d cleanup 2013-09-29 23:45:36 +02:00
Thomas Nagy 54d4ff7ce0 'is not None' is unnecessary 2013-09-28 23:55:08 +02:00
Nate Rosenblum 87403f4285 Allow doxygen parameters to be passed to task
The doxygen demo program suggests that doxy parameters can be passed
as arguments to the task, e.g.,

   bld(features="doxygen", doxyfile="doxy.conf",
        pars={'INPUT': bld.path.ant_glob("**/*.c")})

Previously, these inputs were not passed from the task generator
to the task, and only the parameters read from the doxy configuration
file were used. This patch retrieves parameters (if any) from the task
generator and uses them to override those in the doxy file,
allowing more flexible overriding for individual build targets.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-09-28 23:54:55 +02:00
Jérôme Carretero e7425bc2ba extras: rst: fix typo 2013-09-24 00:59:16 -04:00
Thomas Nagy 9838d0bb08 New cppckeck tool from Michel Mooij 2013-09-22 17:41:17 +02:00
Jérôme Carretero dcea4231ef extras: rst: also build rst2html from the folder in which the target is built 2013-09-20 13:32:03 -04:00
Jérôme Carretero b170b314ad extras: rst: shorter rst2*tex code 2013-09-18 23:57:05 -04:00
Jérôme Carretero 4e205c4487 extras: rst: add rst2s5 support via extension of rst2html 2013-09-18 23:25:09 -04:00
Jérôme Carretero 7a20f2fd44 rst: rst2pdf fixup for includes in source and build folder 2013-09-18 02:15:54 -04:00
Jérôme Carretero 952c5b1ec7 extras: rst: fix another typo and add rst2xetex support 2013-09-18 02:06:01 -04:00
Jérôme Carretero 27afbfe600 extras: rst: fix "typo" 2013-09-18 02:01:09 -04:00
Thomas Nagy d693385073 merged the openbsd shared library installation fixes from waf 1.7 2013-09-17 00:26:16 +02:00
Jérôme Carretero 57f6a272e2 Tools: tex: note on target bypass 2013-09-14 00:34:13 -04:00
Jérôme Carretero 8a9b3825a2 Tools: msvc: fix regression in msvc MT tool call (issue #1357)
Yeah, env['MT'] is a list.
2013-09-12 18:50:06 -04:00
Thomas Nagy e07529ad89 Issue 1348, gdc detection for gdc-msys 2013-09-11 07:52:27 +02:00
Thomas Nagy 487cc43df2 Issue 1354, clang compilation databases 2013-09-11 07:50:25 +02:00
Thomas Nagy dedafdfa81 Disabled the pickle gc optimization by default (computers are fast enough now, and it can be reenabled if necessary) 2013-09-10 21:28:25 +02:00
Jérôme Carretero f81e6c5499 extras: rst: little fixes 2013-09-09 01:01:57 -04:00
Thomas Nagy fe1bbf536f Issue 1356 icl detection with python 3 2013-09-07 13:27:13 -04:00
Jérôme Carretero 00946bacdb extras: protoc: document protoc trickiness
I tried to quickly go through the protoc source to find how the include
paths are interpreted, but I'm sleepy now.
2013-09-05 01:10:20 -04:00
Jérôme Carretero bf5ce8b30c extras: protoc: add dep scanner 2013-09-05 00:48:29 -04:00
Jérôme Carretero 12b5c2f2a4 TaskGen: create_task: allow passing attributes to task instance via kw
use case: some programs want to run in specific folders
2013-09-05 00:48:00 -04:00
Jérôme Carretero 863662fa65 extras: rst: fix typo 2013-09-05 00:18:15 -04:00
Jérôme Carretero 150d1ed0b5 extras: ocaml: env.OCAMLC is a list 2013-09-05 00:16:50 -04:00
Jérôme Carretero 8076e8d52e Tools: c_config: one more fix for the path, which can also be a string... 2013-09-05 00:12:45 -04:00
Jérôme Carretero 89358e70d4 Tools: flex: env.FLEX is a list 2013-09-05 00:08:00 -04:00
Jérôme Carretero da5d43d418 Tools: perl: env.PERL is a list (+ simplifications) 2013-09-05 00:05:04 -04:00
Jérôme Carretero 5b97eefb66 Tools: vala: env.VALAC is a list 2013-09-04 23:53:30 -04:00
Jérôme Carretero 85e7df4ea1 Tools: c_config: fix mistake in previous commit 2013-09-04 23:47:47 -04:00
Jérôme Carretero 95679a89bb Tools: ruby: env.RUBY is a list 2013-09-04 23:36:21 -04:00
Jérôme Carretero 14ee893d20 Tools: qt4: command paths are lists already 2013-09-04 23:35:58 -04:00
Jérôme Carretero 8d37f79ea2 Tools: c_config: pkg-config is indeed a list of strings 2013-09-04 23:21:19 -04:00
Jérôme Carretero d6dd3fd8ab Tools: unit test: fix indentation 2013-09-04 23:20:51 -04:00
Jérôme Carretero dc75919559 extras: swig: env.SWIG is a list now 2013-09-04 23:15:12 -04:00
Jérôme Carretero 1f4c66f0c7 Tools: ruby: env.RUBY is a list 2013-09-04 23:13:34 -04:00
Jérôme Carretero 5064fd92ef always use the convention that commands are lists, remove find_perl_program, add interpreter 2013-09-04 23:10:10 -04:00
Jérôme Carretero 1fad148b2c Tools: python: allow passing PYTHON in environment 2013-09-04 00:35:49 -04:00
Thomas Nagy e87782e58b removed Node.bld_base, used only once 2013-09-01 21:46:43 +02:00
Thomas Nagy a1b8eb3831 Issue 1352, changed the default name for qt resources 2013-09-01 21:29:34 +02:00
Jérôme Carretero 24cc97f42e Utils: remove str_to_dict 2013-08-30 10:23:10 -04:00
Jérôme Carretero 2e08d80fce Utils: shave a few bytes from Timer 2013-08-30 01:10:29 -04:00
Thomas Nagy f14314faa2 Mention that makeglossaries is a program when raising the error 2013-08-27 12:11:50 +02:00
Joe Steeve 4cbee2c4ed Issue 1342 Tools.tex, run 'makeglossaries' if 'glossaries' is used
Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-08-27 11:54:16 +02:00
Jérôme Carretero a67c8c9017 fix shlib vnum for OpenBSD 2013-08-26 16:09:19 -04:00
Jérôme Carretero ccec98efc4 tools: tex: replace warnings by info as they are not warnings at all 2013-08-25 20:09:42 -04:00
Jérôme Carretero 459f04cbee extras: rst: fix scan regression 2013-08-25 18:33:53 -04:00
Jérôme Carretero 7f571e0a28 tools: tex: allow to pass a Node as manual dep 2013-08-25 15:37:11 -04:00
Jérôme Carretero f9944a5ec7 rst: make parser overridable 2013-08-25 15:35:33 -04:00
Jérôme Carretero e62d3771e1 extras: rst: add basic rst2latex support 2013-08-24 21:26:37 -04:00
Jérôme Carretero f982e0461a tools: tex: scan (local) style files too 2013-08-24 20:24:02 -04:00
Jérôme Carretero 2b309cfb79 extras: rst: use to_list on rst options, use -o switch to make older rst2pdf happy 2013-08-21 01:21:17 -04:00
Jérôme Carretero 669094a51f extras: rst: add install_path processing (defaults to not installing) 2013-08-20 13:59:45 -04:00
Jérôme Carretero 24abf4f08c extras: rst: pimp the scanner
Changes:
- update the include regexp to support the figure directive, and
  substitution targets.
- warn on missing files that would be included
2013-08-18 23:29:50 -04:00
Jérôme Carretero 5e16b5dbbc extras: add rst tool, for reStructuredText processing 2013-08-18 17:17:00 -04:00
Alexander Afanasyev 8e50cda867 extras/doxygen: Adding support for RECURSIVE and making detection non-mandatory by default
added: support for RECURSIVE, as well as for included and excluded files

changed: detection of doxygen is non-mandatory by default. If it is
         desired that doxygen is mandatory, user is expected to check
         bld|conf.env.DOXYGEN and bld|conf.env.TAR variables

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-08-18 21:31:22 +02:00
Thomas Nagy 135fed0830 Issue 1334 2013-08-17 20:24:21 +02:00
Thomas Nagy 20ae777428 disabled the check_exe validation by default and enabled invalid name detection 2013-08-17 18:19:10 +02:00
Alexander Afanasyev 9b75b843ae Tools/python: Extending python tool
add: show more command-line arguments to control which
     python is used and where py/pyext files should be installed.
     The new options are in addition to the existing PYTHON, PYTHONDIR,
     and PYTHONARCHDIR environment variable, providing the help messages
     to the user, so it can easily change parameters without second-guessing
     of what are they.

     Environmental parameters override command line arguments (is it right?)

updated: An extension to Configure.find_command to allow specification
         of the name for the searched command (using `msg` option). This is
         helpful when the search command is a huge list, as in the case of
         python's python-config case.

updated: Do not specify prefix for `get_python_lib`, since this way it
         can result in a wrong PYTHONDIR and PYTHONARCHDIR on certain platforms
         (e.g., OSX)

updated: Changing logic with byte-compilation of python files. Mow, files are
         compiled during the build stage, not install stage.  During the
         install stage files are simply copied to the requested
         location.

updated: If there is an error in python source code, byte-compilation
         phase will raise an exception and abort building process.

Signed-off-by: Thomas Nagy <tnagy2pow10@gmail.com>
2013-08-17 18:15:05 +02:00
Jérôme Carretero b32ab8c7c5 utils: fix "typo" in check_exe()
Yeah, I was returning the directory name in some cases...
2013-08-14 17:57:26 -04:00
Thomas Nagy 19e624b5f4 Issue 1345 multibib support in tex/latex 2013-08-14 18:37:16 +02:00
Jérôme Carretero 8c2c8f1615 Context: simplify waf tool loading error handling
- Assuming that an exception could have been raised, the worst thing
  we do is presenting the wrong exception to the user.
- Actually, the exception is more precise now:

  - if we want to load('pouet'), the error will always be::

      ``No module named pouet``.

  - if we want to load('pouet.coin') the error will always be::

      ``No module named pouet.coin``

    Before it could be either::

      ``No module named pouet.coin``

    or::

      ``No module named coin``
2013-08-14 11:31:44 -04:00
Jérôme Carretero 5db6202ce1 context: "fix" waf tool loading with python 3.3 2013-08-14 11:20:01 -04:00
Jérôme Carretero f3f9e9f99d provide a clearer error message in case Popen'ed executable is not executable
subprocess.Popen() will give a proper error message if the first
argument is an absolute path, but if it's a bare command name, it will
complain with a "Permission Denied" error.

This change provides a clear error every time.

If speed is proven to have an impact on this code, we could add
the "Logs.verbose > 0" precondition or add memoization.
2013-08-12 20:00:47 -04:00
Jerome Carretero a40dbe073b waf-zip: zip-packed waf
Ability to use a waflib.zip file with waf-zip entry point

Changes:

- created waf-zip entry point
- waflib.zip can created by doing::

     zip waflib -9 waflib/*.py waflib/Tools/*.py waflib/extras/*.py

- the wscript also builds waflib.zip
- allow selecting which core tools to use (saves 31k for C/C++ only)
  By default, everything is included.
- altered module loading functions to allow loading modules from a zip file.
2013-08-12 19:34:43 -04:00