| # 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) |