2
# This Source Code Form is subject to the terms of the Mozilla Public
3
# License, v. 2.0. If a copy of the MPL was not distributed with this
4
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
7
topsrcdir = @top_srcdir@
11
include $(DEPTH)/config/autoconf.mk
18
EXPORTS_NAMESPACES = mozilla/gfx
19
EXPORTS_mozilla/gfx = \
40
SourceSurfaceCairo.cpp \
46
SourceSurfaceRawData.cpp \
49
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
60
EXPORTS_mozilla/gfx += \
66
DEFINES += -DMOZ_GFX -DUSE_CAIRO -DGFX2D_INTERNAL
70
SourceSurfaceSkia.cpp \
79
ifeq (cocoa,$(MOZ_WIDGET_TOOLKIT))
88
ifeq ($(MOZ_WIDGET_TOOLKIT),$(findstring $(MOZ_WIDGET_TOOLKIT),android gtk2 gonk qt))
90
ScaledFontFreetype.cpp \
92
DEFINES += -DMOZ_ENABLE_FREETYPE
95
ifeq (android,$(MOZ_WIDGET_TOOLKIT))
96
DEFINES += -DSK_BUILD_FOR_ANDROID_NDK
99
DEFINES += -DSK_A32_SHIFT=24 -DSK_R32_SHIFT=16 -DSK_G32_SHIFT=8 -DSK_B32_SHIFT=0
102
DEFINES += -DGFX_LOG_DEBUG -DGFX_LOG_WARNING
105
# Are we targeting x86 or x64? If so, build SSE2 files.
106
ifneq (,$(INTEL_ARCHITECTURE))
107
# VC2005 doesn't support _mm_castsi128_ps, so SSE2 is turned off
108
ifneq (1400,$(_MSC_VER))
109
CPPSRCS += ImageScalingSSE2.cpp
110
DEFINES += -DUSE_SSE2
114
ifeq ($(MOZ_WIDGET_TOOLKIT),windows)
117
SourceSurfaceD2D.cpp \
118
SourceSurfaceD2DTarget.cpp \
120
ScaledFontDWrite.cpp \
122
DEFINES += -DWIN32 -DINITGUID
124
ifdef MOZ_ENABLE_SKIA
131
include $(topsrcdir)/config/rules.mk
133
#ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa)
136
# SourceSurfaceCG.cpp \
139
## Always link with OpenGL/AGL
140
#EXTRA_DSO_LDOPTS += -framework OpenGL -framework AGL -framework QuickTime -framework AppKit -framework QuartzCore
143
# The file uses SSE2 intrinsics, so it needs special compile flags on some
145
ifneq (,$(INTEL_ARCHITECTURE))
147
ImageScalingSSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
150
ifdef SOLARIS_SUNPRO_CXX
151
ImageScalingSSE2.$(OBJ_SUFFIX): OS_CXXFLAGS += -xarch=sse2 -xO4
155
CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PIXMAN_CFLAGS)