This commit introduces the BR2_EXTERNAL environment variable, which
will allow to keep Buildroot customization (board-specific
configuration files or root filesystem overlays, package Config.in and
makefiles, as well as defconfigs) outside of the Buildroot tree.
This commit only introduces the variable itself, and ensures that it
is available within Config.in options. This allows us to use
$BR2_EXTERNAL in a 'source' statement in Config.in.
Following patches extend the usage of BR2_EXTERNAL to other areas
(packages and defconfigs).
In details, this commit:
* Introduces the BR2_EXTERNAL Kconfig option. This option has no
prompt, and is therefore not visible to the user and also not
stored in the .config file. It is automatically set to the value of
the BR2_EXTERNAL environment variable. The only purpose of this
BR2_EXTERNAL Kconfig option is to allow $BR2_EXTERNAL to be
properly expanded when used inside Kconfig source statements.
* Calculates the BR2_EXTERNAL value to use. If passed on the command
line, then this value is taken in priority, and saved to a
.br-external hidden file in the output directory. If not passed on
the command line, then we read the .br-external file from the
output directory. This allows the user to not pass the BR2_EXTERNAL
value at each make invocation. If no BR2_EXTERNAL value is passed,
we define it to support/dummy-external, so that the kconfig code
finds an existing $(BR2_EXTERNAL)/package/Config.in file to
include.
* Passes the BR2_EXTERNAL into the *config environment, so that its
value is found when parsing/evaluating Config.in files and .config
values.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Acked-by: Ryan Barnett <rjbarnet@rockwellcollins.com>
Tested-by: "Samuel Martin" <s.martin49@gmail.com>
Acked-by: "Samuel Martin" <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Python saves a pre-compiled support/scripts/kconfiglib.pyc file
side-to-side with the corresponding .py file.
This does not work if the Buildroot source tree is read-only (but
this is not an error for Python, which keep going OK).
But this may cause issues for out-of-tree builds in case the same
Buildroot source tree is shared by many builds.
Also, 'make clean' currently does not clean this file, and out-of-tree
builds can remove it either, at the risk of causing issues for other
out-of-tree builds running at the same time.
Just tell Python not to generate .pyc files:
- call the script via python, don't use the sha-bang
- thus, make the script non-executable, and remove the sha-bang
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Cc: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The current TOC level is set to 4, which does not mean 'a 4-level deep TOC',
but really means 'a TOC deep to the 4th level', with the first level being
level 0, which means we have:
12. Appendix
12.1. Makedev syntax documentation
12.2. Makeuser syntax documentation
12.3. Partition table layout description syntax
12.3.1. The global section
Properties for the global section
Which a bit too much. And yet, the fifth level is not shown, since we
don't have any! :-/
Limit the depth of the TOC to three levels, which is just enough to be
usefull, yet not cluttered by low-level titles.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The output extension and the generation messages refer to 'text', but the make
target was confusingly 'txt'. This patch changes the make target for
consistency.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
To generate the manual, you need a few tools. If these are not present,
pretty cryptic error messages are given.
This patch adds a simple check for these dependencies, before attempting to
build the manual.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When generating the manual, you see following messages:
>>> Generating HTML manual...
>>> Generating Split HTML manual...
>>> Generating PDF manual...
>>> Generating Text manual...
>>> Generating EPUB manual...
and with this patch the capitalization is changed so that it becomes:
>>> Generating HTML manual...
>>> Generating split HTML manual...
>>> Generating PDF manual...
>>> Generating text manual...
>>> Generating ePUB manual...
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Acked-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Make 3.82 no longer sort the result of wildcards (see
http://comments.gmane.org/gmane.comp.gnu.make.bugs/4260). This may break
build reproducibility.
This patch sort results of wildcards to ensure reproducibility.
Signed-off-by: Jérôme Pouiller <jezz@sysmic.org>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The generated lists are automatically updated when building the manual.
[Peter: fix typos]
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
[yann.morin.1998@free.fr: indentation, remove temp dir, intro to host utils]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>