summaryrefslogtreecommitdiffstats
path: root/gears/SConscript.libmozjs
blob: 23a311529218f83be97fbf3e6f2009114a2a2080 (plain)
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)