--- /dev/null
+// -*- 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+ | Run again the configure command, then rebuild
+only necessary binaries, and lastly install them again
+
+|===================================================