Skip to content

Commit 6e06512

Browse files
committed
README: Update "Dependencies" section.
Given that various ports now require submodules, rewrite the section to be more generic. Also, add git submodule update command to other sections for easy user start.
1 parent f54b352 commit 6e06512

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

README.md

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ Alternatively, fallback implementation based on setjmp/longjmp can be used.
7272

7373
To build (see section below for required dependencies):
7474

75+
$ git submodule update --init
7576
$ cd ports/unix
7677
$ make axtls
7778
$ make
@@ -104,32 +105,36 @@ Standard library modules come from
104105
External dependencies
105106
---------------------
106107

107-
Building Unix version requires some dependencies installed. For
108+
Building MicroPython ports may require some dependencies installed.
109+
110+
For Unix port, `libffi` library and `pkg-config` tool are required. On
108111
Debian/Ubuntu/Mint derivative Linux distros, install `build-essential`
109112
(includes toolchain and make), `libffi-dev`, and `pkg-config` packages.
110113

111-
Other dependencies can be built together with MicroPython. Oftentimes,
112-
you need to do this to enable extra features or capabilities. To build
114+
Other dependencies can be built together with MicroPython. This may
115+
be required to enable extra features or capabilities, and in recent
116+
versions of MicroPython, these may be enabled by default. To build
113117
these additional dependencies, first fetch git submodules for them:
114118

115119
$ git submodule update --init
116120

117-
Use this same command to get the latest versions of dependencies, as
118-
they are updated from time to time. After that, in `ports/unix/` dir, execute:
121+
Use the same command to get the latest versions of dependencies, as
122+
they are updated from time to time. After that, in the port directory
123+
(e.g. `ports/unix/`), execute:
119124

120125
$ make deplibs
121126

122127
This will build all available dependencies (regardless whether they
123128
are used or not). If you intend to build MicroPython with additional
124129
options (like cross-compiling), the same set of options should be passed
125-
to `make deplibs`. To actually enabled use of dependencies, edit
130+
to `make deplibs`. To actually enable/disable use of dependencies, edit
126131
`ports/unix/mpconfigport.mk` file, which has inline descriptions of the options.
127-
For example, to build SSL module (required for `upip` tool described above),
128-
set `MICROPY_PY_USSL` to 1.
132+
For example, to build SSL module (required for `upip` tool described above,
133+
and so enabled by dfeault), `MICROPY_PY_USSL` should be set to 1.
129134

130-
In `ports/unix/mpconfigport.mk`, you can also disable some dependencies enabled
131-
by default, like FFI support, which requires libffi development files to
132-
be installed.
135+
For some ports, building required dependences is transparent, and happens
136+
automatically. They still need to be fetched with the git submodule command
137+
above.
133138

134139
The STM32 version
135140
-----------------
@@ -141,6 +146,7 @@ https://launchpad.net/gcc-arm-embedded
141146

142147
To build:
143148

149+
$ git submodule update --init
144150
$ cd ports/stm32
145151
$ make
146152

0 commit comments

Comments
 (0)