X-Git-Url: https://git.saurik.com/apple/javascriptcore.git/blobdiff_plain/b37bf2e156556c589aea3e1f58a377f2b1189665..1981f5dfe8d77d97469d20652f712a09400c48ed:/GNUmakefile.am diff --git a/GNUmakefile.am b/GNUmakefile.am index b1f0274..e845287 100644 --- a/GNUmakefile.am +++ b/GNUmakefile.am @@ -1,171 +1,163 @@ -# tell automake to create gensources/ for us -nodist_EXTRA_libJavaScriptCore_la_SOURCES = \ - DerivedSources/dummy.cxx +include $(srcdir)/Source/JavaScriptCore/GNUmakefile.list.am + +lib_LTLIBRARIES += \ + libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la + +# We are going to make everything public for now. When +# https://bugs.webkit.org/show_bug.cgi?id=27551 is fixed we'll able to +# simply rely on the usual symbol visibility flags. +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LDFLAGS = \ + -version-info @LIBWEBKITGTK_VERSION@ \ + $(no_undefined) + +nodist_EXTRA_libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(javascriptcore_built_nosources) + +nodist_libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(javascriptcore_built_sources) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_ladir = $(libwebkitgtkincludedir)/JavaScriptCore +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_HEADERS = $(javascriptcore_h_api) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_SOURCES = \ + $(javascriptcore_sources) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_LIBADD = \ + -lpthread \ + libWTF.la \ + $(UNICODE_LIBS) \ + $(GLIB_LIBS) \ + $(WINMM_LIBS) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CXXFLAGS = \ + $(global_cxxflags) \ + $(libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CFLAGS = \ + -fstrict-aliasing \ + -O3 \ + $(javascriptcore_cflags) + +libjavascriptcoregtk_@WEBKITGTK_API_MAJOR_VERSION@_@WEBKITGTK_API_MINOR_VERSION@_la_CPPFLAGS = \ + $(global_cppflags) \ + $(javascriptcore_cppflags) + +javascriptcore_cppflags += \ + $(JSC_CPPFLAGS) \ + -I$(srcdir)/Source \ + -I$(srcdir)/Source/JavaScriptCore \ + -I$(srcdir)/Source/JavaScriptCore/API \ + -I$(srcdir)/Source/JavaScriptCore/assembler \ + -I$(srcdir)/Source/JavaScriptCore/bytecode \ + -I$(srcdir)/Source/JavaScriptCore/bytecompiler \ + -I$(srcdir)/Source/JavaScriptCore/dfg \ + -I$(srcdir)/Source/JavaScriptCore/heap \ + -I$(srcdir)/Source/JavaScriptCore/debugger \ + -I$(srcdir)/Source/JavaScriptCore/ForwardingHeaders \ + -I$(srcdir)/Source/JavaScriptCore/interpreter \ + -I$(srcdir)/Source/JavaScriptCore/jit \ + -I$(srcdir)/Source/JavaScriptCore/jit \ + -I$(srcdir)/Source/JavaScriptCore/llint \ + -I$(srcdir)/Source/JavaScriptCore/parser \ + -I$(srcdir)/Source/JavaScriptCore/profiler \ + -I$(srcdir)/Source/JavaScriptCore/runtime \ + -I$(srcdir)/Source/JavaScriptCore/tools \ + -I$(srcdir)/Source/JavaScriptCore/yarr \ + -I$(top_builddir)/DerivedSources/JavaScriptCore javascriptcore_cppflags += \ - -I$(srcdir)/JavaScriptCore/ForwardingHeaders \ - -I$(srcdir)/JavaScriptCore/bindings \ - -I$(srcdir)/JavaScriptCore/bindings/c \ - -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/array_object.lut.h \ - JavaScriptCore/kjs/date_object.lut.h \ - JavaScriptCore/kjs/math_object.lut.h \ - JavaScriptCore/kjs/number_object.lut.h \ - JavaScriptCore/kjs/regexp_object.lut.h \ - JavaScriptCore/kjs/string_object.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/bindings/NP_jsobject.cpp \ - JavaScriptCore/bindings/c/c_class.cpp \ - JavaScriptCore/bindings/c/c_instance.cpp \ - JavaScriptCore/bindings/c/c_runtime.cpp \ - JavaScriptCore/bindings/c/c_utility.cpp \ - JavaScriptCore/bindings/npruntime.cpp \ - JavaScriptCore/bindings/runtime.cpp \ - JavaScriptCore/bindings/runtime_array.cpp \ - JavaScriptCore/bindings/runtime_method.cpp \ - JavaScriptCore/bindings/runtime_object.cpp \ - JavaScriptCore/bindings/runtime_root.cpp \ - JavaScriptCore/kjs/JSGlobalObject.cpp \ - JavaScriptCore/kjs/JSVariableObject.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/wtf/Assertions.cpp \ - JavaScriptCore/wtf/HashTable.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/ExecState.cpp \ - JavaScriptCore/kjs/JSImmediate.cpp \ - JavaScriptCore/kjs/JSLock.cpp \ - JavaScriptCore/kjs/JSWrapperObject.cpp \ - JavaScriptCore/kjs/Parser.cpp \ - JavaScriptCore/kjs/PropertyNameArray.cpp \ - JavaScriptCore/kjs/array_instance.cpp \ - JavaScriptCore/kjs/array_object.cpp \ - JavaScriptCore/kjs/bool_object.cpp \ - JavaScriptCore/kjs/collector.cpp \ - JavaScriptCore/kjs/date_object.cpp \ - JavaScriptCore/kjs/debugger.cpp \ - JavaScriptCore/kjs/dtoa.cpp \ - JavaScriptCore/kjs/error_object.cpp \ - JavaScriptCore/kjs/function.cpp \ - JavaScriptCore/kjs/function_object.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/math_object.cpp \ - JavaScriptCore/kjs/nodes.cpp \ - JavaScriptCore/kjs/nodes2string.cpp \ - JavaScriptCore/kjs/number_object.cpp \ - JavaScriptCore/kjs/object.cpp \ - JavaScriptCore/kjs/object_object.cpp \ - JavaScriptCore/kjs/operations.cpp \ - JavaScriptCore/kjs/property_map.cpp \ - JavaScriptCore/kjs/property_slot.cpp \ - JavaScriptCore/kjs/regexp.cpp \ - JavaScriptCore/kjs/regexp_object.cpp \ - JavaScriptCore/kjs/scope_chain.cpp \ - JavaScriptCore/kjs/string_object.cpp \ - JavaScriptCore/kjs/ustring.cpp \ - JavaScriptCore/kjs/value.cpp \ - JavaScriptCore/wtf/FastMalloc.cpp \ - JavaScriptCore/wtf/TCSystemAlloc.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) $^ > $@ - -%_object.lut.h: $(CREATE_HASH_TABLE) %_object.cpp - $^ -i > $@ - -JavaScriptCore/pcre/chartables.c: $(srcdir)/JavaScriptCore/pcre/dftables - $^ $@ + -I$(srcdir)/Source/WTF + +javascriptcore_cflags += \ + $(global_cflags) \ + $(GLIB_CFLAGS) \ + $(UNICODE_CFLAGS) + +pkgconfig_DATA += Source/JavaScriptCore/javascriptcoregtk-@WEBKITGTK_API_VERSION@.pc + +$(shell mkdir -p DerivedSources/JavaScriptCore) + +DerivedSources/JavaScriptCore/Lexer.lut.h: $(srcdir)/Source/JavaScriptCore/create_hash_table $(srcdir)/Source/JavaScriptCore/parser/Keywords.table + $(AM_V_GEN)$(PERL) $^ > $@ + +DerivedSources/JavaScriptCore/%.lut.h: $(srcdir)/Source/JavaScriptCore/create_hash_table $(srcdir)/Source/JavaScriptCore/runtime/%.cpp + $(AM_V_GEN)$(PERL) $^ -i > $@ + +DerivedSources/JavaScriptCore/RegExpJitTables.h: $(srcdir)/Source/JavaScriptCore/create_regex_tables + $(AM_V_GEN)$(PYTHON) $^ > $@ + +DerivedSources/JavaScriptCore/KeywordLookup.h: $(srcdir)/Source/JavaScriptCore/KeywordLookupGenerator.py $(srcdir)/Source/JavaScriptCore/parser/Keywords.table + $(AM_V_GEN)$(PYTHON) $^ > $@ + +jsc: $(javascriptcore_built_nosources) Programs/jsc$(EXEEXT) + +bin_PROGRAMS += \ + Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT) noinst_PROGRAMS += \ - Programs/minidom \ - Programs/testkjs - -# 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) -Programs_minidom_CXXFLAGS = $(global_cxxflags) $(global_cflags) -Programs_minidom_LDADD = libJavaScriptCore.la -Programs_minidom_LDFLAGS = -rpath $(CURDIR)/.libs - -# testkjs -Programs_testkjs_SOURCES = JavaScriptCore/kjs/testkjs.cpp -Programs_testkjs_CPPFLAGS = $(global_cppflags) -Programs_testkjs_CXXFLAGS = $(global_cxxflags) $(global_cflags) -Programs_testkjs_LDADD = libJavaScriptCore.la -Programs_testkjs_LDFLAGS = -rpath $(CURDIR)/.libs - -# Clean rules for JavaScriptCore + Programs/jsc \ + Programs/minidom + +Programs_minidom_CPPFLAGS = \ + $(global_cppflags) \ + $(javascriptcore_cppflags) + +Programs_minidom_CFLAGS = \ + -ansi \ + -fno-strict-aliasing \ + $(global_cflags) \ + $(GLOBALDEPS_CFLAGS) + +Programs_minidom_LDADD = \ + libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \ + $(WINMM_LIBS) \ + -lm \ + -lpthread \ + -lstdc++ + +Programs_minidom_LDFLAGS = \ + -no-install \ + -no-fast-install + +# jsc +Programs/jsc$(EXEEXT): Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT) + $(AM_V_GEN)cp -f Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@$(EXEEXT) Programs/jsc$(EXEEXT) +Programs_jsc_LDADD = +Programs_jsc_SOURCES = + +Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_CPPFLAGS = \ + $(global_cppflags) \ + $(javascriptcore_cppflags) + +Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_CXXFLAGS = \ + -fno-strict-aliasing \ + $(global_cxxflags) \ + $(global_cflags) \ + $(GLOBALDEPS_CFLAGS) \ + $(UNICODE_CFLAGS) + +Programs_jsc_@WEBKITGTK_API_MAJOR_VERSION@_LDADD = \ + -lpthread \ + libjavascriptcoregtk-@WEBKITGTK_API_MAJOR_VERSION@.@WEBKITGTK_API_MINOR_VERSION@.la \ + $(WINMM_LIBS) + +EXTRA_DIST += \ + Source/JavaScriptCore/AUTHORS \ + Source/JavaScriptCore/ChangeLog \ + Source/JavaScriptCore/COPYING.LIB \ + Source/JavaScriptCore/create_hash_table \ + Source/JavaScriptCore/create_regex_tables \ + Source/JavaScriptCore/icu/LICENSE \ + Source/JavaScriptCore/icu/README \ + Source/JavaScriptCore/KeywordLookupGenerator.py \ + Source/JavaScriptCore/parser/Keywords.table \ + Source/JavaScriptCore/THANKS + CLEANFILES += \ - JavaScriptCore/kjs/array_object.lut.h \ - JavaScriptCore/kjs/date_object.lut.h \ - JavaScriptCore/kjs/math_object.lut.h \ - JavaScriptCore/kjs/number_object.lut.h \ - JavaScriptCore/kjs/regexp_object.lut.h \ - JavaScriptCore/kjs/string_object.lut.h \ - JavaScriptCore/pcre/chartables.c + $(javascriptcore_built_nosources) \ + Programs/jsc \ + Programs/jsc-@WEBKITGTK_API_MAJOR_VERSION@ \ + Programs/minidom + +DISTCLEANFILES += \ + $(top_builddir)/Source/JavaScriptCore/javascriptcoregtk-@WEBKITGTK_API_VERSION@.pc