gecko/gfx/thebes/Makefile.in

259 lines
5.4 KiB
Makefile

# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
DEPTH = @DEPTH@
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
LIBRARY_NAME = thebes
MSVC_ENABLE_PGO := 1
LIBXUL_LIBRARY = 1
EXPORT_LIBRARY = 1
ifndef _MSC_VER
FAIL_ON_WARNINGS = 1
endif # !_MSC_VER
# gfxSVGGlyphs needs nsDOMParser.h
LOCAL_INCLUDES += \
-I$(topsrcdir)/content/base/public \
-I$(topsrcdir)/content/xml/document/src \
$(NULL)
CPPSRCS = \
gfx3DMatrix.cpp \
gfxASurface.cpp \
gfxAlphaRecovery.cpp \
gfxBlur.cpp \
gfxCachedTempSurface.cpp \
gfxContext.cpp \
gfxDrawable.cpp \
gfxImageSurface.cpp \
gfxFont.cpp \
gfxFontFeatures.cpp \
gfxFontMissingGlyphs.cpp \
gfxFontTest.cpp \
gfxFontUtils.cpp \
gfxMatrix.cpp \
gfxPath.cpp \
gfxPattern.cpp \
gfxPlatform.cpp \
gfxPlatformFontList.cpp \
gfxRect.cpp \
gfxSkipChars.cpp \
gfxTeeSurface.cpp \
gfxUserFontSet.cpp \
gfxUtils.cpp \
gfxScriptItemizer.cpp \
gfxGraphiteShaper.cpp \
gfxHarfBuzzShaper.cpp \
gfxBaseSharedMemorySurface.cpp \
gfxReusableSurfaceWrapper.cpp \
nsSurfaceTexture.cpp \
gfxSVGGlyphs.cpp \
$(NULL)
ifeq ($(MOZ_WIDGET_TOOLKIT),$(findstring $(MOZ_WIDGET_TOOLKIT),android gtk2 gonk qt))
DEFINES += -DMOZ_ENABLE_FREETYPE
endif
# Are we targeting x86 or x64? If so, build gfxAlphaRecoverySSE2.cpp.
ifneq (,$(INTEL_ARCHITECTURE))
CPPSRCS += gfxAlphaRecoverySSE2.cpp
endif
SHARED_LIBRARY_LIBS += \
../layers/$(LIB_PREFIX)layers.$(LIB_SUFFIX) \
$(NULL)
ifeq ($(MOZ_WIDGET_TOOLKIT),windows)
CPPSRCS += gfxWindowsPlatform.cpp \
gfxWindowsSurface.cpp \
gfxWindowsNativeDrawing.cpp \
nsUnicodeRange.cpp \
$(NULL)
ifdef MOZ_ENABLE_DWRITE_FONT
CPPSRCS += gfxDWriteFonts.cpp \
gfxDWriteShaper.cpp \
gfxDWriteTextAnalysis.cpp \
gfxDWriteCommon.cpp \
gfxD2DSurface.cpp \
gfxDWriteFontList.cpp \
$(NULL)
endif
CPPSRCS += gfxGDIFont.cpp \
gfxGDIFontList.cpp \
gfxGDIShaper.cpp \
gfxUniscribeShaper.cpp \
$(NULL)
CPPSRCS += gfxPDFSurface.cpp
ifdef MOZ_ENABLE_D3D9_LAYER
DEFINES += -DMOZ_ENABLE_D3D9_LAYER
endif
ifdef MOZ_ENABLE_D3D10_LAYER
DEFINES += -DMOZ_ENABLE_D3D10_LAYER
endif
ACDEFINES += -UWIN32_LEAN_AND_MEAN
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),android)
CPPSRCS += \
gfxAndroidPlatform.cpp \
gfxFT2Fonts.cpp \
gfxFT2FontBase.cpp \
gfxFT2Utils.cpp \
gfxFT2FontList.cpp \
gfxPDFSurface.cpp \
nsUnicodeRange.cpp \
$(NULL)
# This is set for "normal Android", that is, when Gecko is running on
# top of the android java runtime.
DEFINES += -DMOZ_USING_ANDROID_JAVA_WIDGETS
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),gonk)
CPPSRCS += \
gfxAndroidPlatform.cpp \
gfxFT2Fonts.cpp \
gfxFT2FontBase.cpp \
gfxFT2Utils.cpp \
gfxFT2FontList.cpp \
gfxPDFSurface.cpp \
nsUnicodeRange.cpp \
$(NULL)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
CPPSRCS += gfxOS2Fonts.cpp \
gfxOS2Platform.cpp \
gfxOS2Surface.cpp \
nsUnicodeRange.cpp \
gfxFontconfigUtils.cpp \
$(NULL)
CPPSRCS += gfxPDFSurface.cpp
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
ifdef MOZ_PANGO
CPPSRCS += gfxPangoFonts.cpp
else
CPPSRCS += gfxFT2Fonts.cpp
endif
ifdef MOZ_X11
CPPSRCS += gfxXlibSurface.cpp gfxXlibNativeRenderer.cpp
endif
CPPSRCS += gfxPlatformGtk.cpp gfxGdkNativeRenderer.cpp
CPPSRCS += gfxPDFSurface.cpp gfxPSSurface.cpp
CPPSRCS += gfxFontconfigUtils.cpp
CPPSRCS += gfxFT2FontBase.cpp
CPPSRCS += gfxFT2Utils.cpp
CPPSRCS += nsUnicodeRange.cpp
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),qt)
CPPSRCS += gfxQtPlatform.cpp gfxQPainterSurface.cpp
ifdef MOZ_X11
CPPSRCS += gfxXlibSurface.cpp gfxQtNativeRenderer.cpp
endif
ifdef MOZ_PANGO
CPPSRCS += gfxPangoFonts.cpp
else
CPPSRCS += gfxFT2Fonts.cpp
endif
CPPSRCS += gfxFT2FontBase.cpp
CPPSRCS += gfxFT2Utils.cpp
CPPSRCS += gfxFontconfigUtils.cpp
CPPSRCS += nsUnicodeRange.cpp
CPPSRCS += gfxPDFSurface.cpp
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
CPPSRCS += \
gfxQuartzSurface.cpp \
gfxQuartzImageSurface.cpp \
gfxPlatformMac.cpp \
gfxMacFont.cpp \
gfxCoreTextShaper.cpp \
$(NULL)
#CPPSRCS += gfxPDFSurface.cpp
CPPSRCS += nsUnicodeRange.cpp
CPPSRCS += gfxQuartzNativeDrawing.cpp
CMMSRCS = \
gfxMacPlatformFontList.mm \
$(NULL)
endif
DEFINES += \
-DIMPL_THEBES \
-DHB_DONT_DEFINE_STDINT \
-DMOZ_OTS_REPORT_ERRORS \
-DGRAPHITE2_STATIC \
$(NULL)
ifeq (WINNT,$(OS_TARGET))
DEFINES += -DOTS_DLL
endif
include $(topsrcdir)/config/rules.mk
include $(topsrcdir)/ipc/chromium/chromium-config.mk
DEFINES := $(filter-out -DUNICODE,$(DEFINES))
CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PIXMAN_CFLAGS) $(TK_CFLAGS)
CFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PIXMAN_CFLAGS) $(TK_CFLAGS)
ifeq ($(MOZ_WIDGET_TOOLKIT),android)
CXXFLAGS += $(CAIRO_FT_CFLAGS)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),gonk)
CXXFLAGS += $(CAIRO_FT_CFLAGS)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
CXXFLAGS += $(MOZ_PANGO_CFLAGS)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
CXXFLAGS += $(CAIRO_FT_CFLAGS)
endif
ifeq ($(MOZ_WIDGET_TOOLKIT),qt)
CXXFLAGS += $(CAIRO_FT_CFLAGS) $(MOZ_PANGO_CFLAGS)
endif
# The file uses SSE2 intrinsics, so it needs special compile flags on some
# compilers.
ifneq (,$(INTEL_ARCHITECTURE))
ifdef GNU_CC
gfxAlphaRecoverySSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
endif
ifdef SOLARIS_SUNPRO_CXX
gfxAlphaRecoverySSE2.$(OBJ_SUFFIX): OS_CXXFLAGS += -xarch=sse2 -xO4
endif
endif
PremultiplyTables.h: $(srcdir)/genTables.py
$(PYTHON) $(srcdir)/genTables.py
gfxUtils.$(OBJ_SUFFIX): PremultiplyTables.h