397059ae29f9d71eb75def73f6e729f3bcc399fc
[WebKit-https.git] / JavaScriptCore / kjs / Makefile.am
1 NULL =
2
3 noinst_LIBRARIES = libkjs.o
4 libkjs_o_ldflags = -Wl,-r -nostdlib
5 libkjs_o_AR = $(OBJCXXLD) $(AM_OBJCXXFLAGS) $(OBJCXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) $(libkjs_o_ldflags) -o
6
7 INCLUDES = $(KWQ_INCLUDES)
8
9 libkjs_o_SOURCES = \
10         array_object.cpp \
11         array_object.h \
12         bool_object.cpp \
13         bool_object.h \
14         collector.cpp \
15         collector.h \
16         date_object.cpp \
17         date_object.h \
18         debugger.cpp \
19         debugger.h \
20         error_object.cpp \
21         error_object.h \
22         function.cpp \
23         function.h \
24         function_object.cpp \
25         function_object.h \
26         grammar.cpp \
27         grammar.h \
28         internal.cpp \
29         internal.h \
30         interpreter.cpp \
31         interpreter.h \
32         lexer.cpp \
33         lexer.h \
34         lexer.lut.h \
35         lookup.cpp \
36         lookup.h \
37         math_object.cpp \
38         math_object.h \
39         math_object.lut.h \
40         nodes.cpp \
41         nodes.h \
42         number_object.cpp \
43         number_object.h \
44         object.cpp \
45         object.h \
46         object_object.cpp \
47         object_object.h \
48         operations.cpp \
49         operations.h \
50         property_map.cpp \
51         property_map.h \
52         regexp.cpp \
53         regexp.h \
54         regexp_object.cpp \
55         regexp_object.h \
56         string_object.cpp \
57         string_object.h \
58         types.cpp \
59         types.h \
60         ustring.cpp \
61         ustring.h \
62         value.cpp \
63         value.h \
64         $(NULL)
65
66 noinst_PROGRAMS = testkjs
67
68 testkjs_SOURCES = testkjs.cpp
69
70 testkjs_LDADD = $(srcdir)/libkjs.o
71
72 YACCFLAGS = -d --output-file=grammar.cpp --file-prefix=grammar --name-prefix=kjsyy
73
74 GRAMMAR_FILES = grammar.h grammar.cpp.h grammar.cpp
75
76 $(GRAMMAR_FILES): grammar-stamp
77
78 grammar-stamp: grammar.y
79         $(YACC) $(YACCFLAGS) $<
80         ln -sf grammar.cpp.h grammar.h
81         touch ./grammar-stamp
82
83 LUT_FILES = math_object.lut.h lexer.lut.h array_object.lut.h date_object.lut.h string_object.lut.h number_object.lut.h
84
85 lexer.lut.h: keywords.table
86         ./create_hash_table keywords.table -i > lexer.lut.h;
87
88 array_object.lut.h: array_object.cpp
89         ./create_hash_table array_object.cpp -i > array_object.lut.h
90
91 math_object.lut.h: math_object.cpp
92         ./create_hash_table math_object.cpp -i > math_object.lut.h
93
94 date_object.lut.h: date_object.cpp
95         ./create_hash_table date_object.cpp -i > date_object.lut.h
96
97 number_object.lut.h: number_object.cpp
98         ./create_hash_table number_object.cpp -i > number_object.lut.h
99
100 string_object.lut.h: string_object.cpp
101         ./create_hash_table string_object.cpp -i > string_object.lut.h
102
103 BUILT_SOURCES = $(GRAMMAR_FILES) $(LUT_FILES) grammar-stamp
104
105 CLEANFILES = $(BUILT_SOURCES)
106