Skip to content
Memory optimized JavaScript Engine for Lightweight Web Engine
Branch: master
Clone or download
clover2123 and yichoi Fix minor bug & static analysis defect (#264)
Signed-off-by: HyukWoo Park <hyukwoo.park@samsung.com>
Latest commit aeb6851 May 21, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build Run test262 jobs only on ES5 builds (#217) May 13, 2019
docs Update missing builtin functions of TypedArray (#49) Jan 9, 2019
packaging Change default license to LGPL license (#60) Mar 7, 2018
src Fix minor bug & static analysis defect (#264) May 21, 2019
test Add internal intl test directory (#260) May 17, 2019
third_party Update GCutil submodule to get better profiling information (#240) May 8, 2019
tools Add internal intl test directory (#260) May 17, 2019
.babelrc Add ecma_6 into spidermonkey vendortest Jan 25, 2017
.clang-format Apply clang-formatting Dec 8, 2016
.gitignore Add regression tests (#41) Jan 21, 2019
.gitlab-ci.yml Move tools/vendortest to js_vendor_tc (#74) May 15, 2018
.gitmodules Ignore tracking modified contents in submodules (#187) Apr 8, 2019
.travis.yml Add internal intl test directory (#260) May 17, 2019
CMakeLists.txt Clean up cmake build (#98) Feb 21, 2019
LICENSE.Apache-2.0 Change default license to LGPL license (#60) Mar 7, 2018
LICENSE.BSD-2-Clause Change default license to LGPL license (#60) Mar 7, 2018
LICENSE.BSD-3-Clause Change default license to LGPL license (#60) Mar 7, 2018
LICENSE.LGPL-2.1+ Change default license to LGPL license (#60) Mar 7, 2018
LICENSE.MIT Change default license to LGPL license (#60) Mar 7, 2018
LICENSE.MPL-2.0 Change default license to LGPL license (#60) Mar 7, 2018
README.md Link libicu on ARM-Linux devices (#174) Apr 19, 2019
package.json Add ecma_6 into spidermonkey vendortest Jan 25, 2017
sonar-project.properties Don't hardcode version into Sonar properties (#23) Jan 2, 2019

README.md

Escargot

Travis CI Build Status SonarCloud Status

Prerequisites

On Ubuntu Linux

General build prerequisites:

sudo apt-get install autoconf automake libtool libicu-dev ninja-build

Prerequisites for x86-64-to-x86 compilation:

sudo apt-get install gcc-multilib g++-multilib
sudo apt-get install libicu-dev:i386

On macOS

brew install autoconf automake cmake icu4c libtool ninja pkg-config

Note: For later build steps (cmake, pkg-config) to find ICU libraries, you may need to set the PKG_CONFIG_PATH environment variable, as instructed by brew. E.g.:

export PKG_CONFIG_PATH="/usr/local/opt/icu4c/lib/pkgconfig"

Build Escargot

git clone https://github.com/pando-project/escargot.git
cd escargot
git submodule update --init third_party
cmake -DESCARGOT_HOST=linux -DESCARGOT_ARCH=x64 -DESCARGOT_MODE=release -DESCARGOT_OUTPUT=bin -GNinja
ninja

Build options

The following build options are supported when generating ninja rules using cmake.

  • -DESCARGOT_HOST=[ linux | tizen_obs | darwin ]
    Compile Escargot for Linux, Tizen, or macOS platform
  • -DESCARGOT_ARCH=[ x64 | x86 | arm | i686 | aarch64 ]
    Compile Escargot for each architecture
  • -DESCARGOT_MODE=[ debug | release ]
    Compile Escargot for either release or debug mode
  • -DESCARGOT_OUTPUT=[ bin | shared_lib | static_lib ]
    Define target output type
  • -DESCARGOT_LIBICU_SUPPORT=[ ON | OFF ]
    Enable libicu library if set ON. (Optional, default = ON)

Testing

First, get benchmarks and tests:

git submodule update --init

Benchmarks

Prerequisite for SpiderMonkey:

sudo apt-get install npm
npm install

Test run for each benchmark (Sunspider, Octane, V8, Chakracore, test262, SpiderMonkey, etc.):

tools/run-tests.py
You can’t perform that action at this time.