mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-05 08:35:26 +00:00
307 lines
8.4 KiB
Makefile
307 lines
8.4 KiB
Makefile
#
|
|
# ***** 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
|
|
|
|
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
|
|
|
|
ifdef MOZ_ENABLE_GTK2
|
|
EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS) \
|
|
$(NULL)
|
|
ifdef MOZ_ENABLE_CAIRO_GFX
|
|
EXTRA_DSO_LDOPTS += -lXrender \
|
|
$(NULL)
|
|
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 > $@
|