mirror of
https://github.com/jerryscript-project/jerryscript.git
synced 2025-12-15 16:29:21 +00:00
Rely on platform-provided versions. Thus, no need to download and build them, neither to wrap them with shell scripts. CMake and precommit updated to call the new tools. Development documentation also updated/simplified. PS: On my Ubuntu 14.04.3, cppcheck has version 1.61, while prereq version was 1.69. The older version reports and fails on a strange style issue in ecma/builtin-objects/ecma-builtin-helpers.cpp, for which the only solution found was to suppress the cppcheck errors with `variableScope` id for that file. JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
50 lines
1.3 KiB
Markdown
50 lines
1.3 KiB
Markdown
## Development
|
|
### Setting Up Prerequisites
|
|
Currently, only Ubuntu 14.04+ is officially supported as primary development environment.
|
|
|
|
There are several dependencies, that should be installed manually. The following list is required for building:
|
|
- `gcc` or `g++` higher than `4.8.2`
|
|
- native
|
|
- arm-none-eabi
|
|
- `cmake` higher than `2.8.12.2`
|
|
- `make` higher than `3.81`
|
|
- `bash` higher than `4.3.11`
|
|
- `cppcheck` higher than 1.61
|
|
- `vera++` higher than 1.2.1
|
|
|
|
```bash
|
|
sudo apt-get install gcc g++ gcc-arm-none-eabi cmake cppcheck vera++
|
|
```
|
|
|
|
Upon first build, `make` would try to setup prerequisites, required for further development and pre-commit testing:
|
|
- STM32F3 and STM32F4 libraries
|
|
|
|
```bash
|
|
make prerequisites -j
|
|
```
|
|
It may take time, so go grab some coffee:
|
|
|
|
```bash
|
|
Setting up prerequisites... (log file: ./build/prerequisites/prerequisites.log)
|
|
```
|
|
|
|
### Building Debug Version
|
|
To build debug version for Linux:
|
|
```bash
|
|
make debug.linux -j
|
|
```
|
|
|
|
To build debug version for Linux without LTO (Link Time Optimization):
|
|
```bash
|
|
LTO=OFF make debug.linux -j
|
|
```
|
|
|
|
### Checking Patch
|
|
```bash
|
|
make precommit -j
|
|
```
|
|
If some style guidelines, build or test runs fail during precommit, then this is indicated with a message like this:
|
|
```
|
|
Build failed. See ./build/bin/unittests/make.log for details.
|
|
```
|