Skip to content
This repository has been archived by the owner on Dec 1, 2020. It is now read-only.

Migrating to v21

Michael Boccara edited this page Feb 12, 2014 · 8 revisions

Changes needed to migrate to SpiderMonkey v21

API Changes

JS_EncodeStringToBuffer

// Old Way
JS_EncodeStringToBuffer(jstr, s, len);

// New Way
JS_EncodeStringToBuffer(cx, jstr, s, len);

JSGCRootType

JSGCRootType is no longer present. No impact so far in the code, or API

Other Changes

Builder

SpiderMonkey uses the Firefox building system, so it was needed to add the following directories in order to make it compile correctly:

  • /build
  • /config
  • /python
  • /testing

Patched files

build-*

Adds build-ios, build-osx, build-android and build-win32 scripts

configure.in, configure, aclocal.m4, ios.m4

Adds iOS options

Android.mk

Needed to compile Android

methodjit/Logging.h

Disables JIT on debug.

vm/NumericConversions.h

Disables ARM assembly optimizations when using clang

vm/SPSProfiler.cpp

Includes inlines. Needed for i386 Simulator. Otherwise it won't link.

jspubtd.h

Disables "DEBUG" class id in order to have ABI compatibility between DEBUG and RELEASE builds

Makefile.in

Disables YARR_JIT on iOS devices