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

11624 Commits

Author SHA1 Message Date
Steven Watanabe
c4bfb6d2f7 Make mock-program compile in C++03 2018-01-08 19:15:46 -07:00
Steven Watanabe
6c5735a06d Add test for passing optional features on the command line. 2018-01-08 18:37:17 -07:00
Steven Watanabe
6244e5ad21 Add specific tests for the processing of properties on the command line.
* Fix problems in x-product that could make it return extra property-sets
  in complex cases.  Also clarify exactly what it is supposed to do.
* free_features_request.py: This is subsumed by the new test.
* direct_request_test.py: This is mostly subsumed by the new test
  except for the last test for chained build-projects, which doesn't
  make much sense in the current code base as build-project is implemented
  very differently.
* Document using / to separate properties.
2018-01-08 17:01:32 -07:00
Steven Watanabe
429081e45e expect_content inadvertently ignored the first element. 2018-01-08 15:56:53 -07:00
Steven Watanabe
e5d385d390 Rework handling of indirect conditionals.
* property-set now considers <conditional> to be conditional
* property.evaluate-conditionals-in-context now handles indirect
  conditionals as well.  This is the correct behavior for all places
  where evaluate-conditionals-in-context is currently used.
* Indirect conditionals now translate paths relative to the project
  in which they were defined, not relative to the current project.
* usage-requirements no longer use targets.evaluate-requirements,
  as the iterative algorithm is completely unnecessary (It's also
  wrong, since the new features shouldn't be applied to the evaluation
  context).
* indirect conditionals are removed from the property set when they
  are evaluated, just list regular conditionals.  (This is a consequence
  of passing them through evaluate-conditionals-in-context)
* This also allows non-free features in usage-requirements to "work" again
  (for some definition of work).
2018-01-06 16:01:36 -07:00
Steven Watanabe
15c876025a Make target requirements handle subfeatures and composites correctly
* feature.add-defaults: No longer accepts conditionals and returns
  expanded properties.  This matches the actual usage, and conditionals
  never really worked right anyway.
* property.refine: Remove subfeatures of removed features.
* Moved property-set expansion and adding defaults into
  targets.evaluate-requirements so that they correctly interact with
  the target requirements.
* Expand subfeatures when matching target alternatives.
* Non-property-specific subfeatures like <cxxstd>11-iso are expanded correctly.
2018-01-06 14:24:54 -07:00
Steven Watanabe
a4962133a0 Kill code that has no effect because it accesses a non-existent variable. This is already handled elsewhere. 2018-01-06 13:55:05 -07:00
Steven Watanabe
a3caa57af3 Clean up library modules. feature.get-values is nicer than property.select + G=. 2018-01-04 12:37:32 -07:00
Steven Watanabe
a0dbab8c78 Fix handling of implicit-dependency in xsltproc. Previously, <dependency> was necessary because the include scanner was not set up correctly. 2018-01-04 09:22:30 -07:00
Steven Watanabe
12decb3ce6 Rewrite gcc to use toolset.flags again. 2018-01-01 12:51:43 -07:00
Steven Watanabe
bf5db0d505 Remove old test name. 2017-12-30 12:19:47 -07:00
Steven Watanabe
61989801ca Unduplicate options. Allow ranlib and ar to be set, to make mocking easier. Fix condition for setting linker-type. 2017-12-30 10:58:14 -07:00
Steven Watanabe
44598b2107 Clean up test names. 2017-12-30 10:53:03 -07:00
Steven Watanabe
205146c15f Tests for clang-linux. 2017-12-29 12:32:58 -07:00
Steven Watanabe
dda019c9d9 Tests for intel-darwin. 2017-12-28 15:40:00 -07:00
Steven Watanabe
6ffd6b9c7a Add test for clang-darwin. 2017-12-27 13:30:23 -07:00
Steven Watanabe
53cf891d8a Add test for the darwin toolset. 2017-12-26 21:27:01 -07:00
Steven Watanabe
a84c6d4c0c Add gcc/target-os=darwin test. 2017-12-26 16:31:37 -07:00
Steven Watanabe
fa78d4fed7 Don't pass -d0, except for the tests that actually require it. Suppress global -d arguments for tests that check stdout or set -d explicitly. All tests now pass in verbose mode. 2017-12-26 13:25:40 -07:00
Steven Watanabe
0c2f6ba03f Finally kill flavor as a gcc subfeature. Adjust check for cygwin. 2017-12-26 10:51:30 -07:00
Steven Watanabe
b339e8df4b Fix property order. 2017-12-26 10:38:14 -07:00
Steven Watanabe
89b0e49d99 Adjust expected suffixes to work on OSX and windows for gcc.py. 2017-12-26 09:50:33 -07:00
Steven Watanabe
858ad964c9 Add a mock of gcc as a first step towards testing all toolsets. 2017-12-23 15:57:26 -07:00
Peter Dimov
c91455ff75 Add xcode 8, 7.3, 6.4 to Travis (#275)
* Add xcode 8, 7.3, 6.4 to Travis
* Add xcode 9.x, linux precise to Travis; restrict branches
* Restrict branches in Appveyor, too
2017-12-23 11:13:41 -06:00
Steven Watanabe
c594b12b13 Adjust check for using clock_gettime. 2017-12-23 09:47:32 -07:00
Steven Watanabe
14d745d691 Localize changes to the environment, so that we don't break later tests run in the same process. 2017-12-21 15:55:23 -07:00
Steven Watanabe
6d7c0c752d Quote the name of the batch script so that it works when %TMP% contains a space. Fixes #274. 2017-12-21 15:16:45 -07:00
Steven Watanabe
d2b64dc55d Fix crash in the debugger's backtrace when a built-in function is on the stack. 2017-12-20 15:33:01 -07:00
Steven Watanabe
df321f5a3a Fix python tests. 2017-12-19 21:52:08 -07:00
Steven Watanabe
65cd9ce416 Fix stupid mistake. (On the bright side, the code works anyway.) 2017-12-19 17:05:24 -07:00
Steven Watanabe
f56035d11a Sync ac with configure. 2017-12-19 15:59:51 -07:00
Steven Watanabe
3ae87ff496 Add a new rule configure.choose that adds properties associated with the first target from a list that successfully builds. 2017-12-19 13:30:09 -07:00
Steven Watanabe
8aa702aaf4 Try to fix the build for older versions of XCode. 2017-12-19 10:27:31 -07:00
Steven Watanabe
0388086b3f Limit --remove-test-targets to the targets generated by the test case. This makes it safe to share object files and executables between test cases. 2017-12-18 15:51:49 -07:00
Steven Watanabe
0c6d0165b0 Support nanosecond timestamp resolution for posix. 2017-12-18 13:09:07 -07:00
Steven Watanabe
6fce57e7da Make sure that we can always detect touched files even if we didn't wait for any other reason. 2017-12-18 11:20:44 -07:00
Steven Watanabe
5391e53038 Clear the current project after configuring a toolset from the command line. 2017-12-18 10:13:25 -07:00
Steven Watanabe
bb300dac25 Make test_all.py print more information on failure. 2017-12-16 16:11:39 -07:00
Steven Watanabe
6c3397fac8 Fix crash when calling a member function that doesn't exist. Fixes #260. 2017-12-16 15:19:00 -07:00
Steven Watanabe
a96e3fcbc5 ignore doesn't handle . 2017-12-16 15:05:46 -07:00
Steven Watanabe
ff10c58b99 Fix Windows tests. 2017-12-16 13:16:21 -07:00
Steven Watanabe
4d58880c20 Move the msvc setup scripts from TEMP into the build directory. They are created as virtual-targets, so --clean-all should work as well. The scripts will also be auto-updated if their timestamps are older than the originals. Refs #257. 2017-12-16 12:15:45 -07:00
Steven Watanabe
ff8709997e Fix new tests for Windows, matching 40e7f0e8dd 2017-12-15 16:00:32 -07:00
Steven Watanabe
e31489760c breakpoints should work even if they're hit repeatedly. 2017-12-15 15:15:54 -07:00
Steven Watanabe
7369dd2631 Use the right setup scripts for several tools. Previously, the first setup script processed would be applied unconditionally, because api was not defined which leaves the condition blank, and later setup scripts would be applied to winapi=phone, because api was not properly localized. 2017-12-14 12:26:24 -07:00
Steven Watanabe
dbff38df17 Subfeature expansion should not strip trailing dashes. This was caused by the fact that a list containing only empty strings is evaluated as false, thus causing the while loop to terminate prematurely. Fixes #207. 2017-12-14 10:21:05 -07:00
Steven Watanabe
b000980cd3 Make the caching of symlink/hardlink/junction detection more consistent. 2017-12-12 12:18:52 -07:00
Steven Watanabe
8cfe656d86 Fix rebuilding of configure checks with --reconfigure or -a. 2017-12-12 12:18:02 -07:00
Steven Watanabe
d81254cba0 Fix link-fail on Windows, Take 2. FAIL_EXPECTED now works correctly for targets that have multiple updating actions. Fixes #259. 2017-12-12 09:59:21 -07:00
Steven Watanabe
4269c9e663 Revert "Fix link-fail on Windows. FAIL_EXPECTED now works correctly for targets that have multiple updating actions. Fixes #259."
This reverts commit 0c3089d3c0.
2017-12-06 08:59:17 -07:00