2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-09 23:12:23 +00:00
Commit Graph

1170 Commits

Author SHA1 Message Date
Rene Rivera
ddf2a8c5e0 Add support to override b2 exec for testing.
Adds use of `B2` env var to specify the b2 exec to use for testing.
This allows us to use debug and sanitizer builds for testing.
2020-12-31 08:34:59 -06:00
Rene Rivera
af486c017f Damn python not groking utf-8. 2020-12-21 21:30:15 -06:00
Rene Rivera
714840f36f Add documentation for response-file feature. 2020-12-21 21:08:12 -06:00
Rene Rivera
03ef46ec4d Add python coding hint as py is too dumb to figure it out by itself. 2020-12-13 21:52:12 -06:00
Rene Rivera
e206f0d602 Initial implementation of dynamic response files.
This implements the ability for response file "@()" substitution to
dynamically adjust to either expand the content or create the response
file depending on the possible command line length. This should
reduce the create of such response temp files improving build
performance.
2020-12-13 21:30:03 -06:00
René Ferdinand Rivera Morell
482c25f3a2 Minor fix for py3 compat. 2020-10-22 21:04:49 -05:00
sjcooke
59065850ec Add missing relevant features for searched lib targets (Fixes #515) (#640)
* Add missing relevant features for searched lib targets (#515)
* Added a regression test for searched lib targets (#515)
2020-09-01 21:52:44 -05:00
Rene Rivera
4f6f4a2510 Add missing early exits to bootstrap sequence.
Some tests failed because the bootstrap would continue to run even
detecting a problem. This puts in the missing early return statements
in the boost-build builtin rule to get the short circuit on error
like the original Jambase.
2020-06-23 22:15:07 -05:00
Rene Rivera
59b7a6dc69 Port Jambase to C++.
This ports the minimal Jambase to native C++. This removes the need for
mkjambase and the Jambase files. To accomplish that it adds C++
utility wrapers around Jam language primitives. Which makes future
similar work much easier.
2020-06-22 08:48:24 -05:00
Edward Diener
992e1044ba Using latest clang-linux-3.9.0.py. Corrected msvc.jam once again. 2020-06-04 22:21:11 -04:00
Edward Diener
b03b5d2808 Merge branch 'develop' of https://github.com/eldiener/build into cppbuilder 2020-05-19 11:50:13 -04:00
Rene Rivera
c2137c3503 Allow wildcard matching for arg_file type args. 2020-05-14 20:24:55 -05:00
Edward Diener
2cfc73214d Merge branch 'develop' of https://github.com/boostorg/build into cppbuilder 2020-05-02 00:38:21 -04:00
Edward Diener
3c06be3d2f Updated fies. 2020-05-02 00:37:39 -04:00
Rene Rivera
7d9866256d Allow testing toolsets that use response files.
This adds exclusions for toolsets that use response files for some
commands. Mostly it ignores the generated rsp files.
But also adds a special arg_file value to the MockProgram for future
use for possible content checking.
2020-05-01 10:13:28 -05:00
Nikita Kniazev
943a28a8ba Fix pch path conflict on GCC (#563)
* Follow-up to removed restriction of pch naming on GCC

* Fix pch path conflict on GCC

gcc-pch-generator rewrites target name to a value derived from a header name
and this cases path conflict if multiple pch are created from the same header.

hello.cpp is duplicated in the test for the same reason but for `exe` target --
`exe hello-afx : hello.cpp ;` uses `hello.o` for object file name.
2020-04-03 20:27:41 -05:00
Nikita Kniazev
8198576481 Remove pch target naming restriction on GCC (#561)
Do not require pch target to have the same name as the header base name.

The restriction was added in 76d041d7c1 without
a rationale and only for GCC while reworking PCH support for GCC and MSVC.
2020-04-03 07:30:15 -05:00
Nikita Kniazev
f384d2f5a8 force-include feature (#558)
Specifies an include path that has to be included in a way like if
`#include "file"` appeared as the first line of the primary source file.
2020-04-02 11:56:47 -05:00
Rene Rivera
3595602a14 Big rename from Boost.Build to B2. 2020-03-09 11:08:48 -05:00
Mateusz Łoskot
bdccf53eec Make sure b2 exits immediately on syntax errors (#540)
Add test verifying Jam syntax error results in non-zero exit status.

Refines #538
Fixes #539
2020-03-02 14:03:38 -06:00
Edward Diener
d8cdc48fa6 Warning about writing to the console when running the tests for Boost Build. (#470)
* Add a warning to running the Boost Build tests about outputting to the console in a configuration jam file.

* Fix the tests if the toolset passed has a version.
2019-08-28 07:10:31 -05:00
Rene Rivera
4348970fc8 Fix unit tests to account for -j default. 2019-06-03 22:02:40 -05:00
Rene Rivera
3549a4d5da MinGW passes all tests. 2019-04-02 00:09:54 -05:00
Rene Rivera
a3b3054856 Merge remote-tracking branch 'origin/develop' into feature/cxx 2019-04-01 21:04:59 -05:00
Steven Watanabe
1c50088007 Propagate the python executable for the mock toolset tests. 2019-04-01 14:20:53 -06:00
Steven Watanabe
0de4c23deb Fix test for msvc. 2019-04-01 13:55:07 -06:00
Steven Watanabe
1e19d74d46 Change always to affect all targets created by a metatarget and add a test for it. Fixes #390. 2019-04-01 12:32:41 -06:00
Rene Rivera
b032a8e514 Decode bytes output we can get from commands. 2019-03-31 18:24:27 -05:00
Rene Rivera
60027ff4de Fix bga.py for py3. 2019-03-31 15:58:20 -05:00
Rene Rivera
85e5a2caa8 Port b2 tests to dual py2 and py3.
Now that the tests work in py2 or p3 we don't set py version in AP. This
allows for dealing with the AP images that don't have a way to set the
py version.
2019-03-31 15:37:03 -05:00
Steven Watanabe
ae682028d5 Adjust the properties passed to check-target-builds correctly. Also some translation fixes for indirect conditionals in general. Fixes #419. 2019-03-30 14:20:44 -06:00
Rene Rivera
854c9f075b Fix newly broken prebuilt test for msvc. 2019-03-24 22:07:42 -05:00
Rene Rivera
683b1c70a8 Fix prebuilt test to account for mingw lib names. 2019-03-24 20:57:00 -05:00
Rene Rivera
143aa649e5 Try and fix prebuilt test for mingw. 2019-03-24 17:44:03 -05:00
Rene Rivera
8f96882110 Fix glob archive test to work with mingw.
Makes glob archive test not depend on result order. Also change to make
appveyor tests work with gcc testing.
2019-03-24 13:23:59 -05:00
Rene Rivera
5ee7ebcf16 Merge origin/develop 2019-03-20 19:38:36 -05:00
Steven Watanabe
42aeed7ff1 Relative paths for --prefix, --libdir, etc. are now bound relative to the current working directory, instead of being relative to the Jamfile. 2019-03-09 14:00:21 -07:00
Steven Watanabe
a283d72196 Expand subfeatures in target references. Fixes #380. 2019-01-03 10:17:41 -07:00
Steven Watanabe
b42fa406ea Fix test for windows. Also add package.py to test_all.py. 2018-12-18 20:39:16 -07:00
Steven Watanabe
914f7d4cbe Fix package.install-data, which was broken by my previous commit, and add tests for it. 2018-12-18 12:26:41 -07:00
Steven Watanabe
3ca5a60bb6 Add package.paths to centralize calculations of installation paths. Also add a test case for package. 2018-12-17 18:38:33 -07:00
Rene Rivera
43e2523ddb Another instance of target-os causing path mismatch failure. 2018-11-12 21:04:42 -06:00
Rene Rivera
6f235b53bd Account for target-os in build path. 2018-11-12 18:48:19 -06:00
Rene Rivera
698aac70d5 Minimal changes to compile with C++.
These are some minimal changes to compile with C++. Here begins
the road to rewriting the bjam engine in C++. So far this is only built
and tested with XCode clang on OSX.
2018-10-20 17:36:10 -05:00
Rene Rivera
1b35aa7eda Rootless specific tests. 2018-10-18 22:51:13 -05:00
Rene Rivera
df2eadef97 Add test for rootless projects. 2018-10-18 10:22:32 -05:00
Rene Rivera
2744026f64 Adjust project test to account for rooted jamfile.
With sans-jamroot projects we don't get a missing jamroot error.
Hence we can get other errors, like in this test that fails to find
definitions in the missing jamroot.
2018-10-18 08:35:01 -05:00
luzpaz
a2b8731d2a build: misc.typos (#341)
* build: misc.typos

Found via `codespell -q 3 --skip="./src/engine/boehm_gc" -L te,iff`

* Revert 3rdParty code changes
2018-09-26 09:54:06 -07:00
Steven Watanabe
65368dfa75 When adding the default value of a feature, also add the default values of its subfeatures. Fixes #308. Closes #310.
* Rework the test case expansion.py to avoid interference from user-config.jam
  and toolsets which previously masked this problem.  Also add a test case
  specifically for this issue.
* Remove the test case for BB60.  I have no idea what BB60 is, but the test
  case doesn't seem particularly important for the current implementation
  given that project requirements are merged into the target requirements
  long before conditionals are evaluated.
2018-05-22 12:22:52 -06:00
Steven Watanabe
7ea55e4f2d Fix configure.choose when none of the targets build successfully. Refs #295. 2018-04-04 17:33:24 -06:00