Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3885ae7

Browse files
committed
Update buildexe_immediate_example.rst
1 parent5b4fc75 commit3885ae7

File tree

1 file changed

+45
-0
lines changed

1 file changed

+45
-0
lines changed
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,47 @@
11
BuildExe "Immediate" example
22
=============================
3+
4+
Basic Procedure
5+
----------------
6+
7+
BuildExe has an "immediate" mode where it can directly provide us the Target (singular) without going through the intermediate steps that we followed in the "script" mode.
8+
9+
..uml::
10+
11+
usecase "main.cpp" as main_cpp
12+
usecase "compile.toml" as compile_toml
13+
usecase "host_or_cross_toolchain.toml" as host_or_cross_toolchain
14+
15+
rectangle "./buildexe" as buildexe_exe
16+
artifact "./hello_world" as hello_world_exe
17+
18+
main_cpp -right-> buildexe_exe
19+
compile_toml -up-> buildexe_exe
20+
host_or_cross_toolchain -up-> buildexe_exe
21+
buildexe_exe -right-> hello_world_exe
22+
23+
24+
What is the point of the "script" mode then?
25+
++++++++++++++++++++++++++++++++++++++++++++
26+
27+
The "immediate" mode has a lot of limitations but it is also useful in certain scenarios
28+
29+
**Limitations**
30+
31+
* Cannot build more than one target at a time
32+
* No customizability allowed.
33+
* Which means that apart from just building the target you cannot do anything else.
34+
* For example: Setting dependencies between targets, running custom generators, running static analysis tools and so on.
35+
36+
**Usecase**
37+
38+
* Simple way to build one target.
39+
* Completely run time dependent. Change your ``build.toml`` file and you can build a new target.
40+
* Very easy to know how a particular target is built.
41+
* For example. In a large project it might be very hard to visualize how a single target is built due to various code generation and library / target dependencies.
42+
* Since .toml is easily readable, we can understand the sources, search directories and flags that the target requires at a glance.
43+
* Can be shipped to customers for a pain free build process i.e removes technical debt.
44+
* Building your artifact is as simple as ``buildexe --config build.toml --config %BUILDCC_HOME/host/host_or_cross_toolchain.toml``
45+
* build.toml contains the target information.
46+
* host_or_cross_toolchain.toml contains the host/cross toolchain information
47+
* We can combine the two into one .toml file.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp