2010-04-21 Xan Lopez <xlopez@igalia.com>
[WebKit-https.git] / JavaScriptCore / GNUmakefile.am
1 javascriptcore_cppflags += \
2         -I$(srcdir)/JavaScriptCore \
3         -I$(srcdir)/JavaScriptCore/API \
4         -I$(srcdir)/JavaScriptCore/ForwardingHeaders \
5         -I$(srcdir)/JavaScriptCore/interpreter \
6         -I$(srcdir)/JavaScriptCore/bytecode \
7         -I$(srcdir)/JavaScriptCore/bytecompiler \
8         -I$(srcdir)/JavaScriptCore/debugger \
9         -I$(srcdir)/JavaScriptCore/jit \
10         -I$(srcdir)/JavaScriptCore/pcre \
11         -I$(srcdir)/JavaScriptCore/profiler \
12         -I$(srcdir)/JavaScriptCore/runtime \
13         -I$(srcdir)/JavaScriptCore/jit \
14         -I$(srcdir)/JavaScriptCore/assembler \
15         -I$(srcdir)/JavaScriptCore/wtf \
16         -I$(srcdir)/JavaScriptCore/wtf/text \
17         -I$(srcdir)/JavaScriptCore/wtf/unicode \
18         -I$(srcdir)/JavaScriptCore/yarr \
19         -I$(top_builddir)/JavaScriptCore \
20         -I$(top_builddir)/JavaScriptCore/pcre \
21         -I$(top_builddir)/JavaScriptCore/parser \
22         -I$(top_builddir)/JavaScriptCore/runtime
23
24 javascriptcore_h_api += \
25         JavaScriptCore/API/JSBase.h \
26         JavaScriptCore/API/JSContextRef.h \
27         JavaScriptCore/API/JSObjectRef.h \
28         JavaScriptCore/API/JSStringRef.h \
29         JavaScriptCore/API/JSStringRefBSTR.h \
30         JavaScriptCore/API/JSStringRefCF.h \
31         JavaScriptCore/API/JSValueRef.h \
32         JavaScriptCore/API/JavaScript.h \
33         JavaScriptCore/API/JavaScriptCore.h \
34         JavaScriptCore/API/WebKitAvailability.h
35
36 javascriptcore_built_nosources += \
37         DerivedSources/Lexer.lut.h \
38         JavaScriptCore/RegExpJitTables.h \
39         JavaScriptCore/runtime/ArrayPrototype.lut.h \
40         JavaScriptCore/runtime/DatePrototype.lut.h \
41         JavaScriptCore/runtime/JSONObject.lut.h \
42         JavaScriptCore/runtime/MathObject.lut.h \
43         JavaScriptCore/runtime/NumberConstructor.lut.h \
44         JavaScriptCore/runtime/RegExpConstructor.lut.h \
45         JavaScriptCore/runtime/RegExpObject.lut.h \
46         JavaScriptCore/runtime/StringPrototype.lut.h \
47         JavaScriptCore/pcre/chartables.c
48
49 javascriptcore_sources += \
50         JavaScriptCore/API/APICast.h \
51         JavaScriptCore/API/APIShims.h \
52         JavaScriptCore/API/JSBase.cpp \
53         JavaScriptCore/API/JSBasePrivate.h \
54         JavaScriptCore/API/JSCallbackConstructor.cpp \
55         JavaScriptCore/API/JSCallbackConstructor.h \
56         JavaScriptCore/API/JSCallbackFunction.cpp \
57         JavaScriptCore/API/JSCallbackFunction.h \
58         JavaScriptCore/API/JSCallbackObject.cpp \
59         JavaScriptCore/API/JSCallbackObject.h \
60         JavaScriptCore/API/JSCallbackObjectFunctions.h \
61         JavaScriptCore/API/JSClassRef.cpp \
62         JavaScriptCore/API/JSClassRef.h \
63         JavaScriptCore/API/JSContextRef.cpp \
64         JavaScriptCore/API/JSContextRefPrivate.h \
65         JavaScriptCore/API/JSObjectRef.cpp \
66         JavaScriptCore/API/JSRetainPtr.h \
67         JavaScriptCore/API/JSStringRef.cpp \
68         JavaScriptCore/API/JSValueRef.cpp \
69         JavaScriptCore/API/OpaqueJSString.cpp \
70         JavaScriptCore/API/OpaqueJSString.h \
71         JavaScriptCore/ForwardingHeaders/JavaScriptCore/APICast.h \
72         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSBase.h \
73         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSContextRef.h \
74         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSObjectRef.h \
75         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSRetainPtr.h \
76         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSStringRef.h \
77         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSStringRefCF.h \
78         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JSValueRef.h \
79         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JavaScript.h \
80         JavaScriptCore/ForwardingHeaders/JavaScriptCore/JavaScriptCore.h \
81         JavaScriptCore/ForwardingHeaders/JavaScriptCore/OpaqueJSString.h \
82         JavaScriptCore/ForwardingHeaders/JavaScriptCore/WebKitAvailability.h \
83         JavaScriptCore/JavaScriptCorePrefix.h \
84         JavaScriptCore/jit/ExecutableAllocator.h \
85         JavaScriptCore/jit/JIT.cpp \
86         JavaScriptCore/jit/JITOpcodes.cpp \
87         JavaScriptCore/jit/JITCall.cpp \
88         JavaScriptCore/jit/JITCode.h \
89         JavaScriptCore/jit/JITPropertyAccess.cpp \
90         JavaScriptCore/jit/JITPropertyAccess32_64.cpp \
91         JavaScriptCore/jit/JITArithmetic.cpp \
92         JavaScriptCore/jit/ExecutableAllocator.cpp \
93         JavaScriptCore/jit/JIT.h \
94         JavaScriptCore/jit/JITInlineMethods.h \
95         JavaScriptCore/jit/JITStubs.cpp \
96         JavaScriptCore/jit/JITStubs.h \
97         JavaScriptCore/jit/JITStubCall.h \
98         JavaScriptCore/bytecode/StructureStubInfo.cpp \
99         JavaScriptCore/bytecode/StructureStubInfo.h \
100         JavaScriptCore/bytecode/CodeBlock.cpp \
101         JavaScriptCore/bytecode/CodeBlock.h \
102         JavaScriptCore/bytecode/JumpTable.cpp \
103         JavaScriptCore/bytecode/JumpTable.h \
104         JavaScriptCore/bytecode/EvalCodeCache.h \
105         JavaScriptCore/bytecode/Instruction.h \
106         JavaScriptCore/bytecompiler/Label.h \
107         JavaScriptCore/interpreter/Interpreter.cpp \
108         JavaScriptCore/interpreter/Interpreter.h \
109         JavaScriptCore/bytecode/Opcode.cpp \
110         JavaScriptCore/bytecode/Opcode.h \
111         JavaScriptCore/interpreter/Register.h \
112         JavaScriptCore/bytecompiler/RegisterID.h \
113         JavaScriptCore/bytecode/SamplingTool.cpp \
114         JavaScriptCore/bytecode/SamplingTool.h \
115         JavaScriptCore/config.h \
116         JavaScriptCore/debugger/DebuggerActivation.cpp \
117         JavaScriptCore/debugger/DebuggerActivation.h \
118         JavaScriptCore/debugger/DebuggerCallFrame.cpp \
119         JavaScriptCore/debugger/DebuggerCallFrame.h \
120         JavaScriptCore/icu/unicode/parseerr.h \
121         JavaScriptCore/icu/unicode/platform.h \
122         JavaScriptCore/icu/unicode/putil.h \
123         JavaScriptCore/icu/unicode/uchar.h \
124         JavaScriptCore/icu/unicode/ucnv.h \
125         JavaScriptCore/icu/unicode/ucnv_err.h \
126         JavaScriptCore/icu/unicode/ucol.h \
127         JavaScriptCore/icu/unicode/uconfig.h \
128         JavaScriptCore/icu/unicode/uenum.h \
129         JavaScriptCore/icu/unicode/uiter.h \
130         JavaScriptCore/icu/unicode/uloc.h \
131         JavaScriptCore/icu/unicode/umachine.h \
132         JavaScriptCore/icu/unicode/unorm.h \
133         JavaScriptCore/icu/unicode/urename.h \
134         JavaScriptCore/icu/unicode/uset.h \
135         JavaScriptCore/icu/unicode/ustring.h \
136         JavaScriptCore/icu/unicode/utf.h \
137         JavaScriptCore/icu/unicode/utf16.h \
138         JavaScriptCore/icu/unicode/utf8.h \
139         JavaScriptCore/icu/unicode/utf_old.h \
140         JavaScriptCore/icu/unicode/utypes.h \
141         JavaScriptCore/icu/unicode/uversion.h \
142         JavaScriptCore/assembler/ARMAssembler.h \
143         JavaScriptCore/assembler/ARMAssembler.cpp \
144         JavaScriptCore/assembler/X86Assembler.h \
145         JavaScriptCore/assembler/AbstractMacroAssembler.h \
146         JavaScriptCore/assembler/AssemblerBuffer.h \
147         JavaScriptCore/assembler/AssemblerBufferWithConstantPool.h \
148         JavaScriptCore/assembler/CodeLocation.h \
149         JavaScriptCore/assembler/LinkBuffer.h \
150         JavaScriptCore/assembler/MacroAssembler.h \
151         JavaScriptCore/assembler/MacroAssemblerARM.h \
152         JavaScriptCore/assembler/MacroAssemblerARM.cpp \
153         JavaScriptCore/assembler/MacroAssemblerCodeRef.h \
154         JavaScriptCore/assembler/MacroAssemblerX86.h \
155         JavaScriptCore/assembler/MacroAssemblerX86_64.h \
156         JavaScriptCore/assembler/MacroAssemblerX86Common.h \
157         JavaScriptCore/assembler/RepatchBuffer.h \
158         JavaScriptCore/os-win32/stdbool.h \
159         JavaScriptCore/os-win32/stdint.h \
160         JavaScriptCore/pcre/pcre.h \
161         JavaScriptCore/pcre/pcre_compile.cpp \
162         JavaScriptCore/pcre/pcre_exec.cpp \
163         JavaScriptCore/pcre/pcre_internal.h \
164         JavaScriptCore/pcre/pcre_tables.cpp \
165         JavaScriptCore/pcre/pcre_ucp_searchfuncs.cpp \
166         JavaScriptCore/pcre/pcre_xclass.cpp \
167         JavaScriptCore/pcre/ucpinternal.h \
168         JavaScriptCore/profiler/CallIdentifier.h \
169         JavaScriptCore/profiler/Profile.cpp \
170         JavaScriptCore/profiler/Profile.h \
171         JavaScriptCore/profiler/ProfileGenerator.cpp \
172         JavaScriptCore/profiler/ProfileGenerator.h \
173         JavaScriptCore/profiler/ProfileNode.cpp \
174         JavaScriptCore/profiler/ProfileNode.h \
175         JavaScriptCore/profiler/Profiler.cpp \
176         JavaScriptCore/profiler/Profiler.h \
177         JavaScriptCore/interpreter/CachedCall.h \
178         JavaScriptCore/interpreter/CallFrame.cpp \
179         JavaScriptCore/interpreter/CallFrame.h \
180         JavaScriptCore/interpreter/CallFrameClosure.h \
181         JavaScriptCore/runtime/ExceptionHelpers.cpp \
182         JavaScriptCore/runtime/ExceptionHelpers.h \
183         JavaScriptCore/runtime/Executable.cpp \
184         JavaScriptCore/runtime/Executable.h \
185         JavaScriptCore/runtime/InitializeThreading.cpp \
186         JavaScriptCore/runtime/InitializeThreading.h \
187         JavaScriptCore/runtime/JSActivation.cpp \
188         JavaScriptCore/runtime/JSActivation.h \
189         JavaScriptCore/runtime/JSByteArray.cpp \
190         JavaScriptCore/runtime/JSByteArray.h \
191         JavaScriptCore/runtime/JSGlobalData.cpp \
192         JavaScriptCore/runtime/JSGlobalData.h \
193         JavaScriptCore/runtime/JSNotAnObject.cpp \
194         JavaScriptCore/runtime/JSNotAnObject.h \
195         JavaScriptCore/runtime/JSONObject.cpp \
196         JavaScriptCore/runtime/JSONObject.h \
197         JavaScriptCore/runtime/JSPropertyNameIterator.cpp \
198         JavaScriptCore/runtime/JSPropertyNameIterator.h \
199         JavaScriptCore/runtime/JSStringBuilder.h \
200         JavaScriptCore/runtime/JSZombie.h \
201         JavaScriptCore/runtime/LiteralParser.cpp \
202         JavaScriptCore/runtime/LiteralParser.h \
203         JavaScriptCore/runtime/MarkStack.cpp \
204         JavaScriptCore/runtime/MarkStack.h \
205         JavaScriptCore/runtime/NumericStrings.h \
206         JavaScriptCore/runtime/PropertyDescriptor.h \
207         JavaScriptCore/runtime/PropertyDescriptor.cpp \
208         JavaScriptCore/runtime/SmallStrings.cpp \
209         JavaScriptCore/runtime/SmallStrings.h \
210         JavaScriptCore/runtime/StringBuilder.h \
211         JavaScriptCore/runtime/Structure.cpp \
212         JavaScriptCore/runtime/Structure.h \
213         JavaScriptCore/runtime/StructureChain.cpp \
214         JavaScriptCore/runtime/StructureChain.h \
215         JavaScriptCore/runtime/StructureTransitionTable.h \
216         JavaScriptCore/runtime/Terminator.h \
217         JavaScriptCore/runtime/TimeoutChecker.cpp \
218         JavaScriptCore/runtime/TimeoutChecker.h \
219         JavaScriptCore/runtime/JSTypeInfo.h \
220         JavaScriptCore/runtime/WeakGCMap.h \
221         JavaScriptCore/runtime/WeakGCPtr.h \
222         JavaScriptCore/wtf/ASCIICType.h \
223         JavaScriptCore/wtf/AVLTree.h \
224         JavaScriptCore/wtf/AlwaysInline.h \
225         JavaScriptCore/wtf/Assertions.cpp \
226         JavaScriptCore/wtf/Assertions.h \
227         JavaScriptCore/wtf/ByteArray.cpp \
228         JavaScriptCore/wtf/ByteArray.h \
229         JavaScriptCore/wtf/CrossThreadRefCounted.h \
230         JavaScriptCore/wtf/CurrentTime.cpp \
231         JavaScriptCore/wtf/CurrentTime.h \
232         JavaScriptCore/wtf/DateMath.cpp \
233         JavaScriptCore/wtf/DateMath.h \
234         JavaScriptCore/wtf/Deque.h \
235         JavaScriptCore/wtf/DisallowCType.h \
236         JavaScriptCore/wtf/Forward.h \
237         JavaScriptCore/wtf/GetPtr.h \
238         JavaScriptCore/wtf/HashCountedSet.h \
239         JavaScriptCore/wtf/HashFunctions.h \
240         JavaScriptCore/wtf/HashIterators.h \
241         JavaScriptCore/wtf/HashMap.h \
242         JavaScriptCore/wtf/HashSet.h \
243         JavaScriptCore/wtf/HashTable.cpp \
244         JavaScriptCore/wtf/HashTable.h \
245         JavaScriptCore/wtf/HashTraits.h \
246         JavaScriptCore/wtf/ListHashSet.h \
247         JavaScriptCore/wtf/ListRefPtr.h \
248         JavaScriptCore/wtf/Locker.h \
249         JavaScriptCore/wtf/MainThread.cpp \
250         JavaScriptCore/wtf/MainThread.h \
251         JavaScriptCore/wtf/MathExtras.h \
252         JavaScriptCore/wtf/MessageQueue.h \
253         JavaScriptCore/wtf/Noncopyable.h \
254         JavaScriptCore/wtf/NotFound.h \
255         JavaScriptCore/wtf/OwnArrayPtr.h \
256         JavaScriptCore/wtf/OwnFastMallocPtr.h \
257         JavaScriptCore/wtf/OwnPtr.h \
258         JavaScriptCore/wtf/OwnPtrCommon.h \
259         JavaScriptCore/wtf/PassOwnPtr.h \
260         JavaScriptCore/wtf/PassRefPtr.h \
261         JavaScriptCore/wtf/Platform.h \
262         JavaScriptCore/wtf/PossiblyNull.h \
263         JavaScriptCore/wtf/RandomNumber.cpp \
264         JavaScriptCore/wtf/RandomNumber.h \
265         JavaScriptCore/wtf/RandomNumberSeed.h \
266         JavaScriptCore/wtf/RefCounted.h \
267         JavaScriptCore/wtf/RefCountedLeakCounter.cpp \
268         JavaScriptCore/wtf/RefCountedLeakCounter.h \
269         JavaScriptCore/wtf/RefPtr.h \
270         JavaScriptCore/wtf/RefPtrHashMap.h \
271         JavaScriptCore/wtf/RetainPtr.h \
272         JavaScriptCore/wtf/SegmentedVector.h \
273         JavaScriptCore/wtf/StaticConstructors.h \
274         JavaScriptCore/wtf/StdLibExtras.h \
275         JavaScriptCore/wtf/StringExtras.h \
276         JavaScriptCore/wtf/StringHashFunctions.h \
277         JavaScriptCore/wtf/TCPackedCache.h \
278         JavaScriptCore/wtf/TCPageMap.h \
279         JavaScriptCore/wtf/TCSpinLock.h \
280         JavaScriptCore/wtf/ThreadIdentifierDataPthreads.cpp \
281         JavaScriptCore/wtf/ThreadIdentifierDataPthreads.h \
282         JavaScriptCore/wtf/Threading.cpp \
283         JavaScriptCore/wtf/Threading.h \
284         JavaScriptCore/wtf/ThreadingPthreads.cpp \
285         JavaScriptCore/wtf/ThreadSpecific.h \
286         JavaScriptCore/wtf/TypeTraits.cpp \
287         JavaScriptCore/wtf/TypeTraits.h \
288         JavaScriptCore/wtf/UnusedParam.h \
289         JavaScriptCore/wtf/ValueCheck.h \
290         JavaScriptCore/wtf/Vector.h \
291         JavaScriptCore/wtf/VectorTraits.h \
292         JavaScriptCore/wtf/WTFThreadData.cpp \
293         JavaScriptCore/wtf/WTFThreadData.h \
294         JavaScriptCore/wtf/gobject/GOwnPtr.cpp \
295         JavaScriptCore/wtf/gobject/GOwnPtr.h \
296         JavaScriptCore/wtf/gobject/GRefPtr.cpp \
297         JavaScriptCore/wtf/gobject/GRefPtr.h \
298         JavaScriptCore/wtf/gtk/MainThreadGtk.cpp \
299         JavaScriptCore/wtf/gtk/ThreadingGtk.cpp \
300         JavaScriptCore/wtf/text/AtomicString.cpp \
301         JavaScriptCore/wtf/text/AtomicString.h \
302         JavaScriptCore/wtf/text/AtomicStringImpl.h \
303         JavaScriptCore/wtf/text/CString.cpp \
304         JavaScriptCore/wtf/text/CString.h \
305         JavaScriptCore/wtf/text/StringHash.h \
306         JavaScriptCore/wtf/text/StringImpl.cpp \
307         JavaScriptCore/wtf/text/StringImpl.h \
308         JavaScriptCore/wtf/text/WTFString.cpp \
309         JavaScriptCore/wtf/text/WTFString.h \
310         JavaScriptCore/wtf/unicode/Collator.h \
311         JavaScriptCore/wtf/unicode/CollatorDefault.cpp \
312         JavaScriptCore/wtf/unicode/UTF8.cpp \
313         JavaScriptCore/wtf/unicode/UTF8.h \
314         JavaScriptCore/wtf/unicode/Unicode.h
315
316 if TARGET_WIN32
317 javascriptcore_sources += \
318         JavaScriptCore/wtf/ThreadSpecificWin.cpp \
319         JavaScriptCore/jit/ExecutableAllocatorWin.cpp \
320         JavaScriptCore/runtime/MarkStackWin.cpp
321 else
322 javascriptcore_sources += \
323         JavaScriptCore/jit/ExecutableAllocatorPosix.cpp \
324         JavaScriptCore/runtime/MarkStackPosix.cpp
325 endif
326
327 # ----
328 # icu unicode backend
329 # ----
330 if USE_ICU_UNICODE
331 javascriptcore_sources += \
332         JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp \
333         JavaScriptCore/wtf/unicode/icu/UnicodeIcu.h
334 endif # USE_ICU_UNICODE
335
336 # ----
337 # glib unicode backend
338 # ----
339 if USE_GLIB_UNICODE
340 javascriptcore_sources += \
341         JavaScriptCore/wtf/unicode/glib/UnicodeGLib.h \
342         JavaScriptCore/wtf/unicode/glib/UnicodeGLib.cpp \
343         JavaScriptCore/wtf/unicode/glib/UnicodeMacrosFromICU.h
344 endif
345
346 javascriptcore_sources += \
347         JavaScriptCore/wtf/VMTags.h \
348         JavaScriptCore/yarr/RegexCompiler.cpp \
349         JavaScriptCore/yarr/RegexCompiler.h \
350         JavaScriptCore/yarr/RegexInterpreter.cpp \
351         JavaScriptCore/yarr/RegexInterpreter.h \
352         JavaScriptCore/yarr/RegexJIT.cpp \
353         JavaScriptCore/yarr/RegexJIT.h \
354         JavaScriptCore/yarr/RegexParser.h \
355         JavaScriptCore/yarr/RegexPattern.h
356
357 javascriptcore_sources += \
358         JavaScriptCore/interpreter/RegisterFile.cpp \
359         JavaScriptCore/interpreter/RegisterFile.h \
360         JavaScriptCore/bytecompiler/BytecodeGenerator.cpp \
361         JavaScriptCore/bytecompiler/BytecodeGenerator.h \
362         JavaScriptCore/bytecompiler/NodesCodegen.cpp \
363         JavaScriptCore/bytecompiler/LabelScope.h \
364         JavaScriptCore/debugger/Debugger.cpp \
365         JavaScriptCore/debugger/Debugger.h \
366         JavaScriptCore/parser/Lexer.cpp \
367         JavaScriptCore/parser/Lexer.h \
368         JavaScriptCore/parser/NodeConstructors.h \
369         JavaScriptCore/parser/NodeInfo.h \
370         JavaScriptCore/parser/Nodes.cpp \
371         JavaScriptCore/parser/Nodes.h \
372         JavaScriptCore/parser/Parser.cpp \
373         JavaScriptCore/parser/Parser.h \
374         JavaScriptCore/parser/ParserArena.cpp \
375         JavaScriptCore/parser/ParserArena.h \
376         JavaScriptCore/parser/ResultType.h \
377         JavaScriptCore/parser/SourceCode.h \
378         JavaScriptCore/parser/SourceProvider.h \
379         JavaScriptCore/runtime/ArgList.cpp \
380         JavaScriptCore/runtime/ArgList.h \
381         JavaScriptCore/runtime/Arguments.cpp \
382         JavaScriptCore/runtime/Arguments.h \
383         JavaScriptCore/runtime/ArrayConstructor.cpp \
384         JavaScriptCore/runtime/ArrayConstructor.h \
385         JavaScriptCore/runtime/ArrayPrototype.cpp \
386         JavaScriptCore/runtime/ArrayPrototype.h \
387         JavaScriptCore/runtime/BatchedTransitionOptimizer.h \
388         JavaScriptCore/runtime/BooleanConstructor.cpp \
389         JavaScriptCore/runtime/BooleanConstructor.h \
390         JavaScriptCore/runtime/BooleanObject.cpp \
391         JavaScriptCore/runtime/BooleanObject.h \
392         JavaScriptCore/runtime/BooleanPrototype.cpp \
393         JavaScriptCore/runtime/BooleanPrototype.h \
394         JavaScriptCore/runtime/CallData.cpp \
395         JavaScriptCore/runtime/CallData.h \
396         JavaScriptCore/runtime/ClassInfo.h \
397         JavaScriptCore/runtime/Collector.cpp \
398         JavaScriptCore/runtime/Collector.h \
399         JavaScriptCore/runtime/CollectorHeapIterator.h \
400         JavaScriptCore/runtime/CommonIdentifiers.cpp \
401         JavaScriptCore/runtime/CommonIdentifiers.h \
402         JavaScriptCore/runtime/Completion.h \
403         JavaScriptCore/runtime/ConstructData.cpp \
404         JavaScriptCore/runtime/ConstructData.h \
405         JavaScriptCore/runtime/DateConstructor.cpp \
406         JavaScriptCore/runtime/DateConstructor.h \
407         JavaScriptCore/runtime/DateConversion.cpp \
408         JavaScriptCore/runtime/DateConversion.h \
409         JavaScriptCore/runtime/DateInstance.cpp \
410         JavaScriptCore/runtime/DateInstance.h \
411         JavaScriptCore/runtime/DateInstanceCache.h \
412         JavaScriptCore/runtime/DatePrototype.cpp \
413         JavaScriptCore/runtime/DatePrototype.h \
414         JavaScriptCore/runtime/Error.cpp \
415         JavaScriptCore/runtime/Error.h \
416         JavaScriptCore/runtime/ErrorConstructor.cpp \
417         JavaScriptCore/runtime/ErrorConstructor.h \
418         JavaScriptCore/runtime/ErrorInstance.cpp \
419         JavaScriptCore/runtime/ErrorInstance.h \
420         JavaScriptCore/runtime/ErrorPrototype.cpp \
421         JavaScriptCore/runtime/ErrorPrototype.h \
422         JavaScriptCore/runtime/FunctionConstructor.cpp \
423         JavaScriptCore/runtime/FunctionConstructor.h \
424         JavaScriptCore/runtime/FunctionPrototype.cpp \
425         JavaScriptCore/runtime/FunctionPrototype.h \
426         JavaScriptCore/runtime/GetterSetter.cpp \
427         JavaScriptCore/runtime/GetterSetter.h \
428         JavaScriptCore/runtime/GlobalEvalFunction.cpp \
429         JavaScriptCore/runtime/GlobalEvalFunction.h \
430         JavaScriptCore/runtime/Identifier.cpp \
431         JavaScriptCore/runtime/Identifier.h \
432         JavaScriptCore/runtime/InternalFunction.cpp \
433         JavaScriptCore/runtime/InternalFunction.h \
434         JavaScriptCore/runtime/Completion.cpp \
435         JavaScriptCore/runtime/JSArray.cpp \
436         JavaScriptCore/runtime/JSArray.h \
437         JavaScriptCore/runtime/JSAPIValueWrapper.cpp \
438         JavaScriptCore/runtime/JSAPIValueWrapper.h \
439         JavaScriptCore/runtime/JSCell.cpp \
440         JavaScriptCore/runtime/JSCell.h \
441         JavaScriptCore/runtime/JSFunction.cpp \
442         JavaScriptCore/runtime/JSFunction.h \
443         JavaScriptCore/runtime/JSGlobalObject.cpp \
444         JavaScriptCore/runtime/JSGlobalObject.h \
445         JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp \
446         JavaScriptCore/runtime/JSGlobalObjectFunctions.h \
447         JavaScriptCore/runtime/JSImmediate.cpp \
448         JavaScriptCore/runtime/JSImmediate.h \
449         JavaScriptCore/runtime/JSLock.cpp \
450         JavaScriptCore/runtime/JSLock.h \
451         JavaScriptCore/runtime/JSNumberCell.cpp \
452         JavaScriptCore/runtime/JSNumberCell.h \
453         JavaScriptCore/runtime/JSObject.cpp \
454         JavaScriptCore/runtime/JSObject.h \
455         JavaScriptCore/runtime/JSStaticScopeObject.cpp \
456         JavaScriptCore/runtime/JSStaticScopeObject.h \
457         JavaScriptCore/runtime/JSString.cpp \
458         JavaScriptCore/runtime/JSString.h \
459         JavaScriptCore/runtime/JSType.h \
460         JavaScriptCore/runtime/JSValue.cpp \
461         JavaScriptCore/runtime/JSValue.h \
462         JavaScriptCore/runtime/JSVariableObject.cpp \
463         JavaScriptCore/runtime/JSVariableObject.h \
464         JavaScriptCore/runtime/JSWrapperObject.cpp \
465         JavaScriptCore/runtime/JSWrapperObject.h \
466         JavaScriptCore/runtime/Lookup.cpp \
467         JavaScriptCore/runtime/Lookup.h \
468         JavaScriptCore/runtime/MathObject.cpp \
469         JavaScriptCore/runtime/MathObject.h \
470         JavaScriptCore/runtime/NativeErrorConstructor.cpp \
471         JavaScriptCore/runtime/NativeErrorConstructor.h \
472         JavaScriptCore/runtime/NativeErrorPrototype.cpp \
473         JavaScriptCore/runtime/NativeErrorPrototype.h \
474         JavaScriptCore/runtime/NativeFunctionWrapper.h \
475         JavaScriptCore/runtime/NumberConstructor.cpp \
476         JavaScriptCore/runtime/NumberConstructor.h \
477         JavaScriptCore/runtime/NumberObject.cpp \
478         JavaScriptCore/runtime/NumberObject.h \
479         JavaScriptCore/runtime/NumberPrototype.cpp \
480         JavaScriptCore/runtime/NumberPrototype.h \
481         JavaScriptCore/runtime/ObjectConstructor.cpp \
482         JavaScriptCore/runtime/ObjectConstructor.h \
483         JavaScriptCore/runtime/ObjectPrototype.cpp \
484         JavaScriptCore/runtime/ObjectPrototype.h \
485         JavaScriptCore/runtime/Operations.cpp \
486         JavaScriptCore/runtime/Operations.h \
487         JavaScriptCore/runtime/PropertyMapHashTable.h \
488         JavaScriptCore/runtime/PropertyNameArray.cpp \
489         JavaScriptCore/runtime/PropertyNameArray.h \
490         JavaScriptCore/runtime/PropertySlot.cpp \
491         JavaScriptCore/runtime/PropertySlot.h \
492         JavaScriptCore/runtime/Protect.h \
493         JavaScriptCore/runtime/PrototypeFunction.cpp \
494         JavaScriptCore/runtime/PrototypeFunction.h \
495         JavaScriptCore/runtime/PutPropertySlot.h \
496         JavaScriptCore/runtime/RegExp.cpp \
497         JavaScriptCore/runtime/RegExp.h \
498         JavaScriptCore/runtime/RegExpConstructor.cpp \
499         JavaScriptCore/runtime/RegExpConstructor.h \
500         JavaScriptCore/runtime/RegExpMatchesArray.h \
501         JavaScriptCore/runtime/RegExpObject.cpp \
502         JavaScriptCore/runtime/RegExpObject.h \
503         JavaScriptCore/runtime/RegExpPrototype.cpp \
504         JavaScriptCore/runtime/RegExpPrototype.h \
505         JavaScriptCore/runtime/RopeImpl.cpp \
506         JavaScriptCore/runtime/RopeImpl.h \
507         JavaScriptCore/runtime/ScopeChain.cpp \
508         JavaScriptCore/runtime/ScopeChain.h \
509         JavaScriptCore/runtime/ScopeChainMark.h \
510         JavaScriptCore/runtime/StringConstructor.cpp \
511         JavaScriptCore/runtime/StringConstructor.h \
512         JavaScriptCore/runtime/StringObject.cpp \
513         JavaScriptCore/runtime/StringObject.h \
514         JavaScriptCore/runtime/StringObjectThatMasqueradesAsUndefined.h \
515         JavaScriptCore/runtime/StringPrototype.cpp \
516         JavaScriptCore/runtime/StringPrototype.h \
517         JavaScriptCore/runtime/SymbolTable.h \
518         JavaScriptCore/runtime/Tracing.h \
519         JavaScriptCore/runtime/UString.cpp \
520         JavaScriptCore/runtime/UString.h \
521         JavaScriptCore/runtime/UStringImpl.cpp \
522         JavaScriptCore/runtime/UStringImpl.h \
523         JavaScriptCore/runtime/WeakRandom.h \
524         JavaScriptCore/wtf/FastAllocBase.h \
525         JavaScriptCore/wtf/FastMalloc.cpp \
526         JavaScriptCore/wtf/FastMalloc.h \
527         JavaScriptCore/wtf/MallocZoneSupport.h \
528         JavaScriptCore/wtf/TCSystemAlloc.cpp \
529         JavaScriptCore/wtf/TCSystemAlloc.h \
530         JavaScriptCore/wtf/dtoa.cpp \
531         JavaScriptCore/wtf/dtoa.h
532
533 javascriptcore_built_sources += \
534         DerivedSources/Grammar.cpp \
535         DerivedSources/Grammar.h
536
537 DerivedSources/Grammar.h: DerivedSources/Grammar.cpp;
538
539 DerivedSources/Grammar.cpp: $(srcdir)/JavaScriptCore/parser/Grammar.y
540         $(BISON) -d -p jscyy $(srcdir)/JavaScriptCore/parser/Grammar.y -o $@ > bison_out.txt 2>&1
541         $(PERL) -p -e 'END { if ($$conflict) { unlink "Grammar.cpp"; die; } } $$conflict ||= /conflict/' < bison_out.txt
542         cat $(GENSOURCES)/Grammar.hpp > $(GENSOURCES)/Grammar.h
543         rm -f $(GENSOURCES)/Grammar.hpp bison_out.txt
544
545 DerivedSources/Lexer.lut.h: $(CREATE_HASH_TABLE) $(srcdir)/JavaScriptCore/parser/Keywords.table
546         $(PERL) $^ > $@
547
548 JavaScriptCore/%.lut.h: $(CREATE_HASH_TABLE) $(srcdir)/JavaScriptCore/%.cpp
549         $(PERL) $^ -i > $@
550
551 JavaScriptCore/RegExpJitTables.h: $(srcdir)/JavaScriptCore/create_regex_tables
552         $(PYTHON) $(srcdir)/JavaScriptCore/create_regex_tables > $@
553
554 JavaScriptCore/pcre/chartables.c: $(srcdir)/JavaScriptCore/pcre/dftables
555         $(PERL) $^ $@
556
557 bin_PROGRAMS += \
558         Programs/jsc
559
560 noinst_PROGRAMS += \
561         Programs/minidom
562
563 # minidom
564 Programs_minidom_SOURCES = \
565         JavaScriptCore/API/tests/JSNode.c \
566         JavaScriptCore/API/tests/JSNode.h \
567         JavaScriptCore/API/tests/JSNodeList.c \
568         JavaScriptCore/API/tests/JSNodeList.h \
569         JavaScriptCore/API/tests/Node.c \
570         JavaScriptCore/API/tests/Node.h \
571         JavaScriptCore/API/tests/NodeList.c \
572         JavaScriptCore/API/tests/NodeList.h \
573         JavaScriptCore/API/tests/minidom.c
574
575 Programs_minidom_CPPFLAGS = \
576         $(global_cppflags) \
577         $(javascriptcore_cppflags)
578
579 Programs_minidom_CFLAGS = \
580         -ansi \
581         -fno-strict-aliasing \
582         $(global_cflags) \
583         $(GLOBALDEPS_CFLAGS)
584
585 Programs_minidom_LDADD = \
586          libJavaScriptCore.la \
587          -lm \
588          -lstdc++
589
590 Programs_minidom_LDFLAGS = \
591         -no-install \
592         -no-fast-install
593
594 # jsc
595 Programs_jsc_SOURCES = \
596         JavaScriptCore/jsc.cpp
597
598 Programs_jsc_CPPFLAGS = \
599         $(global_cppflags) \
600         $(javascriptcore_cppflags)
601
602 Programs_jsc_CXXFLAGS = \
603         -fno-strict-aliasing \
604         $(global_cxxflags) \
605         $(global_cflags) \
606         $(GLOBALDEPS_CFLAGS) \
607         $(UNICODE_CFLAGS)
608
609 Programs_jsc_LDADD = \
610         libJavaScriptCore.la
611
612 javascriptcore_dist += \
613         $(CREATE_HASH_TABLE) \
614         $(CREATE_REGEXP_TABLES) \
615         JavaScriptCore/AUTHORS \
616         JavaScriptCore/COPYING.LIB \
617         JavaScriptCore/ChangeLog \
618         JavaScriptCore/THANKS \
619         JavaScriptCore/icu/LICENSE \
620         JavaScriptCore/icu/README \
621         JavaScriptCore/pcre/COPYING \
622         JavaScriptCore/pcre/AUTHORS \
623         JavaScriptCore/pcre/dftables \
624         JavaScriptCore/pcre/ucptable.cpp \
625         JavaScriptCore/parser/Grammar.y \
626         JavaScriptCore/parser/Keywords.table
627
628 # Clean rules for JavaScriptCore
629 CLEANFILES += \
630         JavaScriptCore/runtime/ArrayPrototype.lut.h \
631         JavaScriptCore/runtime/DatePrototype.lut.h \
632         JavaScriptCore/runtime/JSONObject.lut.h \
633         JavaScriptCore/runtime/MathObject.lut.h \
634         JavaScriptCore/runtime/NumberConstructor.lut.h \
635         JavaScriptCore/runtime/RegExpConstructor.lut.h \
636         JavaScriptCore/runtime/RegExpObject.lut.h \
637         JavaScriptCore/runtime/StringPrototype.lut.h \
638         JavaScriptCore/pcre/chartables.c \
639         Programs/jsc \
640         Programs/minidom