gfx/skia/Makefile.in
author Christian Holler <choller@mozilla.com>
Tue, 10 Sep 2013 17:00:07 +0200
changeset 146424 0f7c370491bf44c2434049972ac28010d5c0a4ed
parent 145609 45097bc3a57898f22a4f3b74f8f8cf7511f5d0a4
child 149669 20613b2d640db9fd2b62b01ccc3ff6551151886f
permissions -rw-r--r--
Bug 914174 - Ensure JS standalone builds have the right ASan options. r=luke

# 
# 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/.

EXPORT_LIBRARY  = 1

DEFINES += -DSK_A32_SHIFT=24 -DSK_R32_SHIFT=16 -DSK_G32_SHIFT=8 -DSK_B32_SHIFT=0

LOCAL_INCLUDES += \
	-I$(srcdir)/include/core \
	-I$(srcdir)/include/config \
	-I$(srcdir)/include/gpu \
	-I$(srcdir)/include/pipe \
	-I$(srcdir)/include/ports \
	-I$(srcdir)/include/images \
	-I$(srcdir)/include/lazy \
	-I$(srcdir)/include/utils \
	-I$(srcdir)/include/utils/mac \
	-I$(srcdir)/include/utils/win \
	-I$(srcdir)/include/views \
	-I$(srcdir)/include/effects \
	-I$(srcdir)/src/core \
	-I$(srcdir)/src/image \
	-I$(srcdir)/src/gpu \
	-I$(srcdir)/src/gpu/effects \
	-I$(srcdir)/src/gpu/gl \
	-I$(srcdir)/src/lazy \
	-I$(srcdir)/src/utils \
	-I$(srcdir)/src/utils/android \
	-I$(srcdir)/src/sfnt \
	$(NULL)

VPATH += \
	$(srcdir)/src/core \
	$(srcdir)/src/gpu \
	$(srcdir)/src/gpu/effects \
	$(srcdir)/src/gpu/gl \
	$(srcdir)/src/image \
	$(srcdir)/src/images \
	$(srcdir)/src/lazy \
	$(srcdir)/src/pipe \
	$(srcdir)/src/ports \
	$(srcdir)/src/opts \
	$(srcdir)/src/effects \
	$(srcdir)/src/effects/gradients \
	$(srcdir)/src/utils \
	$(srcdir)/src/utils/android \
	$(srcdir)/src/utils/mac \
	$(srcdir)/src/sfnt \
	$(NULL)

ifeq ($(MOZ_WIDGET_TOOLKIT),$(findstring $(MOZ_WIDGET_TOOLKIT),android gonk))
OS_CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(CAIRO_FT_CFLAGS)
DEFINES += -DSK_FONTHOST_CAIRO_STANDALONE=0
endif

ifdef MOZ_WIDGET_GTK
OS_CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PANGO_CFLAGS) $(CAIRO_FT_CFLAGS)
endif

ifeq (qt,$(MOZ_WIDGET_TOOLKIT))
OS_CXXFLAGS += $(MOZ_CAIRO_CFLAGS) $(MOZ_PANGO_CFLAGS) $(CAIRO_FT_CFLAGS)
ifeq (Linux,$(OS_TARGET))
DEFINES += -DSK_USE_POSIX_THREADS=1
endif
endif

ifeq ($(MOZ_WIDGET_TOOLKIT),$(findstring $(MOZ_WIDGET_TOOLKIT),android gtk2 gtk3 gonk cocoa))
DEFINES += -DSK_USE_POSIX_THREADS=1
endif

ifeq (windows,$(MOZ_WIDGET_TOOLKIT))
DEFINES += -DSKIA_IMPLEMENTATION=1 -DGR_IMPLEMENTATION=1
endif

ifneq (,$(INTEL_ARCHITECTURE))
ifdef HAVE_TOOLCHAIN_SUPPORT_MSSSE3
DEFINES += -DSK_BUILD_SSSE3
endif
endif

include $(topsrcdir)/config/rules.mk

ifneq (,$(INTEL_ARCHITECTURE))
ifdef GNU_CC
SkBitmapProcState_opts_SSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
SkBitmapProcState_opts_SSSE3.$(OBJ_SUFFIX): CXXFLAGS+=-mssse3
SkBlitRow_opts_SSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
SkBlitRect_opts_SSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
SkUtils_opts_SSE2.$(OBJ_SUFFIX): CXXFLAGS+=-msse2
endif
endif

ifeq ($(CPU_ARCH)_$(GNU_CC),arm_1)
# The assembly uses the frame pointer register (r7 in Thumb/r11 in
# ARM), the compiler doesn't like that.
CXXFLAGS := $(filter-out -fno-omit-frame-pointer,$(CXXFLAGS)) -fomit-frame-pointer
CFLAGS := $(filter-out -fno-omit-frame-pointer,$(CFLAGS)) -fomit-frame-pointer
endif