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 any C99-compliant compiler
    • native
    • arm-none-eabi
  • cmake >= 2.8.12.2
  • bash >= 4.3.11
  • cppcheck >= 1.61
  • vera++ >= 1.2.1
  • python >= 2.7.6
  1. sudo apt-get install gcc g++ gcc-arm-none-eabi cmake cppcheck vera++ python

To make our scripts run correctly, several shell utilities should be available on the system:

  • awk
  • bc
  • find
  • sed

Building JerryScript

To build debug version for Linux

  1. python tools/build.py --debug

To build debug version for Linux without LTO (Link Time Optimization)

  1. python tools/build.py --debug --lto=off

Add custom arguments to CMake

  1. python tools/build.py --cmake-param=CMAKE_PARAM

Set a profile mode (full, minimal)

  1. python tools/build.py --feature=full|minimal

Use (jerry, compiler-default, external) libc

The default libc is jerry-libc, but you can use compiler-default libc or an external libc:

  • compiler-default libc:
  1. python tools/build.py --jerry-libc=off --compiler-default-libc=on
  • external libc:
  1. python tools/build.py --jerry-libc=off --compiler-default-libc=off --compile-flag="-I/path/to/libc/include"

Add toolchain file

The cmake dir already contains some usable toolchain files, which you can use in the following format:

  1. python tools/build.py --toolchain=TOOLCHAIN

For example the cross-compile to RaspberryPi 2 is something like this:

  1. python tools/build.py --toolchain=cmake/toolchain_linux_armv7l.cmake

To get a list of all the available buildoptions for Linux

  1. python tools/build.py --help

Checking patch

  1. python tools/run-tests.py --precommit

Running only one type of test

To run build option tests

  1. python tools/run-tests.py --buildoption-test

To run unittests

  1. python tools/run-tests.py --unittests

To run jerry-tests

  1. python tools/run-tests.py --jerry-tests

To run jerry-test-suite

  1. python tools/run-tests.py --jerry-test-suite

To run signed-off check

  1. python tools/run-tests.py --check-signed-off

To run cppcheck

  1. python tools/run-tests.py --check-cppcheck

To run vera check

  1. python tools/run-tests.py --check-vera

To get a list of all the available test options

  1. python tools/run-tests.py --help