2
0
mirror of https://github.com/boostorg/build.git synced 2026-02-18 01:52:17 +00:00
Commit Graph

4209 Commits

Author SHA1 Message Date
Aaron Boman
5471945b4d Fix bjam_signature for set_generated_target_prefix(). Update docs. 2016-10-27 20:21:55 -05:00
Aaron Boman
707a56e9b5 Prevent already registered type error.
A type can be registered as inheriting from a base type, however,
due to lazy loading, it's possible for that base type to not have
been registered yet. Originally, calling type.register() with an
unregistered base type would have registered the base type. Later,
when the base type itself was registered, an error would have been
raised saying that the base type was already registered.

This change allows for lazy loading to occur such that a base type
can be registered after a subtype is has already inherited from it.
2016-10-27 20:21:55 -05:00
Aaron Boman
98f1c4b92f Remove unused import in scanners.py and update base Scanner.process signature. 2016-10-27 20:21:54 -05:00
Aaron Boman
3b453b85e5 Fix typos in project.py 2016-10-27 20:21:54 -05:00
Aaron Boman
b3d45f8694 Fix project initialization and loading.
The recently added __python_module_cache broke project.initialize().
This fixes the standalone Python file loading.
2016-10-27 20:21:54 -05:00
Aaron Boman
7737c858ac Remove unnecessary file. 2016-10-27 20:21:54 -05:00
Aaron Boman
8039dc0fd8 Update generators to match Jam.
The generator methods referred to `bypassed` and `consumed`. `bypassed`
is no longer present in Jam and so any reference to that variable has been
removed.
2016-10-27 20:21:54 -05:00
Aaron Boman
c07100423e Provide help message when generator is handed empty list of sources.
In Jam, the language itself would raise an error when the sources list
was empty. In the Python port, it was assumed that sources was never
empty and would run into an IndexError when the empty sources list
tried to access the first element. This change checks sources first
and provides an error message in the event that sources is empty.

An empty source list can be passed in when the best alternative
evalutates to an empty list of sources. This target is then added
to a typed target, e.g. lib, which requires sources.
2016-10-27 20:21:54 -05:00
Aaron Boman
fbb42355eb Clean up exceptions.py
Run pep8.
BaseException is a builtin class. This renames BaseException to
BaseBoostBuildException. All other custom exceptions that deal
with the Boost.Build framework should inherit from this class.
This makes "catching" all Boost.Build specific exceptions much
easier.
2016-10-27 20:21:53 -05:00
Aaron Boman
9bee7e8d20 Port errors.nearest_user_location(). 2016-10-27 20:21:53 -05:00
Aaron Boman
eee3ebdb2c Allow for actions to be empty.
This allows for an updating rule to not run an action itself,
rather it allows for that rule to delegate to other updating
actions.
2016-10-27 20:21:53 -05:00
Stefan Seefeld
3fc8257303 Remove obsolete code. 2016-10-27 08:38:50 -04:00
Stefan Seefeld
a1979fe91c Improve logging. 2016-10-26 20:32:58 -04:00
Rene Rivera
ee9a70268b Fix missing numpy tests.
We ensure that we don't have tests with subdirectories in the name to
avoid a log processing defficiency (and not easily resolved) of not
supporting subdirs for individual tests.
2016-10-26 16:43:55 -05:00
Sergiu Deitsch
594ef7b1da added Intel C++ compiler 17.0 support 2016-10-26 11:59:59 +03:00
Stefan Seefeld
4b099e76b0 Add include path for NumPy extension. 2016-10-20 17:24:36 -04:00
Stefan Seefeld
22f41dfa32 Add support for NumPy extension. 2016-10-13 21:16:29 -04:00
Rene Rivera
895196b739 Fix time data test for added clock field. 2016-10-12 08:50:23 -05:00
Rene Rivera
a94e1d0727 Fix testing.time feature and add clock value to it.
The old testing.time feature was horribly broken in the face of the
current b2 virtual target design. This redoes the feature in a friendly
manner to the virtual targets. This also adds the clock (aka wall clock)
timing value to __TIMING_RULE__ invocations.
2016-10-11 23:29:20 -05:00
Rene Rivera
2effafb5df Better timing information. Add wall clock info to -d+4 output. And use
wait4 which gives better resource usage times on Nix.
2016-10-11 10:09:44 -05:00
Rene Rivera
a5a2536499 Add, and update, documentation build targets. 2016-10-07 23:07:37 -05:00
Aaron Boman
2591785b6e Replace '.has_key()' with 'in'. 2016-09-30 20:37:05 +01:00
Rene Rivera
590cbb42b5 Add some missing profile scopes in function_run. 2016-09-27 06:15:54 -05:00
Rene Rivera
8806da6416 Add support for perf meassuring native scopes. And add some perf scopes
for the main interpreter function.
2016-09-23 22:58:47 -05:00
Rene Rivera
94816f80ff Add emscripten debug option to get better runtime debug output. 2016-08-06 14:48:39 -05:00
Rene Rivera
833a0abbea Support static libs for emscripten building. 2016-08-04 09:01:46 -05:00
Rene Rivera
01a1bfa253 A basic implementation of a toolset for Emscripten. It can currently
compile C/C++ to Javascript (as ASM.js).
2016-08-03 18:32:03 -05:00
Rene Rivera
caeb6a9695 Fix check to avoid duplicate default python toolset requirement. 2016-07-23 12:40:14 -05:00
Rene Rivera
78ffbe0944 Fix not having a default python interpreter version on targets.
This change adds a toolset requirement that sets the python version
feature of the first configured python for a given target OS (usually
the host OS). This allows to correctly configure different python
interpreters for different target OSes.
2016-07-16 15:53:30 -05:00
Ashish Sadanandan
c8665267d3 Fix for auto configuring MPI on Windows.
Microsoft has a new MPI implementation available -
https://msdn.microsoft.com/en-us/library/windows/desktop/bb524831%28v=vs.85%29.aspx
There are now two installers, one for the MPI executor and another for the MPI
SDK (which contains the headers and static libraries), and these install to
different locations by default.

The jam file has been changed so that MS-MPI is first checked, if found use
that as the MPI executor/SDK. If not found, the MS Compute Cluster Pack is
checked next.
2016-07-15 00:04:28 -06:00
Ashish Sadanandan
3ea65143c0 Strip trailing whitespace, no other changes 2016-07-15 00:01:02 -06:00
Marcel Raad
ae5e63a131 Add support for upcoming Visual Studio "15"
This allows building with Visual Studio "15", expected to be released
in 2017. Tested with Visual Studio "15" Preview 3. The compiler itself is the
same as with Visual Studio 2015 Update 3, but if only Visual Studio "15" is
installed, the compiler could not be found.
2016-07-12 22:01:12 +02:00
Vladimir Prus
5f09d17716 Correct whitespace 2016-07-12 21:56:17 +03:00
Victor Robertson
885574b61a Add Apple TV support 2016-07-12 21:54:28 +03:00
Rene Rivera
2540d311e7 Don't accidentally remove python source tests. 2016-06-13 23:29:33 -05:00
Jonathan Wakely
4d304fb904 Fix typos in comments 2016-05-23 11:52:10 +01:00
Steven Watanabe
786a5c5e65 If we can't find the python headers and libraries, abort configuration. Otherwise, we would attempt to build Boost.Python unconditionally. 2016-04-14 08:49:00 -06:00
K. Noel Belcourt
1dd163c51c Darwin (gcc under El Capitan) no longer supports the
-finline-functions option.  Override the <inlining>full
option to just pass -Wno-inline only if on 10.11 or
later.
2016-04-08 20:05:50 -06:00
Steven Watanabe
37ba13295c Remove wrong if. This case is already handled correctly by the next else if. 2016-03-24 08:57:22 -06:00
Steven Watanabe
e6116e7567 Clean up formatting/undefined variables/odd control flow in zlib and bzip2. 2016-03-22 10:18:13 -06:00
Steven Watanabe
25819cbda3 Make sure that explicit returns don't interfere with function rewriting. 2016-03-22 09:50:51 -06:00
Steven Watanabe
c7b2c57e79 Start testing mi. 2016-03-10 12:49:57 -07:00
Kohei Takahashi
8b9dbbe418 Add support for FreeBSD 10 or later.
Since FreeBSD 10, it uses clang as a system default compiler.
freebsd-version is used to detect FreeBSD version.
2016-03-10 09:30:04 +03:00
Michał Górny
de9a600167 Do not pass -Ofast to pathscale toolset
Do not pass -Ofast when using the pathscale toolset. It enables insecure
optimizations, and that is probably why no other toolset uses this
option. It also causes internal compiler problems with current pathcc
versions.
2016-03-09 09:55:40 +03:00
Steven Watanabe
aaeedea9cc Fix a leak and a missing copy when building with the global string table disabled. 2016-03-04 12:28:42 -07:00
Steven Watanabe
b015a40847 Don't close the file automatically in yyline. We need yylval.file to survive until the parser is really done. 2016-03-04 11:38:50 -07:00
Steven Watanabe
f00b27cf5a NDEBUG disables OBJECT_MAGIC. 2016-03-04 11:11:40 -07:00
Steven Watanabe
8f39cdebc9 Fix two memory leaks and a double free. 2016-03-04 11:08:28 -07:00
Steven Watanabe
b5dc9949d0 Fix building bzip2 from source as a shared library. bzip2 doesn't use a macro to control symbol export. Instead it provides a .def file, which we need to pass to the linker. 2016-03-01 15:58:10 -07:00
Steven Watanabe
6ece5736bc Junctions should be removed with rmdir, not del. This fixes a bug that causes -a --reconfigure to decide that junctions are not supported. 2016-03-01 13:15:19 -07:00