Commit graph

229 commits

Author SHA1 Message Date
Marti Bolivar 1e6f4bd1f6 doc: guides: add "Asking for Help" guide
I often wish I had a short and Zephyr-specific place to point people
to when they're asking for help in ways that make it hard to help
them.

Add one.

Signed-off-by: Marti Bolivar <marti.bolivar@nordicsemi.no>
2019-04-18 16:46:37 -04:00
Marti Bolivar 7eca2568bd doc: additional clarifications on west
Add a missing reference to how west is used to set ZEPHYR_MODULES in
without-west.rst, augmenting the application development guide a bit
to include this in the list of important variables, cleaning that up a
bit while we are here and adding some more west details.

Add a big fat warning in the getting started guide that using Zephyr
without west is not for the faint of heart.

Signed-off-by: Marti Bolivar <marti.bolivar@nordicsemi.no>
2019-04-04 08:32:15 -04:00
Marti Bolivar d3bb3cfd7a doc: west: add missing parts for zephyr v1.14
- add glossary terms for important concepts we have to explain often,
  like "west installation"

- add autodoc directives for pulling in west API docs

- add missing documentation for built-in features like west's
  configuration, extension commands, etc.

- add missing documentation for "west sign" extension

- describe the manifest in a self-contained way rather than linking to
  the relevant pykwalify schema, also adding a missing reference to
  "west manifest" in the miscellaneous multi-repo commands list

- move various details regarding history and motivation to why.rst
  among other changes to repo-tool.rst, leaving it closer to a "tell
  me what I really need to know" style overview

- update planned features

Fixes: #14992
Signed-off-by: Marti Bolivar <marti@foundries.io>
2019-03-29 11:24:32 +01:00
Sebastian Bøe f13af1c80e doc: Instruct Windows users to not install the lastest gnuarmemb
The latest release of the Windows toolchain has a critical bug,
Windows users should install the next-to-latest release instead.

To prevent Windows users from being affected we add a note about this
in the documentation.

Bug: https://github.com/zephyrproject-rtos/zephyr/issues/12257

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2019-03-15 06:58:36 -05:00
David B. Kinder 6000a6205a doc: prepare for improving doc API linking
Linking to API material requires knowing the pecularities of how
doxygen, sphinx, and breathe work. In an attempt to hide some of this
we're preparing the current docs to allow use of configuration defaults
that will let us more simply use a default role that will hunt for a
reference target in the various domains that are available by using a
default "role" of "all".  This will let us use the simple notation
`functionname` or `typename` without fully specifying the reference as
:c:func:`functionname`.

This patch cleans up exising docs that were (incorrectly) using single
backtics where double backtics should have been used, and also found
some typos (such as a space between the role name and the reference,
such as :file: `filename`, and a missing colon such as
c:func:`functionname`)

This is a start to address issue #14313

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-03-15 05:47:19 +01:00
David B. Kinder ebc4e83a20 doc: update windows installation guide
Add a note installing programs manually on your Windows system: you may
need to update the Windows PATH so the system can file these programs.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-03-13 10:13:38 +01:00
Kumar Gala 07384cf9e9 docs: Updated Linux Getting started for SDK 0.10.0
Update instructions to point at SDK 0.10.0

Fixes #14258

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-03-11 11:01:08 -05:00
David B. Kinder 505cc2bb0e doc: use :zephyr_file: where appropriate
A new role :zephyr_file: is available that renders to a link to the file
or folder in GitHub.  Find appropriate references using :file: and
convert to :zephyr_file: to take advantage of its linking capability.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2019-03-09 09:50:27 -05:00
Marc Herbert 82df254512 doc/getting_started: mention ZEPHYR_TOOLCHAIN_VARIANT=host briefly
Skipping the setup of a toolchain is especially nice for brand new users
who just want to give qemu_x86[_64] or native_posix a quick try, gives a
great first impression.

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2019-02-14 19:43:25 -05:00
Carles Cufi ee0b6fddd0 doc: getting_started: Document building with west
Document building the samples with west (for now only in the Getting
Started guide).
Also switch to `reel_board` by default since `arduino_101` is no longer
well supported.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2019-02-12 20:15:52 -05:00
Carles Cufi 635abed43f doc: getting_started: Add a reference to west multi repo
Reference the multiple repository management section in the Getting
Started Guide, so that users have a direct link to the text describing
how multiple repositories are managed.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2019-02-12 20:15:52 -05:00
Anas Nashif 2b9458c378 doc: restructure and create index pages
Move all lead pages to be index pages and create redirect rules from the
old pointers.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-02-05 07:04:40 -05:00
Carles Cufi c2bea66764 doc: getting_started: Clarify what west does
Add additional details about what running `west init` and `west update`
actually does in the local filesystem.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2019-01-29 10:15:01 +01:00
Carles Cufi 7335ef9142 doc: west: Overhaul documentation to match current model
Overhaul the west documentation so that it matches the model that is
currently implemented in the west repository.
This model is no longer subject to change in the short or mid term,
since it has been selected as the only viable one for multi-repo
management using west.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2019-01-29 10:15:01 +01:00
Carles Cufi 29b5eb3581 doc: Use west instead of Git to clone Zephyr
Since west is no longer included in the Zephyr repository, instruct
users to install and use west in order to obtain the Zephyr source code.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Signed-off-by: Torsten Rasmussen <torsten.rasmussen@nordicsemi.no>
2019-01-29 10:15:01 +01:00
Ricardo Marramaque 2b63cfbb3e doc: gs: Warn about Windows 10 CMake issue
Include a warning in regards to Windows 10 1803 build.

Signed-off-by: Ricardo Marramaque <ralm@rmarramaque.com>
2019-01-10 17:29:01 +01:00
Anas Nashif 5060ca6a30 cmake: increase minimal required version to 3.13.1
Move to latest cmake version with many bug fixes and enhancements.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2019-01-03 11:51:29 -05:00
Ruth Fuchss 664741c5bf doc: Add anchor in Getting Started
Add an anchor in the Getting Started topic to be able to link to
the requirements section.

Signed-off-by: Ruth Fuchss <ruth.fuchss@nordicsemi.no>
2018-12-07 16:45:49 -05:00
Sebastian Bøe 8ba5aff8c0 kconfig: Drop support for specifying CROSS_COMPILE through Kconfig
When we move DT infront of Kconfig we are going to need access to a C
toolchain before Kconfig is evaluated. This means it will not be
possible to specify the toolchain used through Kconfig.

To deal with this we ...

Drop support for specifying CROSS_COMPILE through Kconfig. Still
available is the ability to specify CROSS_COMPILE through the
environment or through a CMake variable.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-11-19 15:04:13 -05:00
Sebastian Bøe 5a2ddf37d9 msys: Drop support for building in an MSYS environment
MSYS support was added as a stop-gap while native windows support was
unsupported. Now that Native windows support is stable we can drop
support for MSYS.

Dropping support for MSYS fixes #11260 and allows us to spend more
resources on native windows support.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-11-13 10:28:33 +01:00
Anas Nashif 0819684703 doc: update docs with latest SDK
Changed documentation to point to SDK 0.9.4.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-11-05 11:00:38 -05:00
David B. Kinder 6871b927b7 doc: update getting started pip3 --user info
Using ``pip3 install --user`` installs Python packages in the Python
user install directory (``.local``) so we should remind folks to add
``~/.local/bin`` to their PATH.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-11-03 22:58:48 -04:00
Alberto Escolar Piedras 27ec9fa7f2 doc: Linux installation: Add gcc and gcc_mulitlib for Ubuntu
In 0d811b9aee the gcc-mulitlib package
was removed from the Ubuntu list of packages to install.
Seems this may be creating some confusion for some developers (see
comments in #10243)
Let's add it back.

Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
2018-11-01 18:39:09 -04:00
Carles Cufi 9fd4c3a70d doc: Remove quotes from Windows env var
Windows requires that there are no quotes around environment variables,
remove the ones in the documentation.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-10-26 18:27:01 +01:00
Sebastian Bøe e8420d91bb doc: Fix pip3 install command
The getting started guide says to run:

pip3 install -r --user zephyr/scripts/requirements.txt

but this is broken. It should be:

pip3 install --user -r zephyr/scripts/requirements.txt

This fixes #10817 and is a regression from:
0d811b9aee

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-10-25 07:21:35 +01:00
Marti Bolivar 0d811b9aee doc: overhaul getting_started
The getting started documentation has become a bit of a mess over
time:

- The reader needs to jump forward and backward in the documents
  depending on what their system already has installed (e.g. "start by
  cloning Zephyr, oh wait, see below if you don't have Git yet" etc.).

- The operating system setup guides, toolchain setup instructions, and
  application build and run information have each become their own
  balkanized fiefdom, with duplicated, confusing and sometimes
  inconsistent results.

- Linux documentation for all distributions is incomplete in some
  places (the Arch documentation in particular is vestigial)
  and wrong in others (platforms like Ubuntu still nominally require
  tools, like autoconf, that haven't been necessary since we stopped
  using the C Kconfig tools)

- The dependencies needed to build the documentation have
  gotten *huge* since the LaTeX additions and massively overstate the
  footprint of Zephyr's real dependencies. This is particularly a
  problem on Linux, where those dependencies were not clearly
  separated from those needed to build Zephyr.

- The toolchain setup documentation is confusing and scattered across
  the main file and the platform-specific files. There are various
  bits of incomplete and/or incorrect information. For example, the
  docs imply that you can use the Zephyr SDK on non-Linux hosts, which
  isn't true. As another example, some toolchains, such as GNU Arm
  Embedded, are documented several times. As a final example, some
  toolchains, such as Intel's ISSM, are squirrelled away in the
  Windows document when there are Linux builds available.

Overhaul the pages to fix these issues and otherwise clean up the
language. One significant side-effect is that all the
toolchain-related information is rooted in a single toctree. Another
is that it should now be possible to follow the instructions, in
order, on any supported platform.

Signed-off-by: Marti Bolivar <marti@foundries.io>
2018-10-17 19:07:58 -04:00
François Delawarde c11e96d9b8 cmake: Support custom out-of-tree toolchains
Add a new optional TOOLCHAIN_ROOT cmake and environment variable to
specify an alternative location for toolchain cmake files.

When set, Zephyr will look for a toolchain cmake file located in:
${TOOLCHAIN_ROOT}/cmake/toolchain/${ZEPHYR_TOOLCHAIN_VARIANT}.cmake

Signed-off-by: François Delawarde <fnde@oticon.com>
2018-10-08 12:43:32 -04:00
Carles Cufi d8e228c97c doc: getting started: Document pdf build on Windows
Add a section to optionally install the Chocolatey packages required to
build the documentation in .pdf format on Windows.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-10-02 18:48:26 +02:00
Iván Sánchez Ortega 3a80518577 doc: Indent RST code blocks and notes
Fixes the indentation for some code blocks and notes
through the "getting started" instructions.
The main effect is that an ordered list
is no longer broken by a note block.

Signed-off-by: Iván Sánchez Ortega <ivan@sanchezortega.es>
2018-09-19 14:46:02 +02:00
Sebastian Bøe 19845a7489 cmake: Don't use the environment variable CFLAGS
Some distros set the environment variable CFLAGS, this will
accidentally affect Zephyr builds.

To fix this we clear the environment variable from within the Zephyr
build system for the duration of the CMake execution.

Until now we have been instructing the user to clear it, but it is
easier for the user if we clear it for him.

The same applies to CXXFLAGS.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-09-05 18:40:32 -04:00
Daniel Leung 9945e7fda0 doc: add ability to generate PDF
This adds new targets to generate build documentation through
LaTEX to PDF.

There are a few notes:

1. pdflatex complains about the tex file generated by doxygen
   so it needs to be fixed with a Python script before feeding
   in through pdflatex.

2. SVG files are not recognized by pdflatex so they are converted
   to known good format on the fly, only for producing PDF. This
   uses the libRSVG's rsvg-convert tool.

Relates to #6782.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2018-08-29 18:16:56 -04:00
Kumar Gala d04eaf3baf doc: Fix warning associated with GNU ARM embedded rename
We missed one reference to GCC ARM Embedded when we renamed it to GNU
ARM Embedded.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2018-08-09 19:13:15 +02:00
Carles Cufi 957262e37d build: Replace GCC ARM Embedded with GNU Arm Embedded
The old GCC ARM Embedded website on launchpad
(https://launchpad.net/gcc-arm-embedded) has been superseeded by the new
GNU Arm Embedded one
(https://developer.arm.com/open-source/gnu-toolchain/gnu-rm).

This also means a change of name from "GCC" to "GNU". Reflect this in
the enviroment variables so that the proper term is used henceforth.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-08-09 13:57:55 +02:00
Arjun Warty cd1705313f Doc: installation_linux.rst: Feedback Updates
Modified the web page to  make it direct and easier to understand.

Major changes being the selection of the directory in the Zephyr SDK
Installation and a Note added for the '.zephyrrc' to include the SDK
installation location if not default.

Minor changes involving the elimination of repeated use of same sentence
with different Host OS and indentation correction in the Fedora section
since it showed up in 'white text' rather than code block.

SDK's '.zephyrrc' documentation needed to have the default location and
the user defined location

Signed-off-by: Arjun Warty <arjun.warty@nxp.com>
2018-08-02 19:16:20 +02:00
Alexei Colin 368826e951 doc: getting started: add Arch Linux package
The SDK has been packaged for Arch Linux and can be found
in Arch User Repository. Update the docs to make this known.
The package is useful because by installing it the user
gets all dependencies automatically installed.

Signed-off-by: Alexei Colin <ac@alexeicolin.com>
2018-07-31 20:21:41 -04:00
Maureen Helm d7d1090422 doc: scripts: Updates for pyocd v0.11.1
pyocd recently added support for python 3 so we can now remove the
python 2 package requirements. It also merged Zephyr thread awareness
upstream, so we can remove the reference to my pyocd pull request.

Tested debugging and flashing on Linux and Windows.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-07-27 00:54:55 +02:00
Carles Cufi 16155ad93a doc: windows: Clarify Python paths
In order to make things simpler for the user, remove the
`--user` flag when invoking pip and pip3 so that executables are placed
in the <Python>\Scripts folder, which is added to the PATH
automatically.
Additionally clarify and clean up the documentation tools section.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-07-18 15:48:29 -05:00
Daniel Leung 62b8489635 doc: getting_started: add instructions to build on Clear Linux
This expands the Development Environment Setup on Linux guide to
include instructions for Clear Linux.

Tested on Clear Linux build 23610.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2018-07-16 21:02:24 -04:00
Carles Cufi 2516aa07e4 doc: Add doxygen to Chocolatey package list
In order to build the documentation one needs Doxygen. Now that building
the documentation is supported on Windows, include this package.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-07-13 15:02:24 -04:00
Yasushi SHOJI e09af5f008 doc: enhance cross compile section in getting started
"Getting Started" does not clearly state how to use a custom cross
compiler.  This patch adds a new section "Using Custom Cross
Compilers" to it.

To support users without SDK, we have the section "Building without
the Zephyr SDK".  But the section is all about prebuilt tools in the
SDK but not build process.  This patch adds two pointers "Using 3rd
Party Cross Compilers" and "Using Custom Cross Compilers" pointing to
the actual building process, and let those section describe
ZEPHYR_TOOLCHAIN_VARIANT, which is cross compilers dependent variable.

The patch also clarify what a 3rd party cross compiler is and what a
custom compiler is.

Signed-off-by: Yasushi SHOJI <y-shoji@ispace-inc.com>
2018-07-05 09:04:09 -04:00
Marti Bolivar c6c1501355 getting_started: building: fix inaccuracies
The building and running section is out of date, as Windows and macOS
commands are available now.

It also has some accuracies:

- the following section describes how to build hello_world, not how to
  make a new application based on it

- zephyr-env scripts do more than just set project-specific
  environment variables (they modify PATH on Unix, and may run
  arbitrary RC scripts on all platforms)

Fix these issues.

Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
2018-06-08 08:03:05 -04:00
Marti Bolivar 64ab13264a getting_started: fixes and cleanups for installation_linux
Miscellaneous fixes and concision improvements.

Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
2018-06-08 08:03:05 -04:00
Marti Bolivar 9ca4d84079 getting_started: fixes for intro section
Commas are needed before coordinating conjunctions joining independent
clauses. Two backticks are needed for teletype fonts.

Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
2018-06-08 08:03:05 -04:00
Marti Bolivar 3fc206fa53 getting_started: fix UNIX-ism
Now that the instructions work on Windows, delete a reference to
~ (the user's home on a Unix system) in the text.

Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
2018-06-08 08:03:05 -04:00
David B. Kinder 6c6cf23d4d doc: fix misspellings in docs
Caught some misspellings missed by the normal review process.

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-05-23 16:57:33 -04:00
Anas Nashif 941007d4a0 doc: Update Zephyr SDK version
Reference new SDK version (0.9.3) in the docs.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-17 11:08:35 +03:00
Anas Nashif 2a892d5d6d doc: update mac instructions
Use sdn-ng scripts to build toolchain instead of repeating them here.

Fixes #6912

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-05-16 22:21:31 +03:00
Sebastian Bøe 9342e3d32e doc: getting_started: Remove redundant and erronous doc's
The 'getting started' documentation is stating that one should set
some environment variables, but this is not necessary because the user
has already been instructed to set the variables in the
platform-specific guides.

The duplicated documentation should be removed because it is inferiour
to the original documentation. E.g. this documentation does not
describe how to permanently set environment variables. Also, it is
confusingly demonstrating how to use the SDK on Windows, but this is
not supported.

I believe that the purpose of the section is to verify that the user
has not misconfigured or misinstalled the toolchain, but this
responsibility is handled better by CMake itself.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-05-15 18:13:35 +03:00
David B. Kinder 9af44d8256 doc: add native posix command line help
The zephyr.exe created when building a native POSIX application can take
some parameters that are documented in the "board" document, so add a
reference to that documentation here.

fixes: #6384

Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
2018-05-14 17:24:03 -04:00
Ulf Magnusson 11952a60bf kconfig: Remove the C Kconfig implementation
Remove the C Kconfig tools and various scripts associated with them.

scripts/kconfig/diffconfig is popular, so keep it.

I don't know whether anyone is using scripts/kconfig/config. Remove it
and see if anyone screams.

scripts/kconfig/streamline_config.pl deals with modules ('m' values) and
can safely be removed. Zephyr's Kconfig files do not use modules.

Signed-off-by: Ulf Magnusson <ulfalizer@gmail.com>
2018-05-07 21:53:37 +02:00
Sebastian Bøe 558406932b doc: win: Invoke pip3 instead of pip to be safe
It has been observed that users might "default" to Python2 and pip
will therefore install packages for the wrong Python. pip3 appears to
always be installed when Python3 is installed, so we invoke pip3
instead of pip2 to be safe.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-04-21 05:42:04 -07:00
Sebastian Bøe 88b66b58b1 doc: getting_started: Make it more obvious how to follow the guide
Several users have reported confusion about whether one should stop at
the 'Using MSYS2' guide, or continue following the guide.

To resolve this we title the three options as Option 1,2,3, and change
the wording of the second guide to make it clear that it is an
alternative, not an additional step.

Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
2018-04-12 14:18:31 -04:00
Carles Cufi cd05a630c8 doc: getting_started: Modernize macOS instructions
Modernize macOS instructions to fit the latest packages offered by
Homebrew and macOS High Sierra.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-04-05 12:48:33 -04:00
Maureen Helm c33087d336 build: doc: Add support for a Windows equivalent to .zephyrrc
Adds support for setting user environment variables in the file
%userprofile%\zephyrrc.cmd

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2018-03-29 10:35:19 -04:00
Iván Sánchez Ortega 71ddd825ec doc: Add 'apt-get install python3-wheel' to linux installation docs
Adding missing dependency to the "getting started" documentations.
Without the python3-wheel package, running "pip3 -r requirements.txt"
on a Debian system will fail.

Signed-off-by: Iván Sánchez Ortega <ivan@sanchezortega.es>
2018-03-17 19:05:17 +01:00
Anas Nashif 7ee8bb9677 build: deprecate ZEPHYR_GCC_VARIANT
We want to support other toolchain not based on GCC, so the variable is
confusing, use ZEPHYR_TOOLCHAIN_VARIANT instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-02-13 07:44:45 -08:00
Carles Cufi 980c0cf4ac build: win: Add a new zephyr-env.cmd file
Add a new zephyr-env.cmd that mirrors the functionality of zephyr-env.sh
but on Windows platforms. It sets ZEPHYR_BASE to the location of the
script.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-02-12 19:22:22 -05:00
Carles Cufi d0c2be7c8a doc: getting_started: Windows build doc fixes
Correct 2 items in the Windows Getting Started doc:

 * dtc-msys2 is now an upstream Chocolatey package
 * Add instructions to clone and build Ninja for MSYS2

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2018-02-12 13:47:42 -05:00
Anas Nashif c1e395ec90 doc: we do not need gcc-c++.i686 on fedora
This package is not needed for building on fedora and currently causes
dependency issue with the fedora package manager, so remove it.

Fixes #6013

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-02-07 22:39:06 -05:00
Anas Nashif 61346f0c42 doc: install pyocd using pip2
pyocd does not exist as a python 3 module, use pip2 to install it.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-02-06 19:40:42 -05:00
Anas Nashif b452e9ecde doc: update package dependencies for Linux
We now require host compiler for building Zephyr in 32bit mode.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2018-02-06 15:59:36 -08:00
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