Commit Graph

190 Commits

Author SHA1 Message Date
Thomas Nagy 3f4acd6ff3
Add a new task semaphore system 2018-07-29 12:13:54 +02:00
Matt Selsky a10822f688 Fix typos 2018-07-28 19:47:10 -04:00
Federico Pellegrin 48a4f6a765 eclipse: generate an external builder when no CDT is used in the project (#2164)
When CDT is not included in the project (ie. we just have Python and/or Java) the current implementation would not create automatically a call to waf
for the build stage. This patch adds in such cases an external builder that automates the call to waf without the need to manually configure one.
2018-05-11 12:16:04 +02:00
fedepell 64a582ecc2 eclipse: add support for generated files management for java and python
added support to search and add into source path also generated source
files for both java and python. this is useful when using generated code
(ie. protoc and pyqt5) so browsing in eclipse works correclty adding also
paths where generated code is done.

extended example in playground demostrating generated code
2018-04-22 00:40:28 +02:00
fedepell c4f8e20e69 pyqt5: improve the sample in playground so can easily work also with pyside2 2018-04-18 08:05:07 +02:00
fedepell bb458769ee protoc: add .proto dependencies also in include path otherwise protoc will fail if dependency is in another directory 2018-03-22 23:13:40 +01:00
Thomas Nagy 8404aa4d5c
Cosmetic changes on the gdbus/dbus tools 2018-03-21 23:56:48 +01:00
Thomas Nagy b806fe31d9
Moved gdbus to the playground area 2018-03-21 23:53:18 +01:00
Thomas Nagy facdc0b173
Python 3.7 fixes #2126 2018-03-12 20:42:55 +01:00
Matt Selsky 28ea6e64e3 Typos 2018-03-06 09:14:40 +01:00
fedepell a02c6d8727 protoc: handle case of proto files in deep directories when output is generated with paths 2018-03-02 19:33:38 +01:00
fedepell 102b85a466 cuda.py: insert a space after -o as by documentation otherwise it will not work
not sure if in very old nvcc version this was working anyway but as far as I can read on the documentation this should be the correct way and I tested it out
2018-01-31 20:34:36 +01:00
Przemyslaw Rzepecki 69157c7b68 Udated Erlang support.
This adds a scaner method to track Erlang heders dependencies.
Support for EUnit tests
Support for EDocs
Support for ERL, ERLC, ERLC_FLAGS environment settings.
2017-12-19 22:03:41 +01:00
Matt Selsky f8f4f74403 Fix waf_unit_test class name 2017-12-03 10:03:24 +01:00
fedepell ffe88abe80 javatest: extra to integrate java unit testing into standard waf_unit_test environment 2017-10-19 08:28:53 +02:00
Matt Selsky 06f0390992 Typos 2017-10-19 08:27:57 +02:00
Thomas Nagy 210874d297
Fix #2053 2017-10-04 20:41:21 +02:00
Federico Pellegrin a02b71a163 protoc: add java support for protobuffers (#2049)
* protoc: added java support

Modified protoc to support also .proto -> .java generation. the .java file
name generated is not obvious as in C++/Python but follows a couple of rules
that were implemented.

As cxx/python and javaw Tools are quite different the implementation is not
as clean as for cxx/python but is hopefully fine (ie. protoc still uses
sources for input files while javac uses src_dir).

In javaw a small detail was added: a new attribute was added (gencode) that
instructs javac to look for source files also in the build directory. This
are realistically generated code (and .proto -> .java is an example) and
are therefore in the build. Default is false keeping all the previous
behaviour.

* protoc for java enhanchments (protoc version, regex, docs)

In configure stage get protoc version as java naming changes depending on the
version. Implement the version differences between version < 2 and > 2

Improve regex for option catching and implement a mix of them in playground
to verify it.

Add some documentation on how java filenames and paths are generated.

* protoc: build dir with generated code is automatically added, so no need to explicitly use gencode in javac
2017-09-26 19:17:40 +02:00
Daniel Brosche 6e44206a67 Cleaned up extended use example 2017-09-23 09:22:05 +02:00
Daniel Brosche 54248f007b Extended playground use example 2017-09-21 07:26:54 +02:00
Federico Pellegrin 4df813941e protoc: extend extra to support also Python language (#2028)
* protoc: extend extra to support also Python language
* protoc: fix ext_out, unite c++/python generation, fix protoc_includes name
2017-09-15 21:00:08 +02:00
Calle Rosenquist 82fd4054a7 pytest: Added better support for normal and pyext library dependencies.
This also includes the `buildcopy` feature that allows construction of complete Python packages in the build dir.
2017-09-04 21:08:10 +02:00
Roman C. Podolski d2f48b5d89 Fix protoc #2009
Fix bug described in #2009 and extend example in playground to include
described scenario.
2017-08-17 19:56:07 +02:00
Thomas Nagy 5468e0031b
Typo process_uselib_vars -> propagate_uselib_vars #2005 2017-08-02 00:42:42 +02:00
Simon fe1bb1b58a Fixed a crash when building a subset of xcode6 targets
E.g. when running 'waf xcode6 --targets=some-target'

  File "/waf/waflib/Scripting.py", line 167, in waf_entry_point
    run_commands()
  File "/waf/waflib/Scripting.py", line 268, in run_commands
    ctx = run_command(cmd_name)
  File "/waf/waflib/Scripting.py", line 252, in run_command
    ctx.execute()
  File "/waf/waflib/extras/xcode6.py", line 679, in execute
    self.post_group()
  File "/waf/waflib/Build.py", line 767, in post_group
    if self.current_group < self._min_grp:
AttributeError: 'xcode' object has no attribute '_min_grp'
2017-08-02 00:24:11 +02:00
Simon 73c276c11b Make xcode6 tool consider standard waf build flags
Build flags like 'cflags', 'cxxflags' passed to xcode6 builds
are now considered by the xcode6 tool. For example, running command 'waf xcode6'
with the following wscript:

cnf.env.CXXFLAGS = ['-std=c++11']
...
bld.program(..., cxxflags='-O3')

now sets the OTHER_CPLUSCPLUSFLAGS in Xcode to '-O3 -std=c++11'
2017-08-02 00:24:07 +02:00
Thomas Nagy 3a838e9851 Delete playground/weak_constraint because it is obsolete 2017-06-20 11:22:58 +02:00
Thomas Nagy 4d7527b4c4 Clarify the exception type raised by cmd_and_log 2017-06-20 11:20:53 +02:00
Thomas Nagy 6a638625cf Update the Swig example #1982 2017-06-19 19:42:53 +02:00
Thomas Nagy e5e8397154 Change producer.outstanding.appendleft to producer.outstanding.append 2017-06-14 19:53:01 +02:00
Thomas Nagy ccf5961607 Ensure link tasks are processed after swig tasks 2017-06-08 19:46:22 +02:00
Federico Pellegrin 11d5efca68 eclipse: added a playground area for testing the eclipse extra (#1968)
* eclipse: added a playground area for testing the eclipse extra

* eclipse: try to clean up a bit the playground by collapsing some wscripts
2017-05-23 21:23:47 +02:00
Simon b30ff35229
Replace param 'source_files' with 'group_files'.
The 'source_files' param to the xcode6 tool was originally separated from the
conventional 'source' param because it was used to control how the source files
would appear in the XCode folder UI. Also, it'd allow to add any file extensions,
and not limited to those extensions supported by the loaded set of waf tools.

This commit renames 'source_files' param to 'group_files'. It also changes the semantic so that 'group_files' now is used like the following:

bld(
 source='...', # These are now the files compiled by XCode
 'group_files': ..., # Optionally customize the way source files appear i the UI
)

Previously, 'source_files' was used to collect source files for compilation in XCode, and to customize the UI folder structure. In this commit source_files is used only to let the user group files in different UI folders (and add additional resource files besides source files). I want to do the renaming to better reflect the param's meaning.

Additional changes:

* Remove unique_filereference

* Updated examples
2017-04-16 01:38:30 +02:00
Thomas Nagy 29b32f7a1a
Reflect the current build group in bld.current_group 2017-04-15 15:12:03 +02:00
Thomas Nagy 566b3fa644
Xcode 6 generator fixes #1939 2017-04-08 02:27:43 +02:00
Justin Israel 6a4091718e Extend ListContext to print TaskGen descriptions
Signed-off-by: Justin Israel <justinisrael@gmail.com>
2017-03-08 18:22:29 +01:00
Thomas Nagy 5ac8e882e0
Remove the TaskBase class hierarchy level 2017-02-11 15:04:25 +01:00
Thomas Nagy f1487eab44
iso8859-1 -> latin-1 2017-01-21 13:28:06 +01:00
Thomas Nagy 1a0396ea88
Accept nested lists as bld(source=...) 2017-01-21 12:50:52 +01:00
Thomas Nagy d0c475462b
docs 2016-12-04 01:36:00 +01:00
Thomas Nagy 9c87928f33
Removed ut_fun from waf_unit_test.py 2016-11-20 10:21:19 +01:00
Thomas Nagy 8bea637dc7
docs 2016-11-06 18:29:16 +01:00
Thomas Nagy 152f40f51a
Test for #1834 2016-10-18 18:20:27 +02:00
Federico Pellegrin 4d40e63fc1 Playground sample on how to chain both qt5 tool and pyqt5 extra to use both at the same time in a waf project (#1832) 2016-10-12 23:53:04 +02:00
Simon 7da04766a3 docs +xcode6 bugfix: do not merge env variables of type dictionary into PROJ_SETTINGS config 2016-10-03 20:36:10 +02:00
Thomas Nagy a28385fe94
docs 2016-09-15 22:41:32 +02:00
Simon 88e7fe7f23 changed name bld.exe() to bld.program() in playground example 2016-09-10 15:54:55 +02:00
Thomas Nagy 6e4ba6620c
Remove the Go example because Go has a completely distinct toolchain now 2016-08-22 19:06:12 +02:00
Thomas Nagy a4f6c7468d
Netcache example update 2016-08-21 17:10:17 +02:00
Thomas Nagy 4ff5b8b7a7
docs 2016-08-15 19:44:23 +02:00