Commit graph

118 commits

Author SHA1 Message Date
Carles Cufi 72046a8abc doc: getting_started: Support multi-OS instructions
In order to be able to document the build on Windows and UNIX
systems, slight variations are required on the app commands
that are used throughout the documentation system.

This includes getting rid of the prompt symbol and providing commands
for both UNIX and Windows operating systems.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-01-18 16:53:31 -05:00
Carles Cufi acbdeabe34 doc: app: Use unix on qemu builds
Since QEMU currently requires Linux or macOS to run, use "unix" as a
host OS for those documenting the build with it.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-01-18 16:53:31 -05:00
Carles Cufi 174de51548 doc: getting_started: Require ninja on macOS
Since we're switching to ninja as a default generator for CMake, require
the ninja package as part of the requirements on macOS.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-01-18 16:53:31 -05:00
Carles Cufi 5b2dd50c9b doc: Document the new native Windows dev environment
The new native Windows development environment no longer relies on MSYS2
or WSL at all. Instead it uses a standard Command Prompt and Windows
native tools. Document the installation and setup process in order to be
able to compile and develop.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-01-16 17:26:02 -05:00
David B. Kinder 3e4e3bd96f doc: update windows setup git clone instructions
Modern windows tools will properly handle windows or linux line endings
so remove the warning about windows tools.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-01-09 16:02:24 -05:00
Sebastian Bøe 8e30c6e790 doc: getting_started: Improve the docs for cloning on Windows
Explain why we set core.autocrlf=false.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-01-09 09:28:05 -05:00
Sebastian Bøe 4694ffecce doc: win: Specify autocrlf=false when cloning
Certain parts of Zephyr require Unix-style line-endings. To make sure
the line endings are not converted to Windows-style line-endings we
explicitly specify core.autocrlf=false when cloning.

This fixes #5557

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-01-08 10:24:51 -05:00
Sebastian Bøe cedfa9b4ab doc: Fix broken links in getting_started
Fix broken links in getting_started. We now use "Implicit Hyperlink
Targets" instead of :ref:. I don't know why :ref: wasn't working.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-01-08 10:24:36 -05:00
Anas Nashif 6b55598ad4 board: posix: add native_posix board definition
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-12-27 14:16:08 -05:00
Carles Cufi d1273df205 doc: getting_started: Add note for Windows env vars
Some users might want to inherit their already existing Windows
environment variables into the MSYS2 system. This note explains how to
achieve this.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-12-14 12:37:25 -05:00
David B. Kinder 8b81294f55 doc: environment setup needs zephyr clone first
There are files in the cloned copy of the Zephyr tree needed to setup
the development environment, so there's a bit of chicken and egg
problem.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-12-05 12:48:14 -05:00
Sven Dowideit 46f530e273 doc: make the CMake instructions a little more active
Signed-off-by: Sven Dowideit <SvenDowideit@home.org.au>
2017-11-22 07:49:41 -05:00
Anas Nashif a57f26c673 doc: fix reference to CTNG supported toolchains
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-11-14 19:28:42 -05:00
Sebastian Bøe 8d0a80c6a9 cmake: Fix SDK-less builds
This change changes the semantics of the environment variable
ZEPHYR_SDK_INSTALL_DIR to allow the use of 3rd party toolchains
alongside the Zephyr SDK's host tools.

Specifically, setting ZEPHYR_SDK_INSTALL_DIR now indicates that the
Zephyr SDK host tools are to be used. But not necessarily that the
Zephyr SDK's toolchain is to be used.

The documentation is also changed to explain this behaviour.

Signed-off-by: Sebastian Boe <sebastian.boe@nordicsemi.no>
2017-11-13 13:14:32 -05:00
Carles Cufi fa0030a31c doc: getting_started: Convert to using app extension
Use the new zephyr-app-commands extension to document the building of
applications

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-11-09 10:35:22 -05:00
Carles Cufi 00a07c385c doc: cmake: Unify getting started guides
Unify the format and mechanisms used in the different Getting Started
guides so that they are consistent in:

- The way Kconfig is built
- Avoiding using -B and -H CMake options
- -DBOARD instead of export

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-11-08 20:00:22 -05:00
Carles Cufi 3d01cdd60e doc: cmake: Update the Linux CMake instructions
We no longer want to pin users to 3.8.2. Instead we tolerate the warning
and therefore ask users to get the latest CMake package from their
distro.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-11-08 20:00:22 -05:00
Carles Cufi 4e59b3df62 doc: cmake: Update macOS build instruction
Update macOS build instructions so that they reflect the transition to
CMake.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-11-08 20:00:22 -05:00
Sebastian Bøe 3998b9e5ef cmake: Use Make for examples instead of Ninja
Ninja is not tested as well as Make yet, so for now, recommend using
Make.

Signed-off-by: Sebastian Boe <sebastian.boe@nordicsemi.no>
2017-11-08 20:00:22 -05:00
Marti Bolivar 2e3ecd8c52 doc: getting_started: add ref target for running hello world
This makes it possible to point users at a canonical location for how
to use zephyr-env.sh, etc.

Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
2017-11-08 20:00:22 -05:00
Carles Cufi 4faed167b9 doc: getting_started: Windows MSYS2 with CMake
Update the Windows MSYS2 instructions with the required CMake commands
used to build on this platform.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-11-08 20:00:22 -05:00
Anas Nashif 602a14365d doc: update with CMake instructions
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-11-08 20:00:22 -05:00
David B. Kinder fafff0fa78 doc: update links to new zephyrproject.org site
Fix links to content on the new version of zephyrproject.org that moved.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-11-03 19:31:14 -04:00
David B. Kinder 2632c6d804 doc: update linux installation guide for 0.9.2 SDK
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-10-19 20:09:00 -04:00
Carles Cufi 81643e2c1d doc: getting_started: Fix layout issue with code block
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-10-18 12:25:53 -04:00
Anas Nashif 90c1cf1fcf doc: run oldconfig on xtools config
This is needed to reset the configuration options based on the OS we are
building on.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-10-12 16:27:12 -05:00
David Leach 9bc6461144 doc: Adding ccache to Linux environment setup.
The sanity test script needs to have ccache installed on the Ubuntu
and Fedora developement environments.

Signed-off-by: David Leach <david.leach@nxp.com>
2017-10-04 17:50:44 -04:00
Carles Cufi 2f790f5c1e doc: getting_started: Clarify MSYS2 instructions
The MSYS2 installer does not include an updated version of the package
database, so users need to update it first in order to install all of
the required dependencies. Additionally, the repo must be cloned before
being able to install the Python requirements.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-10-03 14:47:46 -04:00
David B. Kinder 8c708fd049 doc: fix misspellings and hyphen use
fixed error introduced in application.rst (v1.8) along with a general
spelling check pass including consistent spelling of "runtime" and
hyphenated words with "pre-"

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-20 15:33:43 -04:00
Sebastian Bøe b56c317ffd doc: Add RISC-V to a list of SDK-supported ISA's
Signed-off-by: Sebastian Boe <sebastian.boe@nordicsemi.no>
2017-09-18 10:20:39 -04:00
David B. Kinder d98661ac27 doc: update to use macOS throughout docs
fixes #1499

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-15 17:21:47 -04:00
David B. Kinder d0e9d7c102 doc: fix link title in linux installation guide
fixes: #1501

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-09-14 20:48:54 -04:00
Andrew Boie 81c53364c9 doc: add gperf to workstation setup packages
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
2017-09-07 16:33:33 -07:00
Harm Berntsen 1f46eb66d8 doc: fix Zephyr SDK archive URL
Signed-off-by: Harm Berntsen <git@harmberntsen.nl>
2017-08-26 08:06:55 -04:00
Inaky Perez-Gonzalez 662dde6675 sanitycheck: validate YAML files w/ schemas files
This introduces an schema-based YAML validation process when loading
any YAML file, before doing any operations on them. An exception will
be raised at SanityConfigParser() if the file fails to verify with the
given schema.

Schemas are defined for the platform files in board///*.yaml and for
the (sample|testcase).yaml files. The verification is done using the
pykwalify python library. If not installed, a warning is printed and
the verification schema is skipped. At some point, we might want to
force it being installed.

The verification library is made a separate module (scl.py) so it can
be easily imported by others.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-08-07 21:19:12 -04:00
David B. Kinder 62a0cd246d doc: fix uses of back quotes in documentation
ReST defines interpreted text roles where text enclosed by single quotes
can be "intrepreted", for example :ref:`some name` becomes a link to
a label anywhere in the doc set named "some name", :c:func:`funcname()`
becomes a link to the API documentation for "funcname", and
:option:`CONFIG_NAME` becomes a link to, in our case, the documentation
for the generated Kconfig option.

This patch fixes uses of `some name` (without a role) by either adding
an explicit role, or changing to ``some name``, which indicates inline
code block formatting (most likely what was intended).

This is a precursor to changing the default behavior of interpreted
text to treat `some name` as :any:`some name` (as configured in
doc/conf.py), which would attempt to create a link to any available
definition of "some name".

We may not change this default role behavior, but it becomes an option
after the fixes in this patch.  In any case, this patch fixes incorrect
uses of single-quoted text (possibly introduced because GitHub's
markdown language uses single-quoted text for inline code formatting).

Jira: ZEP-2414

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-08-03 11:08:23 -04:00
Carles Cufi 6f7adbde02 doc: Switch to MSYS2's dtc package
After Andy Gross submitted a package for the Device Tree Compiler
(dtc), and it has now become available on the MSYS2 package
repository, it's no longer needed for the user to manually compile
the DTC.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-08-01 08:28:07 -04:00
David B. Kinder 3002f36d37 doc: linux installation for python3-pip incorrect
package name is python3-pip (not python-pip3)

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2017-07-31 20:12:13 -04:00
Inaky Perez-Gonzalez eb5ff2606f doc/linux: pip installs in user area vs system wide
When installing packages with PIP, recommend --user so that it is
installed in the user's directory vs system wide, potentially
overriding system-wide files that are under package manager control
and introducing possible security issues.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-07-25 18:05:10 -04:00
Inaky Perez-Gonzalez cb290aa708 doc/linux: recommend install pip3 from distro packaging
Avoid overriding files in the system that shall be under package
manager control with who knows what is downloaded that day, as it can
introduce security issues.

Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
2017-07-25 18:05:10 -04:00
Leandro Pereira f5a8d498ea scripts: Convert gen_offset_header to Python
By having this as a Python script rather than a host executable, this
should simplify the build process on non-Unix platforms.

With this change, pyelftools is now required to build Zephyr.  Please
consult the getting started documentation for your host platform for
installation instructions.

Jira: ZEP-2062

Signed-off-by: Leandro Pereira <leandro.pereira@intel.com>
2017-07-24 11:20:04 -07:00
Anas Nashif 35a70b41dd doc: add python pip requirements.txt
List all required modules in one file and just call pip with this
file to install all needed modules instead of listing them
individually.

Added gitlint and pyocd and other required packages to the list.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-07-22 14:04:20 -04:00
Carles Cufi 4b355f1191 doc: getting_started: Add WSL instructions
Having tried and tested building Zephyr using the standard SDK on
Windows 10 using the new WSL (Windows Subsystem for Linux), add the
documentation so that others can benefit from the functionality.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-06-03 15:00:24 -04:00
Andy Gross 252da09d02 doc: Add Device Tree documentation
This patch adds documention for device tree development in Zephyr.  This
includes a description of device tree, how it is integrated into Zephyr,
and other related information.

Signed-off-by: Andy Gross <andy.gross@linaro.org>
2017-06-02 16:56:30 -04:00
Anas Nashif 294f845d6b doc: emphasize usage of MSYS2 MSYS Shell
Some users started the wrong shell (MinGW) and ended up having build
issues, added a note about starting the right shell.

Jira: ZEP-2004
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Anas Nashif 9901d998e5 doc: also require dtc to be installed for linux
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Anas Nashif 7115afd133 doc: update macOS getting started documentation
Fixed documentation and updated config files for xtools to be used with
the latest version of crosstool-ng (1.23)

Jira: ZEP-616, ZEP-2146
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-31 14:54:34 -04:00
Carles Cufi eff52d9854 doc: getting_started: Switch to upstream DTC tree
With the required patch already being upstream, we can now redirect
users to the standard vanilla DTC tree.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-05-21 09:25:19 -04:00
Anas Nashif 2b13dde488 doc: update SDK link to 0.9.1
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2017-05-20 09:35:51 -04:00
Carles Cufi c698956039 doc: getting_started: Remove legacy MinGW instructions
MinGW is old and unsupported, and it does not even download properly
these days. Remove the instructions that rely on MinGW since they are
only confusing for people trying to build on Windows.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2017-05-19 10:15:57 -04:00