1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# 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)
|