# 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 MODULE = qcms LIBRARY_NAME = mozqcms LIBXUL_LIBRARY = 1 GRE_MODULE = 1 EXPORTS = qcms.h qcmstypes.h CSRCS = \ chain.c \ iccread.c \ matrix.c \ transform.c \ transform_util.c \ $(NULL) ifeq (86,$(findstring 86,$(OS_TEST))) CSRCS += transform-sse2.c ifdef _MSC_VER ifneq ($(OS_ARCH)_$(OS_TEST),WINNT_x86_64) CSRCS += transform-sse1.c endif else CSRCS += transform-sse1.c ifdef GNU_CC SSE1_FLAGS=-msse SSE2_FLAGS=-msse2 else ifeq ($(SOLARIS_SUNPRO_CC),1) ifneq (64,$(findstring 64,$(OS_TEST))) SSE1_FLAGS=-xarch=sse SSE2_FLAGS=-xarch=sse2 else # Sun Studio doesn't work correctly for x86 intristics # with -m64 and without optimization. SSE1_FLAGS= -xO4 SSE2_FLAGS= -xO4 endif else SSE1_FLAGS= SSE2_FLAGS= endif endif endif else ifeq (ppc,$(CPU_ARCH)) ifdef GNU_CC CSRCS += transform-altivec.c ALTIVEC_FLAGS=-maltivec endif endif endif FORCE_STATIC_LIB = 1 include $(topsrcdir)/config/rules.mk CFLAGS += -DMOZ_QCMS # Disable spammy "missing initializer" GCC warning ifdef GNU_CC CFLAGS += -Wno-missing-field-initializers endif # GNU_CC # special rules for transform-sse*.c to get the right cflags. (taken from pixman/src/Makefile.in) transform-sse1.$(OBJ_SUFFIX): COMPILE_CFLAGS += $(SSE1_FLAGS) transform-sse2.$(OBJ_SUFFIX): COMPILE_CFLAGS += $(SSE2_FLAGS) transform-altivec.$(OBJ_SUFFIX): COMPILE_CFLAGS += $(ALTIVEC_FLAGS)