Commit Graph

897 Commits

Author SHA1 Message Date
Thomas Nagy 698888f149 wafcache: skip uploads when inputs are modified while building 2022-10-02 01:51:02 +02:00
Thomas Nagy 2a1eeba691 Sort visual studio versions by version number #2352 2022-05-22 11:30:52 +02:00
Alibek Omarov b91ef6a91b msvc: fix version detection when new and old compilers are installed 2022-05-22 11:30:34 +02:00
Thomas Nagy d7d5e9d2d6 docs: fix the inheritance diagrams in the apidocs 2022-05-17 23:54:58 +02:00
Miro Hrončok b093e9eac7 Python: Use EXT_SUFFIX config var over the deprecated/removed SO
Fixes https://gitlab.com/ita1024/waf/-/issues/2386
2022-05-17 17:31:40 +02:00
Francescodario Cuzzocrea 317e3e8579
tools: c_tests: use stlib flag instead of shlib in check_endianness
shlib is no-op in some baremetal newlib based toolchains (for example in
riscv one), and causes the check to fail as the --dynamic flag is not
recognized
2022-05-12 14:56:09 +02:00
Mathieu Parent 97302d9758 Add support for GNU/kFreeBSD
Where default compiler is gcc
2021-12-14 14:24:32 +01:00
Thomas Nagy 8dc07cc533 Detect qt5 libraries in alphabetical order 2021-12-08 02:19:28 +01:00
Thomas Nagy 8ca3cbd277 Detect Qt3D* libraries #2368 2021-12-08 02:19:20 +01:00
Federico Pellegrin 910133a5b6 wafcache: support stats also for multiple build commands 2021-11-24 20:42:26 +01:00
Morten V. Pedersen 59a9b24cf8 Waf 2.1 fix python tool 2021-09-30 19:30:49 +00:00
Thomas Nagy 58b58fb0ee On windows, try $INCLUDEPY/../libs to detect the Python library path 2021-05-06 21:48:39 +02:00
Alibek Omarov a82625297d c_config: add RISC-V generic detection 2021-04-15 17:30:54 +02:00
Erik Parker a23b3f5e9b winres: Pass include paths by environment variable 2021-04-05 22:04:23 +02:00
Thomas Nagy 28318c9cca Remove the method conf.add_as_needed because it does not check for the flag usage 2021-03-12 07:54:52 +01:00
Thomas Nagy bf5a825317 Work around faulty vcvarsall.bat scripts #2315 2021-01-30 16:22:55 +01:00
Bootsma, James ca3ca0591e waf_unit_test: Fix command handling under windows
The unit test tool moved from a simple split to using shlex.split for
handling the unit test command. This results in the path separators on
windows being treated as escapes.

To handle this the unit test exec command is properly escaped before
joining so that the subsequent split restores the original arguments.
The quote function is also exposed in the Utilities module so that
wscripts making use of the unit test tool can properly quote their
contributions to the command as well.
2021-01-21 18:51:47 +01:00
Thomas Nagy e0c16b3ada Suppress cache trimming operation errors 2021-01-19 17:14:52 +01:00
Federico Pellegrin a8469f49d8 wafcache: fix reporting of concurrent trim error
As this is run in the non-waf process we don't have Logs, so we
write to stderr instead or we will get a NameError name 'Logs' is
not defined.
2021-01-11 23:39:45 +01:00
Federico Pellegrin 1d722360be wafcache: fix small typo on stats log message 2021-01-09 01:26:58 +01:00
Thomas Nagy a296b4119e Do not detect Qt6 when detecting Qt5 2020-12-26 20:43:37 +01:00
Federico Pellegrin 54464f0a20 wafcache: add simple cache statistics collection, configurable via env 2020-12-26 20:24:57 +01:00
Thomas Nagy 1e729ba345 Work around distutils MACOSX_DEPLOYMENT_TARGET regression #2330 2020-12-17 14:18:33 +01:00
Thomas Nagy 6ed66ce90b Reduce wafcache verbosity on cleanup operations 2020-12-15 11:06:05 +01:00
Thomas Nagy 6a5753da93 Conceal wafcache decoding errors in Python3 2020-12-15 10:58:00 +01:00
Thomas Nagy 3af7222fa0 Improve the WAFCACHE_CMD description 2020-12-09 08:20:32 +01:00
Thomas Nagy 4e61e3a563 Improve WAFCACHE_CMD parameter handling 2020-12-09 08:20:07 +01:00
Federico Pellegrin 5584d1e687 wafcache: make the extra more configurable for cloud providers usage 2020-12-09 08:19:58 +01:00
Thomas Nagy b41f13b3a0 Exclude wafcache symlink handling
- Exclude classes having folder or symlinks
- Exclude well-known Task classes from wafcache processing
- Remove stale 'waflib.Task.Task.chmod' processing
2020-12-08 22:00:52 +01:00
Federico Pellegrin d1eb41f944 wafcache: add support for MinIO/mc cache
Add support for MinIO object storage (https://min.io/) using the
MinIO client (https://github.com/minio/mc) to wafcache.

MinIO is an open-source, self-hostable, S3 compatible cache. The
MinIO client supports MinIO connections as well as normal S3/GCS
storages by configuring aliases beforehand.

Hint: some distributions have `mc` (the GNU Midnight Commander)
installed which is not the minio client, be aware of this (or your
build may get stuck with waf waiting for `mc` to never finish)
2020-11-02 17:50:13 +01:00
Federico Pellegrin 9cd8a801c7 waf_unit_test: consider ut_cmd always for task signature 2020-11-01 21:20:02 +01:00
Thomas Nagy 6f8828dc3a Force unit test re-runs on environment or command changes 2020-11-01 21:19:56 +01:00
Federico Pellegrin 47d097d5a0 waf_unit_test: make sure test is rerun if ut_str changes 2020-11-01 21:19:38 +01:00
Thomas Nagy e73e8d680a Fail Qt5 detection immediately when the c++ compiler is missing 2020-09-19 08:49:05 +02:00
Thomas Nagy ea509dd782 Determine a suitable msvc version option from VSCMD_VER in environment
See b3d1a0c2d4
2020-08-19 23:54:04 +02:00
Thomas Nagy 025ba60ebf Force an asm-specific defines flag 2020-08-15 12:16:36 +02:00
Thomas Nagy f65d08f5d5 Improve wafcache process pre-allocation 2020-08-03 23:20:53 +02:00
Thomas Nagy b41b1741d1 Improve the definition of static link tasks 2020-07-20 22:51:24 +02:00
Alibek Omarov 260f6065b9 c_config: add MCST Elbrus detection 2020-07-20 22:37:51 +02:00
Thomas Nagy 14b7d15a03 Ensure that the assertion message is showed in python.py #2302 2020-07-15 17:35:22 +02:00
Federico Pellegrin 5ee61cfa91 qt5: improve documentation on library detection and options 2020-05-02 19:09:43 +02:00
Thomas Nagy a910d07d55 Make the unit test result format API compatible with waf 2.0 2020-04-28 01:17:07 +02:00
Federico Pellegrin ba9ddfbfcb waf_unit_test: return also test task in report tuples 2020-04-22 03:55:38 +02:00
Federico Pellegrin 0c616901b4 c_config: -flto and -fno-lto need to be passed also when linking 2020-03-27 20:20:30 +01:00
swaldhoer 93a0258996 Add support for clang++ on cygwin 2020-03-27 20:20:12 +01:00
swaldhoer 02cff4a20c add support for clang on cygwin 2020-03-27 20:19:49 +01:00
Federico Pellegrin c438138476 javaw: fix buglet overwrites working variable while adding dependencies
variable x is used in the outer loop and gets corrupted by inner enumeration in case of non-jar dependency

to reproduce: use the demos/java and run waf build twice: the first time will work (since no class files around)
while the second will not since will by bad luck pick a class file in the inner loop
2020-01-04 11:31:15 +01:00
Thomas Nagy 13d9c8566c Reduce relative path lengths to work around Visual Studio limitations #2272 2019-12-18 07:27:03 +01:00
Thomas Nagy 07d3203e0b
Make multicheck collisions less likely 2019-12-14 23:49:24 +01:00
Thomas Nagy 52a49960c1 Improve extras/clang_cl 2019-12-10 07:53:23 +01:00