// -*- mode:doc; -*-
// vim: set syntax=asciidoc:

= The Buildroot user manual
:toc:

Buildroot {sys:echo $BR2_VERSION} manual generated on {localdate}
{localtime} from git revision {sys:git rev-parse --short HEAD}

The Buildroot manual is written by the Buildroot developers.
It is licensed under the GNU General Public License, version 2. Refer to the
http://git.buildroot.org/buildroot/tree/COPYING?id={sys:git rev-parse HEAD}[COPYING]
file in the Buildroot sources for the full text of this license.

Copyright (C) The Buildroot developers <buildroot@buildroot.org>

image::logo.png[]

= Getting started

include::introduction.adoc[]

include::prerequisite.adoc[]

include::getting.adoc[]

include::quickstart.adoc[]

include::resources.adoc[]

= User guide

include::configure.adoc[]

include::configure-other-components.adoc[]

include::common-usage.adoc[]

include::customize.adoc[]

include::integration.adoc[]

include::faq-troubleshooting.adoc[]

include::known-issues.adoc[]

include::legal-notice.adoc[]

include::beyond-buildroot.adoc[]

= Developer guide

include::how-buildroot-works.adoc[]

include::writing-rules.adoc[]

include::adding-board-support.adoc[]

include::adding-packages.adoc[]

include::patch-policy.adoc[]

include::download-infra.adoc[]

include::debugging-buildroot.adoc[]

include::contribute.adoc[]

include::developers.adoc[]

include::release-engineering.adoc[]

= Appendix

include::appendix.adoc[]
