blob: 7520be772178e892f768cdfc9e47d879a8ad51f1 [file] [log] [blame]
javascriptcore_cppflags += \
-I$(srcdir)/JavaScriptCore/ForwardingHeaders \
-I$(srcdir)/JavaScriptCore/VM \
-I$(srcdir)/JavaScriptCore/profiler \
-I$(srcdir)/JavaScriptCore/wtf/unicode \
-I$(top_builddir)/JavaScriptCore/pcre \
-I$(top_builddir)/JavaScriptCore/kjs
javascriptcore_h_api += \
JavaScriptCore/API/JavaScript.h \
JavaScriptCore/API/JavaScriptCore.h \
JavaScriptCore/API/JSBase.h \
JavaScriptCore/API/JSContextRef.h \
JavaScriptCore/API/JSObjectRef.h \
JavaScriptCore/API/JSStringRefBSTR.h \
JavaScriptCore/API/JSStringRefCF.h \
JavaScriptCore/API/JSStringRef.h \
JavaScriptCore/API/JSValueRef.h
javascriptcore_built_nosources += \
JavaScriptCore/kjs/ArrayPrototype.lut.h \
JavaScriptCore/kjs/DatePrototype.lut.h \
JavaScriptCore/kjs/MathObject.lut.h \
JavaScriptCore/kjs/NumberConstructor.lut.h \
JavaScriptCore/kjs/RegExpConstructor.lut.h \
JavaScriptCore/kjs/RegExpObject.lut.h \
JavaScriptCore/kjs/StringPrototype.lut.h \
JavaScriptCore/pcre/chartables.c \
DerivedSources/lexer.lut.h
javascriptcore_sources += \
JavaScriptCore/API/JSBase.cpp \
JavaScriptCore/API/JSCallbackConstructor.cpp \
JavaScriptCore/API/JSCallbackFunction.cpp \
JavaScriptCore/API/JSCallbackObject.cpp \
JavaScriptCore/API/JSClassRef.cpp \
JavaScriptCore/API/JSContextRef.cpp \
JavaScriptCore/API/JSObjectRef.cpp \
JavaScriptCore/API/JSStringRef.cpp \
JavaScriptCore/API/JSValueRef.cpp \
JavaScriptCore/kjs/DebuggerCallFrame.cpp \
JavaScriptCore/kjs/ExecState.cpp \
JavaScriptCore/kjs/InitializeThreading.cpp \
JavaScriptCore/kjs/JSGlobalData.cpp \
JavaScriptCore/kjs/JSActivation.cpp \
JavaScriptCore/kjs/JSNotAnObject.cpp \
JavaScriptCore/VM/CodeBlock.cpp \
JavaScriptCore/VM/ExceptionHelpers.cpp \
JavaScriptCore/VM/Instruction.cpp \
JavaScriptCore/VM/JSPropertyNameIterator.cpp \
JavaScriptCore/VM/LabelID.cpp \
JavaScriptCore/VM/Machine.cpp \
JavaScriptCore/VM/Opcode.cpp \
JavaScriptCore/VM/Register.cpp \
JavaScriptCore/VM/RegisterID.cpp \
JavaScriptCore/pcre/pcre_compile.cpp \
JavaScriptCore/pcre/pcre_exec.cpp \
JavaScriptCore/pcre/pcre_tables.cpp \
JavaScriptCore/pcre/pcre_ucp_searchfuncs.cpp \
JavaScriptCore/pcre/pcre_xclass.cpp \
JavaScriptCore/profiler/ProfileNode.cpp \
JavaScriptCore/profiler/Profile.cpp \
JavaScriptCore/profiler/Profiler.cpp \
JavaScriptCore/wtf/Assertions.cpp \
JavaScriptCore/wtf/HashTable.cpp \
JavaScriptCore/wtf/MainThread.cpp \
JavaScriptCore/wtf/ThreadingGtk.cpp \
JavaScriptCore/wtf/gtk/MainThreadGtk.cpp \
JavaScriptCore/wtf/unicode/CollatorDefault.cpp \
JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp \
JavaScriptCore/wtf/unicode/UTF8.cpp
# Debug build
if ENABLE_DEBUG
javascriptcore_built_sources += \
DerivedSources/grammar.h \
DerivedSources/grammar.cpp
javascriptcore_sources += \
JavaScriptCore/kjs/CommonIdentifiers.cpp \
JavaScriptCore/kjs/DateMath.cpp \
JavaScriptCore/kjs/JSImmediate.cpp \
JavaScriptCore/kjs/JSLock.cpp \
JavaScriptCore/kjs/JSWrapperObject.cpp \
JavaScriptCore/kjs/Parser.cpp \
JavaScriptCore/kjs/PropertyNameArray.cpp \
JavaScriptCore/kjs/JSArray.cpp \
JavaScriptCore/kjs/ArrayConstructor.cpp \
JavaScriptCore/kjs/ArrayPrototype.cpp \
JavaScriptCore/kjs/BooleanConstructor.cpp \
JavaScriptCore/kjs/BooleanObject.cpp \
JavaScriptCore/kjs/BooleanPrototype.cpp \
JavaScriptCore/kjs/collector.cpp \
JavaScriptCore/kjs/date_object.cpp \
JavaScriptCore/kjs/DateConstructor.cpp \
JavaScriptCore/kjs/DatePrototype.cpp \
JavaScriptCore/kjs/debugger.cpp \
JavaScriptCore/kjs/dtoa.cpp \
JavaScriptCore/kjs/error_object.cpp \
JavaScriptCore/kjs/JSFunction.cpp \
JavaScriptCore/kjs/JSVariableObject.cpp \
JavaScriptCore/kjs/FunctionConstructor.cpp \
JavaScriptCore/kjs/FunctionPrototype.cpp \
JavaScriptCore/kjs/identifier.cpp \
JavaScriptCore/kjs/internal.cpp \
JavaScriptCore/kjs/interpreter.cpp \
JavaScriptCore/kjs/lexer.cpp \
JavaScriptCore/kjs/list.cpp \
JavaScriptCore/kjs/lookup.cpp \
JavaScriptCore/kjs/MathObject.cpp \
JavaScriptCore/kjs/nodes.cpp \
JavaScriptCore/kjs/nodes2string.cpp \
JavaScriptCore/kjs/NumberConstructor.cpp \
JavaScriptCore/kjs/NumberObject.cpp \
JavaScriptCore/kjs/NumberPrototype.cpp \
JavaScriptCore/kjs/JSObject.cpp \
JavaScriptCore/kjs/JSGlobalObject.cpp \
JavaScriptCore/kjs/ObjectConstructor.cpp \
JavaScriptCore/kjs/ObjectPrototype.cpp \
JavaScriptCore/kjs/operations.cpp \
JavaScriptCore/kjs/PropertyMap.cpp \
JavaScriptCore/kjs/PropertySlot.cpp \
JavaScriptCore/kjs/regexp.cpp \
JavaScriptCore/kjs/RegExpConstructor.cpp \
JavaScriptCore/kjs/RegExpObject.cpp \
JavaScriptCore/kjs/RegExpPrototype.cpp \
JavaScriptCore/kjs/ScopeChain.cpp \
JavaScriptCore/kjs/StringConstructor.cpp \
JavaScriptCore/kjs/StringObject.cpp \
JavaScriptCore/kjs/StringPrototype.cpp \
JavaScriptCore/kjs/ustring.cpp \
JavaScriptCore/kjs/JSValue.cpp \
JavaScriptCore/wtf/FastMalloc.cpp \
JavaScriptCore/wtf/TCSystemAlloc.cpp \
JavaScriptCore/VM/CodeGenerator.cpp \
JavaScriptCore/VM/RegisterFile.cpp
else
javascriptcore_built_nosources += \
DerivedSources/grammar.h \
DerivedSources/grammar.cpp
javascriptcore_sources += \
JavaScriptCore/kjs/AllInOneFile.cpp
endif # END ENABLE_DEBUG
DerivedSources/grammar.h: DerivedSources/grammar.cpp;
DerivedSources/grammar.cpp: $(srcdir)/JavaScriptCore/kjs/grammar.y
$(BISON) -d -p kjsyy $(srcdir)/JavaScriptCore/kjs/grammar.y -o $@ > bison_out.txt 2>&1
$(PERL) -p -e 'END { if ($$conflict) { unlink "grammar.cpp"; die; } } $$conflict ||= /conflict/' < bison_out.txt
cat $(GENSOURCES)/grammar.hpp > $(GENSOURCES)/grammar.h
rm -f $(GENSOURCES)/grammar.hpp bison_out.txt
DerivedSources/lexer.lut.h: $(CREATE_HASH_TABLE) $(srcdir)/JavaScriptCore/kjs/keywords.table
$(PERL) $^ > $@
%.lut.h: $(CREATE_HASH_TABLE) %.cpp
$^ -i > $@
JavaScriptCore/pcre/chartables.c: $(srcdir)/JavaScriptCore/pcre/dftables
$^ $@
bin_PROGRAMS += \
Programs/jsc
noinst_PROGRAMS += \
Programs/minidom
# minidom
Programs_minidom_SOURCES = \
JavaScriptCore/API/JSNode.c \
JavaScriptCore/API/JSNodeList.c \
JavaScriptCore/API/Node.c \
JavaScriptCore/API/NodeList.c \
JavaScriptCore/API/minidom.c
Programs_minidom_CPPFLAGS = \
$(global_cppflags) \
$(javascriptcore_cppflags)
Programs_minidom_CFLAGS = \
-fno-strict-aliasing \
-O2 \
$(global_cflags) \
$(GLOBALDEPS_CFLAGS)
Programs_minidom_CXXFLAGS = \
-fno-strict-aliasing \
-O2 \
$(global_cxxflags) \
$(global_cflags) \
$(GLOBALDEPS_CFLAGS)
Programs_minidom_LDADD = \
libJavaScriptCore.la \
-lstdc++
# jsc
Programs_jsc_SOURCES = JavaScriptCore/kjs/Shell.cpp
Programs_jsc_CPPFLAGS = \
$(global_cppflags) \
$(javascriptcore_cppflags)
Programs_jsc_CXXFLAGS = \
-fno-strict-aliasing \
-O2 \
$(global_cxxflags) \
$(global_cflags) \
$(GLOBALDEPS_CFLAGS) \
$(UNICODE_CFLAGS)
Programs_jsc_LDADD = \
libJavaScriptCore.la
# Clean rules for JavaScriptCore
CLEANFILES += \
JavaScriptCore/kjs/ArrayPrototype.lut.h \
JavaScriptCore/kjs/DatePrototype.lut.h \
JavaScriptCore/kjs/MathObject.lut.h \
JavaScriptCore/kjs/NumberConstructor.lut.h \
JavaScriptCore/kjs/RegExpConstructor.lut.h \
JavaScriptCore/kjs/RegExpObject.lut.h \
JavaScriptCore/kjs/StringPrototype.lut.h \
JavaScriptCore/pcre/chartables.c \
Programs/jsc \
Programs/minidom