-# Copyright (C) 2006, 2007, 2008, 2009 Apple Inc. All rights reserved.
+# Copyright (C) 2006, 2007, 2008, 2009, 2011, 2013 Apple Inc. All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
VPATH = \
$(JavaScriptCore) \
$(JavaScriptCore)/parser \
- $(JavaScriptCore)/pcre \
$(JavaScriptCore)/docs \
$(JavaScriptCore)/runtime \
$(JavaScriptCore)/interpreter \
.PHONY : all
all : \
+ ArrayConstructor.lut.h \
ArrayPrototype.lut.h \
- chartables.c \
+ BooleanPrototype.lut.h \
+ DateConstructor.lut.h \
DatePrototype.lut.h \
- Grammar.cpp \
+ ErrorPrototype.lut.h \
JSONObject.lut.h \
+ JSGlobalObject.lut.h \
+ KeywordLookup.h \
Lexer.lut.h \
MathObject.lut.h \
+ NamePrototype.lut.h \
NumberConstructor.lut.h \
+ NumberPrototype.lut.h \
+ ObjectConstructor.lut.h \
RegExpConstructor.lut.h \
+ RegExpPrototype.lut.h \
+ RegExpJitTables.h \
RegExpObject.lut.h \
- StringPrototype.lut.h \
+ StringConstructor.lut.h \
docs/bytecode.html \
+ udis86_itab.h \
#
# lookup tables for classes
Lexer.lut.h: create_hash_table Keywords.table
$^ > $@
-# JavaScript language grammar
+docs/bytecode.html: make-bytecode-docs.pl Interpreter.cpp
+ perl $^ $@
-Grammar.cpp: Grammar.y
- bison -d -p jscyy $< -o $@ > bison_out.txt 2>&1
- perl -p -e 'END { if ($$conflict) { unlink "Grammar.cpp"; die; } } $$conflict ||= /conflict/' < bison_out.txt
- touch Grammar.cpp.h
- touch Grammar.hpp
- cat Grammar.cpp.h Grammar.hpp > Grammar.h
- rm -f Grammar.cpp.h Grammar.hpp bison_out.txt
+# character tables for Yarr
-# character tables for PCRE
+RegExpJitTables.h: create_regex_tables
+ python $^ > $@
-chartables.c : dftables
- $^ $@
+KeywordLookup.h: KeywordLookupGenerator.py Keywords.table
+ python $^ > $@
-docs/bytecode.html: make-bytecode-docs.pl Interpreter.cpp
- perl $^ $@
+# udis86 instruction tables
+
+udis86_itab.h: $(JavaScriptCore)/disassembler/udis86/itab.py $(JavaScriptCore)/disassembler/udis86/optable.xml
+ (PYTHONPATH=$(JavaScriptCore)/disassembler/udis86 python $(JavaScriptCore)/disassembler/udis86/itab.py $(JavaScriptCore)/disassembler/udis86/optable.xml || exit 1)