diff options
Diffstat (limited to 'packages/webkit/files/GNUmakefile.am')
-rw-r--r-- | packages/webkit/files/GNUmakefile.am | 314 |
1 files changed, 314 insertions, 0 deletions
diff --git a/packages/webkit/files/GNUmakefile.am b/packages/webkit/files/GNUmakefile.am new file mode 100644 index 0000000000..f3ec252ee8 --- /dev/null +++ b/packages/webkit/files/GNUmakefile.am @@ -0,0 +1,314 @@ +# Top-level Makefile rule for automake +# +# Variable conventions: +# +# _h_api = API headers that will be installed and included in the distribution +# _cppflags = flags that will be passed to the C/CXX Preprocessor +# _sources = sources that will be compiled and included in the distribution +# _headers = header files that will be part of the distribution +# _built_sources = files that will be autogenerated by the build system and +# will be part of the _SOURCES primary +# _built_nosources = files that are autogenerated but are not part of the +# _SOURCES primary +# _cleanfiles = files that will be removed by the clean target +# +# Sources, headers, flags, etc... should be added to the respective variables +# with the above suffix, e.g, webcore-specific sources should go to +# webcore_sources, gtk port-specific flags should go to webkitgtk_cppflags, +# etc... The only exceptions are the global variables. See Global Variables below. +# +# Global Variables +# +# global_cppflags = CPPFLAGS that apply to JSC, WebCore, and to any +# specific port +# global_cflags = CFLAGS and CXXFLAGS that apply to JSC, WebCore, and to +# any specific port + +srcdir = @srcdir@ +VPATH = @srcdir@ + +# Directory for autogenerated sources +GENSOURCES := $(top_builddir)/DerivedSources + +# Script for creating hash tables +CREATE_HASH_TABLE = $(srcdir)/JavaScriptCore/kjs/create_hash_table + +# Libraries and support components +noinst_LTLIBRARIES := + +noinst_HEADERS := + +noinst_PROGRAMS := + +lib_LIBRARIES := + +IDL_BINDINGS := + +# Files that will be distributed +EXTRA_DIST := + +# +# Global flags to CPP +global_cppflags := + +global_cppflags += \ + -I $(srcdir)/JavaScriptCore \ + -I $(srcdir)/JavaScriptCore/ForwardingHeaders \ + -I $(srcdir)/JavaScriptCore/wtf \ + -I $(srcdir)/JavaScriptCore/kjs \ + -I $(top_builddir)/DerivedSources + +# Default compiler flags +global_cflags := \ + -Wall -W -Wcast-align -Wchar-subscripts -Wreturn-type \ + -Wformat -Wformat-security -Wno-format-y2k -Wundef \ + -Wmissing-format-attribute -Wpointer-arith -Wwrite-strings \ + -Wno-unused-parameter -fno-exceptions -fno-strict-aliasing + +# Libraries +lib_LTLIBRARIES = libJavaScriptCore.la libWebKitGtk.la + +# +# JavaScriptCore +javascriptcore_h_api := +javascriptcore_cppflags:= +javascriptcore_sources := +javascriptcore_built_sources := +javascriptcore_built_nosources := + +# The variables above are already included below so no need to touch +# these variables unless you really have to +libJavaScriptCore_ladir = $(prefix)/include/WebKit/JavaScriptCore +libJavaScriptCore_la_HEADERS := $(javascriptcore_h_api) + +libJavaScriptCore_la_SOURCES := \ + $(javascriptcore_built_sources) \ + $(javascriptcore_sources) + +libJavaScriptCore_la_LDFLAGS := -lpthread + +libJavaScriptCore_la_CXXFLAGS := $(global_cflags) + +libJavaScriptCore_la_CFLAGS := $(global_cflags) + +libJavaScriptCore_la_CPPFLAGS := $(global_cppflags) $(javascriptcore_cppflags) + +# +# WebCore +webcore_cppflags := +webcore_sources := +webcore_headers := +webcore_built_sources := +webcore_built_nosources := + +# WebKitGtk +webkitgtk_h_api := +webkitgtk_headers := +webkitgtk_sources := +webkitgtk_cppflags := +webkitgtk_ldflags := +webkitgtk_built_sources := +webkitgtk_built_nosources := +webkitgtk_cleanfiles := + +# No need to touch the following variables unless you have to. If you need to change the values +# for the following variables, use the "webkitgtk_" variables above +libWebKitGtk_ladir := $(prefix)/include/WebKit + +libWebKitGtk_la_HEADERS := $(webkitgtk_h_api) + +libWebKitGtk_la_SOURCES := \ + $(webcore_built_sources) \ + $(webcore_headers) \ + $(webcore_sources) \ + $(webkitgtk_built_sources) \ + $(webkitgtk_headers) \ + $(webkitgtk_sources) + +libWebKitGtk_la_CXXFLAGS := \ + -fno-rtti \ + $(global_cflags) \ + $(DEPENDENCIES_CFLAGS) \ + $(SQLITE3_CFLAGS) \ + $(GSTREAMER_CFLAGS) \ + $(LIBXSLT_CFLAGS) \ + $(COVERAGE_CFLAGS) + +libWebKitGtk_la_CFLAGS := \ + $(global_cflags) \ + $(DEPENDENCIES_CFLAGS) \ + $(SQLITE3_CFLAGS) \ + $(GSTREAMER_CFLAGS) \ + $(LIBXSLT_CFLAGS) \ + $(COVERAGE_CFLAGS) + +libWebKitGtk_la_CPPFLAGS := \ + $(global_cppflags) \ + $(webcore_cppflags) \ + $(webkitgtk_cppflags) + +libWebKitGtk_la_LIBADD := @LTLIBOBJS@ libJavaScriptCore.la + +libWebKitGtk_la_LDFLAGS := \ + $(webkitgtk_ldflags) \ + $(DEPENDENCIES_LIBS) \ + $(ICU_LIBS) \ + $(SQLITE3_LIBS) \ + $(GSTREAMER_LIBS) \ + $(LIBXSLT_LIBS) \ + $(COVERAGE_LDFLAGS) \ + -lpthread \ + -ljpeg \ + -version-info @LIBWEBKITGTK_VERSION@ + +# +# Extra checks and flags +global_cppflags += \ + -DBUILDING_GTK__=1 \ + -DUSE_SYSTEM_MALLOC \ + -DWTF_CHANGES + +if TARGET_X11 +global_cppflags += -DXP_UNIX +endif + +if !ENABLE_DEBUG +global_cppflags += -DNDEBUG +else +webkitgtk_cppflags += \ + -DG_DISABLE_DEPRECATED \ + -DGDK_PIXBUF_DISABLE_DEPRECATED \ + -DGDK_DISABLE_DEPRECATED \ + -DGTK_DISABLE_DEPRECATED \ + -DPANGO_DISABLE_DEPRECATED \ + -DGDK_MULTIHEAD_SAFE \ + -DGTK_MULTIHEAD_SAFE +endif + +if !ENABLE_DATABASE +global_cppflags += -DENABLE_DATABASE=0 +endif + +if !ENABLE_ICONDATABASE +global_cppflags += -DENABLE_ICONDATABASE=0 +endif + +if ENABLE_COVERAGE +global_cppflags += \ + -DGCC_GENERATE_TEST_COVERAGE_FILES \ + -DGCC_INSTRUMENT_PROGRAM_FLOW_ARCS +endif + +if ENABLE_VIDEO +webkitgtk_ldflags += -lgstinterfaces-0.10 -lgstvideo-0.10 +endif + +# +# WEBKIT GTK+ +webkitgtk_cppflags += \ +-I $(top_builddir)/WebKit/gtk/WebView \ +-DBUILDING_CAIRO__=1 \ +-DBUILD_WEBKIT + +webkitgtk_h_api += \ + WebKit/gtk/WebView/webkit.h \ + WebKit/gtk/WebView/webkitdefines.h \ + WebKit/gtk/WebView/webkitnetworkrequest.h \ + WebKit/gtk/WebView/webkitwebframe.h \ + WebKit/gtk/WebView/webkitwebview.h + +webkitgtk_built_sources += \ + WebKit/gtk/WebView/webkit-marshal.h \ + WebKit/gtk/WebView/webkit-marshal.cpp + +webkitgtk_headers += \ + WebKit/gtk/WebView/webkitprivate.h \ + WebKit/gtk/WebView/webkitsettings.h \ + WebKit/gtk/WebCoreSupport/ChromeClientGtk.h \ + WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.h \ + WebKit/gtk/WebCoreSupport/DragClientGtk.h \ + WebKit/gtk/WebCoreSupport/EditorClientGtk.h \ + WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.h \ + WebKit/gtk/WebCoreSupport/InspectorClientGtk.h \ + WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.h + +webkitgtk_sources += \ + WebKit/gtk/WebView/webkitnetworkrequest.cpp \ + WebKit/gtk/WebView/webkitprivate.cpp \ + WebKit/gtk/WebView/webkitsettings.cpp \ + WebKit/gtk/WebView/webkitwebframe.cpp \ + WebKit/gtk/WebView/webkitwebview.cpp \ + WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/ContextMenuClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/DragClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/EditorClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/FrameLoaderClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/InspectorClientGtk.cpp \ + WebKit/gtk/WebCoreSupport/PasteboardHelperGtk.cpp + +webkitgtk_cleanfiles += \ + $(top_builddir)/Programs/GtkLauncher \ + $(top_builddir)/WebKit/gtk/WebKitGtk.pc + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = WebKit/gtk/WebKitGtk.pc + +WEBKIT_MARSHAL = $(CURDIR)/WebKit/gtk/WebView/webkit-marshal +WEBKIT_MARSHAL_LIST = $(srcdir)/WebKit/gtk/WebView/webkit-marshal.list + +stamp_files := \ + stamp-webkit-marshal.cpp \ + stamp-webkit-marshal.h + +WebKit/gtk/WebView/webkit-marshal.cpp: stamp-webkit-marshal.cpp + @true + +WebKit/gtk/WebView/webkit-marshal.h: stamp-webkit-marshal.h + @true + +stamp-webkit-marshal.cpp: $(WEBKIT_MARSHAL_LIST) + echo "extern \"C\" {" > $(WEBKIT_MARSHAL).cpp && \ + $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --body >> $(WEBKIT_MARSHAL).cpp && echo '}' >> $(WEBKIT_MARSHAL).cpp && \ + echo timestamp > $(@F) + +stamp-webkit-marshal.h: $(WEBKIT_MARSHAL_LIST) + $(GLIB_GENMARSHAL) --prefix=webkit_marshal $(WEBKIT_MARSHAL_LIST) --header > $(WEBKIT_MARSHAL).h && \ + echo timestamp > $(@F) + +# END WEBKIT GTK+ + +# Files that will be cleaned +MAINTAINERCLEANFILES := $(stamp_files) $(BUILT_SOURCES) +DISTCLEANFILES := $(stamp_files) $(BUILT_SOURCES) +CLEANFILES := $(stamp_files) $(BUILT_SOURCES) + +# Include module makefiles +include JavaScriptCore/GNUmakefile.am +include WebCore/GNUmakefile.am +include WebKitTools/GNUmakefile.am + + +# Autogenerated sources +BUILT_SOURCES := \ + $(javascriptcore_built_sources) \ + $(javascriptcore_built_nosources) \ + $(webcore_built_sources) \ + $(webcore_built_nosources) \ + $(webkitgtk_built_sources) \ + $(webkitgtk_built_nosources) + +# Project-wide clean rules +CLEANFILES += \ + $(webkitgtk_cleanfiles) \ + $(top_builddir)/Programs/DumpRenderTree \ + $(top_builddir)/Programs/testkjs \ + $(top_builddir)/Programs/dftables \ + $(GENSOURCES) + +MAINTAINERCLEANFILES += \ + $(srcdir)/aconfig.h.in \ + configure \ + config.* \ + GNUmakefile.in \ + INSTALL \ + README |