blob: 23a311529218f83be97fbf3e6f2009114a2a2080 [file] [log] [blame]
# Copyright (c) 2008 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
Import('env')
env = env.Clone(
)
if env['OS'] == 'osx':
env.Append(
CPPDEFINES = [
'JS_THREADSAFE',
'XP_UNIX',
'DARWIN',
'HAVE_BSD_FLOCK',
'XP_MACOSX',
'HAVE_LCHOWN',
'HAVE_STRERROR',
'FORCE_PR_LOG',
'_PR_PTHREADS',
'UHAVE_CVAR_BUILT_ON_SEM',
'_NSPR_BUILD_',
'OSARCH=Darwin',
'STATIC_JS_API',
'JS_USE_SAFE_ARENA',
'TRIMMED',
'JS_HAS_EXPORT_IMPORT'
],
CPPPATH = '$MOZJS_INCLUDE_PATHS',
)
elif env['OS'] == 'android':
env.Append(
CPPDEFINES = [
'JS_THREADSAFE',
'XP_UNIX',
'HAVE_STRERROR',
'FORCE_PR_LOG',
'_PR_PTHREADS',
'UHAVE_CVAR_BUILT_ON_SEM',
'_NSPR_BUILD_',
'OSARCH=Android',
'STATIC_JS_API',
'JS_USE_SAFE_ARENA',
'TRIMMED',
'JS_HAS_EXPORT_IMPORT',
],
CPPPATH = '$MOZJS_INCLUDE_PATHS',
)
input_files = [
# Common Files
'$MOZJS_DIR/js/src/jsapi.c',
'$MOZJS_DIR/js/src/jsarena.c',
'$MOZJS_DIR/js/src/jsarray.c',
'$MOZJS_DIR/js/src/jsatom.c',
'$MOZJS_DIR/js/src/jsbool.c',
'$MOZJS_DIR/js/src/jscntxt.c',
'$MOZJS_DIR/js/src/jsdate.c',
'$MOZJS_DIR/js/src/jsdbgapi.c',
'$MOZJS_DIR/js/src/jsdhash.c',
'$MOZJS_DIR/js/src/jsdtoa.c',
'$MOZJS_DIR/js/src/jsemit.c',
'$MOZJS_DIR/js/src/jsexn.c',
'$MOZJS_DIR/js/src/jsfun.c',
'$MOZJS_DIR/js/src/jsgc.c',
'$MOZJS_DIR/js/src/jshash.c',
'$MOZJS_DIR/js/src/jsinterp.c',
'$MOZJS_DIR/js/src/jsinvoke.c',
'$MOZJS_DIR/js/src/jsiter.c',
'$MOZJS_DIR/js/src/jskwgen.c',
'$MOZJS_DIR/js/src/jslock.c',
'$MOZJS_DIR/js/src/jslog2.c',
'$MOZJS_DIR/js/src/jslong.c',
'$MOZJS_DIR/js/src/jsmath.c',
'$MOZJS_DIR/js/src/jsnum.c',
'$MOZJS_DIR/js/src/jsobj.c',
'$MOZJS_DIR/js/src/jsopcode.c',
'$MOZJS_DIR/js/src/jsparse.c',
'$MOZJS_DIR/js/src/jsprf.c',
'$MOZJS_DIR/js/src/jsregexp.c',
'$MOZJS_DIR/js/src/jsscan.c',
'$MOZJS_DIR/js/src/jsscope.c',
'$MOZJS_DIR/js/src/jsscript.c',
'$MOZJS_DIR/js/src/jsstr.c',
'$MOZJS_DIR/js/src/jsutil.c',
'$MOZJS_DIR/js/src/jsxdrapi.c',
'$MOZJS_DIR/js/src/jsxml.c',
'$MOZJS_DIR/xpcom/glue/pldhash.c',
'$MOZJS_DIR/nspr/pr/src/misc/pratom.c',
'$MOZJS_DIR/nspr/pr/src/threads/prcmon.c',
'$MOZJS_DIR/nspr/pr/src/misc/prdtoa.c',
'$MOZJS_DIR/nspr/pr/src/misc/prenv.c',
'$MOZJS_DIR/nspr/pr/src/misc/prerr.c',
'$MOZJS_DIR/nspr/pr/src/misc/prerror.c',
'$MOZJS_DIR/nspr/pr/src/misc/prerrortable.c',
'$MOZJS_DIR/nspr/pr/src/io/prfdcach.c',
'$MOZJS_DIR/nspr/pr/src/misc/prinit.c',
'$MOZJS_DIR/nspr/pr/src/misc/prinrval.c',
'$MOZJS_DIR/nspr/pr/src/io/priometh.c',
'$MOZJS_DIR/nspr/pr/src/io/pripv6.c',
'$MOZJS_DIR/nspr/pr/src/io/prlayer.c',
'$MOZJS_DIR/nspr/pr/src/linking/prlink.c',
'$MOZJS_DIR/nspr/pr/src/io/prlog.c',
'$MOZJS_DIR/nspr/pr/src/malloc/prmalloc.c',
'$MOZJS_DIR/nspr/pr/src/io/prmapopt.c',
'$MOZJS_DIR/nspr/pr/src/malloc/prmem.c',
'$MOZJS_DIR/js/src/prmjtime.c',
'$MOZJS_DIR/nspr/pr/src/io/prmmap.c',
'$MOZJS_DIR/nspr/pr/src/io/prmwait.c',
'$MOZJS_DIR/nspr/pr/src/misc/prnetdb.c',
'$MOZJS_DIR/nspr/pr/src/md/prosdep.c',
'$MOZJS_DIR/nspr/pr/src/io/prprf.c',
'$MOZJS_DIR/nspr/pr/src/threads/prrwlock.c',
'$MOZJS_DIR/nspr/pr/src/io/prscanf.c',
'$MOZJS_DIR/nspr/pr/src/memory/prseg.c',
'$MOZJS_DIR/nspr/pr/src/io/prstdio.c',
'$MOZJS_DIR/nspr/pr/src/misc/prtime.c',
'$MOZJS_DIR/nspr/pr/src/threads/prtpd.c',
'$MOZJS_DIR/nspr/pr/src/pthreads/ptio.c',
'$MOZJS_DIR/nspr/pr/src/pthreads/ptmisc.c',
'$MOZJS_DIR/nspr/pr/src/pthreads/ptsynch.c',
'$MOZJS_DIR/nspr/pr/src/pthreads/ptthread.c',
'$MOZJS_DIR/nspr/pr/src/md/unix/unix.c',
'$MOZJS_DIR/nspr/pr/src/md/unix/unix_errors.c',
'$MOZJS_DIR/nspr/pr/src/md/unix/uxproces.c',
]
if env['OS'] == 'osx':
# Safari-specific SpiderMonkey files.
input_files += [
'$MOZJS_DIR/nspr/pr/src/md/unix/darwin.c',
'$MOZJS_DIR/nspr/pr/src/md/unix/os_Darwin_ppc.s',
'$MOZJS_DIR/nspr/pr/src/md/unix/os_Darwin_x86.s',
]
elif env['OS'] == 'android':
# Files needed for Android builds.
input_files += [
'$MOZJS_DIR/nspr/pr/src/md/unix/linux.c',
'$MOZJS_DIR/nspr/pr/src/misc/prlog2.c',
]
env.GearsStaticLibrary('mozjs-gears', input_files)