1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
// -*- mode:doc; -*-
[[pkg-build-steps]]
Package make targets
~~~~~~~~~~~~~~~~~~~~
A +make <package>+ call achieves several _make targets_ with, as a
result, this particular package and its dependencies built, installed
in their destination directory (target, staging or host directory).
For packages based on the Buildroot infrastructures (+generic-package+,
+autotools-package+ or +cmake-package+), each of those
actions/steps/commands. For packages relying on other build system,
then there is no other choice than looking at the +.mk+ file (see also
the xref:rebuild-pkg[]).
For packages relying on the Buildroot infrastructures, there are
numerous special make targets that can be called independently like
this:
------------
make <package>-<target>
------------
In order, the package build commands are:
[width="90%",cols="^1,4",options="header"]
|===================================================
| command/target | Description
| +source+ | Fetch the source (download the tarball, clone
the source repository, etc)
| +depends+ | Build and install all dependencies required to
build the package
| +extract+ | Put the source in the package build directory
(extract the tarball, copy the source, etc)
| +patch+ | Apply the patches if any
| +configure+ | Run the configure command
| +build+ | Compile the source
| +install-staging+ |
*target package:* Run the installation of the package in the
staging directory
*host package:* Does nothing
| +install-target+ |
*target package:* Run the installation of the package in the
staging directory
*host package:* Does nothing
| +install+ |
*target package:* Run the 2 previous installation commands for the
target packages
*host package:* Run the installation of the package in the host
directory
|===================================================
Additionally, there are some other useful make targets:
[width="90%",cols="^1,4",options="header"]
|===================================================
| command/target | Description
| +show-depends+ | Displays the dependencies required to build the
package
| +clean+ | Clean the package build directory, also
uninstall the package from both the target and the staging directory
| +dirclean+ | Remove the whole package build directory
| +rebuild+ | Rebuild only necessary binaries and install them
again
| +reconfigure+ | Re-run the configure command, then rebuild
only necessary binaries, and lastly install them again
|===================================================
|