Skip to content

Commit

Permalink
Add engine contrib info.
Browse files Browse the repository at this point in the history
[skip ci]
  • Loading branch information
grafikrobot committed Feb 20, 2020
1 parent 4dea193 commit d618972
Showing 1 changed file with 28 additions and 1 deletion.
29 changes: 28 additions & 1 deletion CONTRIBUTING.adoc
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Copyright 2019 Rene Rivera
// Copyright 2019-2020 Rene Rivera
// Copyright 2003, 2006 Vladimir Prus
// Distributed under the Boost Software License, Version 1.0.
// (See accompanying file LICENSE.txt or http://www.boost.org/LICENSE_1_0.txt)
Expand Down Expand Up @@ -150,3 +150,30 @@ else
#
}
----

== ENGINE

Developing in the `b2` engine, the C++ part, requires two steps to be
effective: building the "stable" engine, and developing the
"in-progress" engine.

What is the "stable" engine is up to you. It only refers to a build of the
engine you know is at a good working state. When you are at a point the
source is stable you can run `bootstrap.sh/bat` from the root. That will
create the `b2` executable at the root. You can then use this version to run
regular B2 builds as needed both within the B2 tree and in other projects.

The "in-progress" engine is whatever build you happen to be testing at the
moment. There are two ways to build this be engine. You can either
(a) run `b2 b2` at the root, or (b) run `build.sh/bat` in `src/engine`.

Using (a) will place, by default, a fully debuggable `b2` in the `.build`
directories. You can run that one from a debugger with full symbols and
stepping features. This should be the first choice in developing in the
engine.

After using (a) to implement functionality you can use (b) to fully test
that functionality. The engine built from (b) is fully optimized and
is the one used, by default, by the test system when running in the `test`
directory. Before submitting patches it's required to build this way and
run the tests in at least one toolset version (but preferably at least two).

0 comments on commit d618972

Please sign in to comment.