summaryrefslogtreecommitdiffstats
path: root/third_party/qcms/Makefile.in
blob: 4dfd8395f8a76891d1d4c0f5041cd8de299325fa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
DEPTH		= ../..
topsrcdir	= @top_srcdir@
srcdir		= @srcdir@
VPATH		= @srcdir@

include $(DEPTH)/config/autoconf.mk

MODULE       = qcms
LIBRARY_NAME = mozqcms
LIBXUL_LIBRARY = 1
GRE_MODULE      = 1
DIST_INSTALL = 1

EXPORTS      = qcms.h qcmstypes.h

CSRCS = iccread.c transform.c

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
endif

FORCE_STATIC_LIB = 1
# This library is used by other shared libs
FORCE_USE_PIC = 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): transform-sse1.c $(GLOBAL_DEPS)
	$(REPORT_BUILD)
	@$(MAKE_DEPS_AUTO_CC)
	$(ELOG) $(CC) $(OUTOPTION)$@ -c $(COMPILE_CFLAGS) $(SSE1_FLAGS) $(_VPATH_SRCS)

transform-sse2.$(OBJ_SUFFIX): transform-sse2.c $(GLOBAL_DEPS)
	$(REPORT_BUILD)
	@$(MAKE_DEPS_AUTO_CC)
	$(ELOG) $(CC) $(OUTOPTION)$@ -c $(COMPILE_CFLAGS) $(SSE2_FLAGS) $(_VPATH_SRCS)