blob: 71972599a2540e873ee4207459abc5328f669400 [file] [log] [blame]
Galanakis, Minos41f85972019-09-30 15:56:40 +01001#####################
2Software requirements
3#####################
Gyorgy Szingdb9783c2019-04-17 21:08:48 +02004
Antonio de Angelis065ce4a2019-06-04 14:02:33 +01005.. |KEIL_VERSION| replace:: v5.25.2
Minos Galanakis3b740a12020-10-15 11:10:26 +01006.. |DEV_STUDIO_VERSION| replace:: 2019.1
Antonio de Angelis065ce4a2019-06-04 14:02:33 +01007
Galanakis, Minos757139a2019-11-11 15:00:11 +00008A quick reference table is included in the
Minos Galanakise4094012020-06-12 14:25:34 +01009:ref:`docs/getting_started/tfm_sw_requirement:Tool & Dependency overview` section
Galanakis, Minos757139a2019-11-11 15:00:11 +000010of this document.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020011
12****************************
13Supported build environments
14****************************
15
16TF-M officially supports a limited set of build environments and setups. In
17this context, official support means that the environments listed below
Summer Qin0c20bcc2021-05-10 11:03:04 +080018are actively used by team members and active developers, hence users should
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020019be able to recreate the same configurations by following the instructions
20described below. In case of problems, the TF-M team provides support
21only for these environments, but building in other environments can still be
22possible.
23
24The following environments are supported:
Kevin Townsend0f869bb2019-08-01 21:06:48 +020025
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020026 - Ubuntu 18.04 x64
Anton Komlevc4cadb02020-11-02 12:54:29 +000027 - Windows 10 x64
Mingyang Sun1e590642019-09-24 10:46:21 +080028
Anton Komlevc4cadb02020-11-02 12:54:29 +000029***********
30C compilers
31***********
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020032
33To compile TF-M code, at least one of the supported compiler toolchains have to
34be available in the build environment. The currently supported compiler
35versions are:
Antonio de Angelis065ce4a2019-06-04 14:02:33 +010036
Mark Horvathed3980e2021-03-05 13:12:20 +010037 - Arm Compiler v6.10.1+
Minos Galanakisf216e2b2020-11-09 17:12:01 +000038 - GNU Arm compiler v7.3.1+
Anton Komlevc4cadb02020-11-02 12:54:29 +000039 - IAR Arm compiler v8.42.x, v8.50.x
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020040
41.. Note::
Antonio de Angelis065ce4a2019-06-04 14:02:33 +010042 - The Arm compilers above are provided via Keil uVision |KEIL_VERSION|
Minos Galanakis3b740a12020-10-15 11:10:26 +010043 or greater and Arm Development Studio
Antonio de Angelis065ce4a2019-06-04 14:02:33 +010044 |DEV_STUDIO_VERSION| or greater, or they can be downloaded as standalone
45 packages from
46 `here <https://developer.arm.com/products/software-development-tools/compilers/arm-compiler/downloads/version-6>`__.
47
Antonio de Angelis065ce4a2019-06-04 14:02:33 +010048 - The GNU Arm compiler can be downloaded from
49 `here <https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads>`__.
Shawn Shan8a46ad52020-11-26 14:54:50 +080050 On the page select *GNU Arm Embedded Toolchain: 7-2018-q2-update* or an
51 above version.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020052
David Hu0d64a642021-03-22 10:37:23 +080053 - GNU Arm compiler version *10-2020-q4-major* has an issue in CMSE support.
54 The bug is reported in `here <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99157>`__.
55 Select other GNU Arm compiler versions instead.
56
TTornblom8a8b4522020-06-10 11:13:32 +020057 - The IAR Arm compilers above are provided via IAR Embedded Workbench (Windows) or
58 IAR build tools for linux.
59 For information, see
60 `here <https://www.iar.com/iar-embedded-workbench/#!?architecture=Arm>`__ or
61 `here <https://www.iar.com/iar-embedded-workbench/build-tools-for-linux/>`__.
62
Anton Komlevc4cadb02020-11-02 12:54:29 +000063*****
64CMake
65*****
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020066
Raef Coles4ebad292020-11-12 16:39:51 +000067The build-system is CMake based and supports the version 3.15 or higher.
Antonio de Angelis065ce4a2019-06-04 14:02:33 +010068
Anton Komlevc4cadb02020-11-02 12:54:29 +000069 - Please use the latest build version available.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020070 - Recent versions of CMake can be downloaded from
71 https://cmake.org/download/, and older releases are available from
72 https://cmake.org/files.
73
Anton Komlevc4cadb02020-11-02 12:54:29 +000074CMake handles all external dependencies, but if you wish to alter this
Summer Qinab1dd992021-05-25 13:58:55 +080075behaviour, see :ref:`docs/technical_references/instructions/tfm_build_instruction:Manual
Anton Komlevb8e3af02020-08-28 10:23:57 +010076dependency management`
Minos Galanakisac6b06c2020-03-19 12:57:02 +000077
Anton Komlevc4cadb02020-11-02 12:54:29 +000078********
79GNU make
80********
81
82TF-M project builds using the "Unix Makefiles" generator of CMake
83and thus GNU make is needed for the build.
84
85 - On Linux please use the version available in your distribution.
86 - On Windows, GNU make v3.81 or higher shall work fine.
87
88CMake generators other than "Unix Makefiles" may work too, but are not
89officially supported. You may have a good luck with Ninja.
90
Ludovic Barre8a77bdd2020-03-26 19:53:07 +010091********************************************
92Tools for configuring and programming boards
93********************************************
94
Anton Komlevc4cadb02020-11-02 12:54:29 +000095Please follow a board secific documentation for building and programming
96tools.
Ludovic Barre8a77bdd2020-03-26 19:53:07 +010097
Gyorgy Szingdb9783c2019-04-17 21:08:48 +020098**************
Anton Komlevc4cadb02020-11-02 12:54:29 +000099Typical setups
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200100**************
101
Anton Komlevc4cadb02020-11-02 12:54:29 +0000102This section lists steps to set-up TF-M build environment under Linux and Windows.
103Please also check the `Exceptions and special cases`_ chapter for any special
104requirements depending on the tools you are using.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200105
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100106The build system can generate two documents: The Reference Manual and the
107User Guide. Both documents can be generated in HTML and PDF format.
108
109.. Note::
110 Support for document generation in the build environment is not mandatory.
111 Missing document generation tools will not block building the
112 TF-M firmware.
113
Anton Komlevc4cadb02020-11-02 12:54:29 +0000114Ubuntu
115======
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200116
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100117Setup needed tools for Ubuntu
118-----------------------------
David Vincze4a6555e2019-11-06 09:32:13 +0100119
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100120Tools required to build sources:
121
122 - Arm DS |DEV_STUDIO_VERSION| (Arm DS Ultimate Edition)
123 or GNU Arm compiler v7.3.1+
Anton Komlevc4cadb02020-11-02 12:54:29 +0000124 - Git tools v2.10.0
125 - CMake (see the `CMake`_ chapter)
126 - GNU Make (see the `GNU make`_ chapter)
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100127 - `SRecord v1.58 <http://srecord.sourceforge.net/download.html/>`__
128 (for Musca test chip boards)
Anton Komlevc4cadb02020-11-02 12:54:29 +0000129 - Python3 and the pip package manager (from Python 3.4 it's included)
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100130 - Python3 packages as listed in tools/requirements.txt file
131
132Tools required to generate documentation:
133
134 - Doxygen v1.8.0 or later - for reference manual
135 - Graphviz dot v2.38.0 or later
136 - PlantUML v1.2018.11 or later
137 - Java runtime environment 1.8 or later (for running PlantUML)
138 - LaTeX - for PDF generation only
139 - PdfLaTeX - for PDF generation only
140 - Python3 packages as listed in tools/requirements.txt - for user manual
141
142Download and install the required tools:
David Vincze4a6555e2019-11-06 09:32:13 +0100143
Anton Komlevc4cadb02020-11-02 12:54:29 +0000144.. code-block:: bash
David Vincze4a6555e2019-11-06 09:32:13 +0100145
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100146 sudo apt-get update
147 sudo apt-get install -y git curl wget build-essential libssl-dev python3 \
148 python3-pip doxygen graphviz default-jre doxygen-latex
149 mkdir ~/plantuml
150 curl -L http://sourceforge.net/projects/plantuml/files/plantuml.jar/download --output ~/plantuml/plantuml.jar
David Vincze4a6555e2019-11-06 09:32:13 +0100151
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100152Clone the TF-M Sources
David Wangd6fd6af2021-06-21 17:17:26 +0800153(see :ref:`Getting the source-code`),
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100154then
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200155
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100156.. code-block:: bash
157
158 pip3 install --upgrade pip
159 cd trusted-firmware-m
160 pip3 install -r tools/requirements.txt
161
162Finally, install C compiler (see `C compilers`_), CMake (see `CMake`_)
163and SRecord as required.
164
165Setup environment variables for Ubuntu
166--------------------------------------
167
168To import CMake in your bash shell console:
169
170.. code-block:: bash
171
172 export PATH=<CMake path>/bin:$PATH
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200173
Minos Galanakis3b740a12020-10-15 11:10:26 +0100174To import Arm Compiler v6.13 in your bash shell console:
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200175
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200176.. code-block:: bash
177
Minos Galanakis3b740a12020-10-15 11:10:26 +0100178 export PATH=<ARM_DS_PATH>/sw/ARMCompiler6.13/bin:$PATH
Vikas Katariya1c361cd2019-08-23 15:05:02 +0100179 export ARM_TOOL_VARIANT=ult
Minos Galanakis3b740a12020-10-15 11:10:26 +0100180 export ARM_PRODUCT_PATH=<ARM_DS_PATH>/sw/mappings
Vikas Katariya1c361cd2019-08-23 15:05:02 +0100181 export ARMLMD_LICENSE_FILE=<LICENSE_FILE_PATH>
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200182
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200183To import GNU Arm in your bash shell console:
184
185.. code-block:: bash
186
TTornblom8a8b4522020-06-10 11:13:32 +0200187 export PATH=<bash path>/bin:$PATH
188
Anton Komlevc4cadb02020-11-02 12:54:29 +0000189To import IAR Arm compiler in your bash shell console:
TTornblom8a8b4522020-06-10 11:13:32 +0200190
191.. code-block:: bash
192
193 export PATH=<IAR compiler path>/bin:$PATH
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200194
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100195To import PLATUML:
196
197.. code-block:: bash
198
199 export PLANTUML_JAR_PATH=~/plantuml/plantuml.jar
200
Anton Komlevc4cadb02020-11-02 12:54:29 +0000201Windows
202=======
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200203
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100204Setup needed tools for Windows
205------------------------------
206
207Tools required to build sources:
David Vincze4a6555e2019-11-06 09:32:13 +0100208
Minos Galanakis3b740a12020-10-15 11:10:26 +0100209 - uVision |KEIL_VERSION| or Arm DS |DEV_STUDIO_VERSION| (Arm DS Ultimate Edition)
Minos Galanakisf216e2b2020-11-09 17:12:01 +0000210 or GNU Arm compiler v7.3.1+
Anton Komlevc4cadb02020-11-02 12:54:29 +0000211 - Git client latest version (https://git-scm.com/download/win)
212 - CMake (`native Windows version <https://cmake.org/download/>`__,
213 see the `CMake`_ chapter)
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100214 - GNU make (http://gnuwin32.sourceforge.net/packages/make.htm)
Anton Komlevc4cadb02020-11-02 12:54:29 +0000215 - `SRecord v1.63 <https://sourceforge.net/projects/srecord/>`__ (for Musca test
216 chip boards)
217 - Python3 `(native Windows version) <https://www.python.org/downloads/>`__ and
218 the pip package manager (from Python 3.4 it's included)
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100219 - Python3 packages as listed in tools/requirements.txt file
220
221Tools required to generate documentation:
222
223 - `Doxygen v1.8.0
224 <https://sourceforge.net/projects/doxygen/files/snapshots/doxygen-1.8-svn/
225 windows/doxygenw20140924_1_8_8.zip/download>`__
226 or later - for reference manual
227 - `Graphviz dot v2.38.0
228 <https://graphviz.gitlab.io/_pages/Download/windows/graphviz-2.38.msi>`__
229 or later
230 - `PlantUML v1.2018.11
231 <http://sourceforge.net/projects/plantuml/files/plantuml.jar/download>`__
232 or later
233 - The Java runtime 1.8 or later (for running PlantUML) is part of the Arm DS
234 installation or can be downloaded from
235 `here <https://www.java.com/en/download/>`__
236 - LaTeX - for PDF generation only
237 - PdfLaTeX - for PDF generation only
238 - `MikTeX <https://miktex.org/download>`__ - for PDF generation only
239 - Python3 packages as listed in tools/requirements.txt - for user manual
240
241Download and install the required tools from above.
242
243Clone the TF-M Sources
David Wangd6fd6af2021-06-21 17:17:26 +0800244(see :ref:`Getting the source-code`),
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100245then
Anton Komlev211aacf2020-11-02 12:48:11 +0000246
Anton Komlevb759e672020-11-02 12:15:44 +0000247.. code-block:: bash
248
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100249 cd trusted-firmware-m
Anton Komlevc4cadb02020-11-02 12:54:29 +0000250 pip install -r tools\requirements.txt
251
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100252Finally, install C compiler (see `C compilers`_), CMake (see `CMake`_)
253and SRecord as required.
Anton Komlevc4cadb02020-11-02 12:54:29 +0000254
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100255Setup environment variables for Windows
256---------------------------------------
257Set the environment variables, assuming that:
258
259 - CMake, doxygen, dot, and MikTeX binaries are available on the PATH.
260 - Java JVM is used from Arm DS installation.
261 - plantuml.jar is available at c:\\plantuml\\plantuml.jar
262
263To import CMake to your PATH variable:
Anton Komlevc4cadb02020-11-02 12:54:29 +0000264
265.. code-block:: bash
266
267 set PATH=<CMake_Path>\bin;$PATH
268
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100269To import PLATUML:
270
271.. code-block:: bash
272
273 set PLANTUML_JAR_PATH=<plantuml_Path>\plantuml.jar
274
275To set PATH for ARMDS:
276
277.. code-block:: bash
278
279 set PATH=$PATH;<ARM_DS_PATH>\sw\java\bin
280
Anton Komlevc4cadb02020-11-02 12:54:29 +0000281There are several configurations depending on a toolset you are using.
282The typical cases are listed below.
283
Minos Galanakis3b740a12020-10-15 11:10:26 +0100284Armclang + Arm DS
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100285
Anton Komlevc4cadb02020-11-02 12:54:29 +0000286.. code-block:: bash
287
Minos Galanakis3b740a12020-10-15 11:10:26 +0100288 set PATH=<ARM_DS_PATH>\sw\ARMCompiler6.13\bin;$PATH
289 set ARM_PRODUCT_PATH=<ARM_DS_PATH>\sw\mappings
Anton Komlevc4cadb02020-11-02 12:54:29 +0000290 set ARM_TOOL_VARIANT=ult
291 set ARMLMD_LICENSE_FILE=<LICENSE_FILE_PATH>
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200292
293Armclang + Keil MDK Arm
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200294
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200295.. code-block:: bash
296
Anton Komlevc4cadb02020-11-02 12:54:29 +0000297 set PATH=<uVision path>\ARM\ARMCLANG\bin;$PATH
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200298
299GNU Arm
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200300
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200301.. code-block:: bash
302
Anton Komlevc4cadb02020-11-02 12:54:29 +0000303 set PATH=<GNU Arm path>\bin;$PATH
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200304
Anton Komlevc4cadb02020-11-02 12:54:29 +0000305****************************
306Exceptions and special cases
307****************************
308
309ArmClang
310========
311 - Arm compiler specific environment variable may need updating based on
312 specific products and licenses as explained in
313 `product-and-toolkit-configuration <https://developer.arm.com/products/software-development-tools/license-management/resources/product-and-toolkit-configuration>`__.
314
Anton Komlevc4cadb02020-11-02 12:54:29 +0000315MikTeX
316======
317 - When building the documentation the first time, MikTeX might prompt for
318 installing missing LaTeX components. Please allow the MikTeX package
319 manager to set-up these.
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200320
Galanakis, Minos757139a2019-11-11 15:00:11 +0000321**************************
322Tool & Dependency overview
323**************************
324
325To build the TF-M firmware the following tools are needed:
326
327.. csv-table:: Tool dependencies
328 :header: "Name", "Version", "Component"
329
Anton Komlevc4cadb02020-11-02 12:54:29 +0000330 "C compiler",See `C compilers`_,"Firmware"
331 "CMake",See `CMake`_,
332 "GNU Make",See `GNU make`_,
333 "tf-m-tests",`CMake`_ handles it,
334 "mbed-crypto",`CMake`_ handles it,
335 "MCUboot",`CMake`_ handles it,
Galanakis, Minos757139a2019-11-11 15:00:11 +0000336 "Python",3.x,"Firmware, User Guide"
337 "yaml",,"Firmware"
338 "pyasn1",,"Firmware"
339 "jinja2",,"Firmware"
340 "cryptography",,"Firmware"
341 "cbor",,"Firmware"
Balint Matyi3bae8832020-06-22 15:34:12 +0200342 "click",,"Firmware"
Balint Matyid9abb492020-06-22 08:35:52 +0100343 "imgtool",,"Firmware"
Galanakis, Minos757139a2019-11-11 15:00:11 +0000344 "Doxygen",">1.8","Reference manual"
Subhasish Ghoshbc849302021-04-08 20:21:20 +0100345 "Sphinx","=1.7.9","User Guide"
Galanakis, Minos757139a2019-11-11 15:00:11 +0000346 "sphinxcontrib-plantuml",,"User Guide"
Summer Qincd22d1b2021-04-25 11:28:39 +0800347 "sphinxcontrib-svg2pdfconverter",,"User Guide"
Summer Qin0c20bcc2021-05-10 11:03:04 +0800348 "sphinx-rtd-theme",,"User Guide"
349 "sphinx-tabs",,"User Guide"
Galanakis, Minos757139a2019-11-11 15:00:11 +0000350 "Git",,
351 "PlantUML",">v1.2018.11","Reference Manual, User Guide"
352 "Graphviz dot",">v2.38.0","Reference manual"
353 "Java runtime environment (JRE)",">1.8","Reference Manual, User Guide"
354 "LaTex",,"pdf version of Reference Manual and User Guide"
355 "PdfLaTex",,"pdf version of Reference Manual and User Guide"
356
357Dependency chain:
358
359.. uml::
360
361 @startuml
362 skinparam state {
363 BackgroundColor #92AEE0
364 FontColor black
365 FontSize 16
366 AttributeFontColor black
367 AttributeFontSize 16
368 BackgroundColor<<pdf>> #A293E2
369 BackgroundColor<<doc>> #90DED6
370 }
371 state fw as "Firmware" : TF-M binary
372 state c_comp as "C Compiler" : C99
373 state gmake as "GNU make"
374 state u_guide as "User Guide" <<doc>>
375 state refman as "Reference Manual" <<doc>>
376 state rtd_theme as "sphinx-rtd-theme" <<doc>>
Summer Qin0c20bcc2021-05-10 11:03:04 +0800377 state tabs as "sphinx-tabs" <<doc>>
Galanakis, Minos757139a2019-11-11 15:00:11 +0000378 state sphnix_puml as "sphinxcontrib-plantuml" <<doc>>
Summer Qincd22d1b2021-04-25 11:28:39 +0800379 state sphnix_svg as "sphinxcontrib-svg2pdfconverter" <<doc>>
Galanakis, Minos757139a2019-11-11 15:00:11 +0000380 state JRE as "JRE" <<doc>> : Java Runtime Environment
381 state gwiz as "Graphwiz dot" <<doc>>
382 state Sphinx as "Sphinx" <<doc>>
383 state m2r as "m2r" <<doc>>
384 state PlantUML as "PlantUML" <<doc>>
385 state LaTex as "LaTex" <<pdf>>
386 state PdfLaTex as "PdfLaTex" <<<<pdf>>>>
387 state Doxygen as "Doxygen" <<doc>>
388
389 [*] --> fw
390 fw --> c_comp
391 fw --> CMake
392 CMake --> gmake
393 fw --> cryptography
394 fw --> pyasn1
395 fw --> yaml
396 fw --> jinja2
397 fw --> cbor
Balint Matyi3bae8832020-06-22 15:34:12 +0200398 fw --> click
Balint Matyid9abb492020-06-22 08:35:52 +0100399 fw --> imgtool
Galanakis, Minos757139a2019-11-11 15:00:11 +0000400 cryptography --> Python3
401 pyasn1 --> Python3
402 yaml --> Python3
403 jinja2 --> Python3
404 cbor --> Python3
Balint Matyi3bae8832020-06-22 15:34:12 +0200405 click --> Python3
Balint Matyid9abb492020-06-22 08:35:52 +0100406 imgtool --> Python3
Galanakis, Minos757139a2019-11-11 15:00:11 +0000407
408 [*] --> u_guide
409 u_guide --> Sphinx
410 Sphinx --> m2r
411 Sphinx --> rtd_theme
Summer Qin0c20bcc2021-05-10 11:03:04 +0800412 Sphinx --> tabs
Galanakis, Minos757139a2019-11-11 15:00:11 +0000413 Sphinx --> sphnix_puml
Summer Qincd22d1b2021-04-25 11:28:39 +0800414 Sphinx --> sphnix_svg
Galanakis, Minos757139a2019-11-11 15:00:11 +0000415 m2r --> Python3
416 rtd_theme --> Python3
Summer Qin0c20bcc2021-05-10 11:03:04 +0800417 tabs --> Python3
Galanakis, Minos757139a2019-11-11 15:00:11 +0000418 sphnix_puml --> Python3
Summer Qincd22d1b2021-04-25 11:28:39 +0800419 sphnix_svg --> Python3
Galanakis, Minos757139a2019-11-11 15:00:11 +0000420 Sphinx --> PlantUML
421 PlantUML --> JRE
422 PlantUML --> gwiz
423 Sphinx --> LaTex
424 LaTex --> PdfLaTex
425
426 [*] --> refman
427 refman --> Doxygen
428 Doxygen --> PlantUML
429 Doxygen --> LaTex
430 state Legend {
431 state x as "For PDF generation only" <<pdf>>
432 state y as "For document generation only" <<doc>>
433 state z as "Mandatory"
434 }
435
436 @enduml
437
Gyorgy Szingdb9783c2019-04-17 21:08:48 +0200438--------------
439
Mark Horvathed3980e2021-03-05 13:12:20 +0100440*Copyright (c) 2017-2021, Arm Limited. All rights reserved.*