5.0.0
This is a new era in B2. The drive of this new major version is to move the core build system from being implemented in Jam to C++. This initial release is only a start in this move by having some minimal aspects implemented in C++ using a new Jam/C++native binding system. Even though this is a major release, the goal is to still have backward compatibility for existing project build files. But that backward compatibility is not guaranteed for other Jam files.
- New: Support for Jam native variant values of string (original Jam value type), number (floating point numbers), and object (instances of classes).
-- René Ferdinand Rivera Morell - New: Port modules
class
,errors
,modules
,regex
,set
,string
, andsysinfo
to C++.
-- René Ferdinand Rivera Morell - New: Port
bootstrap.jam
to C++ and instead usebuild-system.jam
as key file to find build files.
-- René Ferdinand Rivera Morell - New: Add
require-b2
builtin rule to verify the B2 version a particular Jam file needs.
-- René Ferdinand Rivera Morell - New: Add
regex.grep
builtin that does parallel (where available) file content search with regex matching.
-- René Ferdinand Rivera Morell - New: Make parts of internals thread safe to support parallel built-ins. Currently includes Jam values, hash tables, and filesystem.
-- René Ferdinand Rivera Morell - New: Add
import-search
project rule to declare additional search paths forimport
that refer to searched project locations, or other directories.
-- René Ferdinand Rivera Morell - Fix consistent use of
OPT_SEMAPHORE
and documentation ofJAM_SEMAPHORE
.
-- Thomas Brown - Fix archive actions failing for mingw.
-- René Ferdinand Rivera Morell
IMPORTANT: Building B2 with VisualStudio 2013, i.e. MSVC 12, is no longer supported or tested. The effort to engineer workarounds for the missing C++11 features became too much. And was taking away from other improvements.