# # ***** BEGIN LICENSE BLOCK ***** # Version: MPL 1.1/GPL 2.0/LGPL 2.1 # # The contents of this file are subject to the Mozilla Public License Version # 1.1 (the "License"); you may not use this file except in compliance with # the License. You may obtain a copy of the License at # http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS IS" basis, # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License # for the specific language governing rights and limitations under the # License. # # The Original Code is mozilla.org code. # # The Initial Developer of the Original Code is # Netscape Communications Corporation. # Portions created by the Initial Developer are Copyright (C) 1998 # the Initial Developer. All Rights Reserved. # # Contributor(s): # # Alternatively, the contents of this file may be used under the terms of # either of the GNU General Public License Version 2 or later (the "GPL"), # or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), # in which case the provisions of the GPL or the LGPL are applicable instead # of those above. If you wish to allow use of your version of this file only # under the terms of either the GPL or the LGPL, and not to allow others to # use your version of this file under the terms of the MPL, indicate your # decision by deleting the provisions above and replace them with the notice # and other provisions required by the GPL or the LGPL. If you do not delete # the provisions above, a recipient may use your version of this file under # the terms of any one of the MPL, the GPL or the LGPL. # # ***** END LICENSE BLOCK ***** DEPTH = ../.. topsrcdir = @top_srcdir@ srcdir = @srcdir@ VPATH = @srcdir@ include $(DEPTH)/config/autoconf.mk # Solaris and Tru64 UNIX sh blows ifeq ($(OS_ARCH),SunOS) SHELL := ksh endif ifeq ($(OS_ARCH),OSF1) SHELL := ksh endif BUILD_DATE = gbdate.h BUILD_DATE_TS = gbdate.tstamp MODULE = layout LIBRARY_NAME = gklayout EXPORT_LIBRARY = 1 IS_COMPONENT = 1 MODULE_NAME = nsLayoutModule GRE_MODULE = 1 LIBXUL_LIBRARY = 1 PACKAGE_FILE = layout.pkg PACKAGE_VARS += MOZ_XUL ifndef MOZ_ENABLE_LIBXUL EXTRA_DSO_LIBS = gkgfx endif ifdef MOZ_PERF_METRICS EXTRA_DSO_LIBS += mozutil_s endif ifdef MOZ_ENABLE_CAIRO_GFX EXTRA_DSO_LIBS += thebes endif REQUIRES = xpcom \ string \ content \ gfx \ widget \ view \ locale \ necko \ dom \ storage \ editor \ webshell \ docshell \ htmlparser \ js \ xpconnect \ uriloader \ caps \ rdf \ xuldoc \ imglib2 \ pref \ unicharutil \ xul \ xultmpl \ lwbrk \ plugin \ commandhandler \ webbrwsr \ uconv \ txtsvc \ inspector \ $(NULL) CPPSRCS = \ nsLayoutModule.cpp \ nsContentHTTPStartup.cpp \ nsContentDLF.cpp \ nsLayoutStatics.cpp \ $(NULL) EXPORTS = \ nsLayoutCID.h \ nsContentDLF.h \ nsLayoutStatics.h \ $(NULL) SHARED_LIBRARY_LIBS = \ ../base/$(LIB_PREFIX)gkbase_s.$(LIB_SUFFIX) \ ../generic/$(LIB_PREFIX)gkgeneric_s.$(LIB_SUFFIX) \ ../forms/$(LIB_PREFIX)gkforms_s.$(LIB_SUFFIX) \ ../style/$(LIB_PREFIX)gkstyle_s.$(LIB_SUFFIX) \ ../tables/$(LIB_PREFIX)gktable_s.$(LIB_SUFFIX) \ ../xul/base/src/$(LIB_PREFIX)gkxulbase_s.$(LIB_SUFFIX) \ $(DEPTH)/content/base/src/$(LIB_PREFIX)gkconbase_s.$(LIB_SUFFIX) \ $(DEPTH)/content/canvas/src/$(LIB_PREFIX)gkconcvs_s.$(LIB_SUFFIX) \ $(DEPTH)/content/events/src/$(LIB_PREFIX)gkconevents_s.$(LIB_SUFFIX) \ $(DEPTH)/content/html/content/src/$(LIB_PREFIX)gkconhtmlcon_s.$(LIB_SUFFIX) \ $(DEPTH)/content/html/document/src/$(LIB_PREFIX)gkconhtmldoc_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xml/content/src/$(LIB_PREFIX)gkconxmlcon_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xml/document/src/$(LIB_PREFIX)gkconxmldoc_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xslt/src/base/$(LIB_PREFIX)txbase_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xslt/src/xml/$(LIB_PREFIX)txxml_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xslt/src/xpath/$(LIB_PREFIX)txxpath_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xslt/src/xslt/$(LIB_PREFIX)txxslt_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xbl/src/$(LIB_PREFIX)gkconxbl_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xul/document/src/$(LIB_PREFIX)gkconxuldoc_s.$(LIB_SUFFIX) \ $(DEPTH)/view/src/$(LIB_PREFIX)gkview_s.$(LIB_SUFFIX) \ $(DEPTH)/dom/src/base/$(LIB_PREFIX)jsdombase_s.$(LIB_SUFFIX) \ $(DEPTH)/dom/src/events/$(LIB_PREFIX)jsdomevents_s.$(LIB_SUFFIX) \ $(DEPTH)/dom/src/jsurl/$(LIB_PREFIX)jsurl_s.$(LIB_SUFFIX) \ $(DEPTH)/dom/src/storage/$(LIB_PREFIX)jsdomstorage_s.$(LIB_SUFFIX) \ $(NULL) ifdef NS_PRINTING SHARED_LIBRARY_LIBS += \ ../printing/$(LIB_PREFIX)gkprinting_s.$(LIB_SUFFIX) \ $(NULL) endif ifdef MOZ_XUL SHARED_LIBRARY_LIBS += \ ../xul/base/src/tree/src/$(LIB_PREFIX)gkxultree_s.$(LIB_SUFFIX) \ ../xul/base/src/grid/$(LIB_PREFIX)gkxulgrid_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xul/content/src/$(LIB_PREFIX)gkconxulcon_s.$(LIB_SUFFIX) \ $(DEPTH)/content/xul/templates/src/$(LIB_PREFIX)gkconxultmpl_s.$(LIB_SUFFIX) \ $(NULL) endif ifndef MOZ_NO_INSPECTOR_APIS SHARED_LIBRARY_LIBS += ../inspector/src/$(LIB_PREFIX)inspector_s.$(LIB_SUFFIX) else DEFINES += -DMOZ_NO_INSPECTOR_APIS endif ifdef MOZ_MATHML SHARED_LIBRARY_LIBS += \ ../mathml/content/src/$(LIB_PREFIX)gkmathmlcon_s.$(LIB_SUFFIX) \ ../mathml/base/src/$(LIB_PREFIX)gkmathmlbase_s.$(LIB_SUFFIX) \ $(NULL) endif ifdef MOZ_XTF SHARED_LIBRARY_LIBS += \ $(DEPTH)/content/xtf/src/$(LIB_PREFIX)gkcontentxtf_s.$(LIB_SUFFIX) \ ../xtf/src/$(LIB_PREFIX)gkxtfbase_s.$(LIB_SUFFIX) \ $(NULL) endif ifdef MOZ_SVG SHARED_LIBRARY_LIBS += \ ../svg/base/src/$(LIB_PREFIX)gksvgbase_s.$(LIB_SUFFIX) \ $(DEPTH)/content/svg/document/src/$(LIB_PREFIX)gkconsvgdoc_s.$(LIB_SUFFIX) \ $(DEPTH)/content/svg/content/src/$(LIB_PREFIX)gkcontentsvg_s.$(LIB_SUFFIX) \ ../svg/renderer/src/cairo/$(LIB_PREFIX)gksvgrenderercairo_s.$(LIB_SUFFIX) \ $(NULL) endif EXTRA_DSO_LDOPTS = \ $(LIBS_DIR) \ $(EXTRA_DSO_LIBS) \ $(MOZ_UNICHARUTIL_LIBS) \ $(MOZ_COMPONENT_LIBS) \ $(MOZ_JS_LIBS) \ $(NULL) ifdef MOZ_ENABLE_XLIB EXTRA_DSO_LDOPTS += \ -lxlibrgb \ $(NULL) endif ifdef NS_TRACE_MALLOC EXTRA_DSO_LIBS += tracemalloc endif ifdef MOZ_ENABLE_GTK2 EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS) \ $(NULL) ifdef MOZ_ENABLE_CAIRO_GFX EXTRA_DSO_LDOPTS += -lXrender \ $(NULL) endif endif ifndef MOZ_ENABLE_CAIRO_GFX ifdef MOZ_SVG EXTRA_DSO_LDOPTS += $(MOZ_CAIRO_LIBS) \ $(NULL) endif endif ifdef MOZ_ENABLE_CAIRO_GFX ifndef MOZ_TREE_CAIRO # In an in-tree cairo build, cairo is part of libthebes # otherwise, we need to link it separately. EXTRA_DSO_LDOPTS += $(MOZ_CAIRO_LIBS) endif endif ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT))) EXTRA_DSO_LDOPTS += \ $(TK_LIBS) \ $(NULL) endif # Add explicit X11 dependency when building against X11 toolkits ifneq (,$(filter gtk gtk2 qt xlib,$(MOZ_WIDGET_TOOLKIT))) EXTRA_DSO_LDOPTS += $(XLDFLAGS) $(XLIBS) endif include $(topsrcdir)/config/rules.mk LOCAL_INCLUDES += -I$(srcdir)/../base \ -I$(srcdir)/../generic \ -I$(srcdir)/../forms \ -I$(srcdir)/../style \ -I$(srcdir)/../xul/content/src \ -I$(srcdir)/../xul/base/src \ -I$(srcdir)/../inspector/src \ -I$(topsrcdir)/content/base/src \ -I$(topsrcdir)/content/html/content/src \ -I$(topsrcdir)/content/html/document/src \ -I$(topsrcdir)/content/html/style/src \ -I$(topsrcdir)/content/xslt/src/base \ -I$(topsrcdir)/content/xslt/src/xml \ -I$(topsrcdir)/content/xslt/src/xpath \ -I$(topsrcdir)/content/xslt/src/xslt \ -I$(topsrcdir)/content/xul/content/src \ -I$(topsrcdir)/content/xul/templates/src \ -I$(topsrcdir)/content/events/src \ -I$(topsrcdir)/content/xbl/src \ -I$(topsrcdir)/view/src \ -I$(topsrcdir)/dom/src/base \ -I$(topsrcdir)/dom/src/jsurl \ -I$(topsrcdir)/dom/src/storage \ -I. \ $(NULL) ifdef MOZ_MATHML LOCAL_INCLUDES += -I$(srcdir)/../mathml/content/src endif ifdef MOZ_SVG LOCAL_INCLUDES += -I$(topsrcdir)/content/svg/content/src endif DEFINES += -D_IMPL_NS_LAYOUT GARBAGE += $(BUILD_DATE) $(BUILD_DATE_TS) ifeq ($(OS_ARCH),IRIX) ifeq ($(GNU_CXX),1) LDFLAGS += -Wl,-LD_LAYOUT:lgot_buffer=50 endif endif export:: $(BUILD_DATE) $(BUILD_DATE_TS): FORCE @for f in $(SHARED_LIBRARY_LIBS); do \ if [ $$f -nt $@ ]; then \ touch $@; \ fi; \ done $(BUILD_DATE):: gbdate.pl $(BUILD_DATE_TS) $(RM) $@ $(PERL) $(srcdir)/gbdate.pl > $@