21 CFLAGS = -MD -nologo -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -I../pixman/src -I. -DPACKAGE=$(LIBRARY) -DPACKAGE_VERSION="" -DPACKAGE_BUGREPORT=""
22 MMX_CFLAGS = -DUSE_MMX -w14710 -w14714
23 SSE2_CFLAGS = -DUSE_SSE2
26 ifeq ($(CFG_VAR),debug)
35 pixman-access-accessors.c \
42 pixman-edge-accessors.c \
46 pixman-gradient-walker.c \
47 pixman-conical-gradient.c \
48 pixman-linear-gradient.c \
49 pixman-radial-gradient.c \
54 pixman-implementation.c \
59 BUILT_SOURCES = pixman-combine32.h pixman-combine32.c pixman-combine64.h pixman-combine64.c
61 # MMX compilation flags
63 CFLAGS += $(MMX_CFLAGS)
64 SOURCES += pixman-mmx.c
67 # SSE2 compilation flags
69 CFLAGS += $(SSE2_CFLAGS)
70 SOURCES += pixman-sse2.c
73 OBJECTS = $(patsubst %.c, $(CFG_VAR)/%.obj, $(SOURCES))
76 all: inform informMMX informSSE2 $(CFG_VAR)/$(LIBRARY).lib
80 pixman: inform informMMX informSSE2 $(CFG_VAR)/$(LIBRARY).lib
84 ifneq ($(CFG),release)
87 @echo "Invalid specified configuration option : "$(CFG)"."
89 @echo -n "Possible choices for configuration are "
90 @echo "'release' and 'debug'"
94 @echo "Using default RELEASE configuration... (use CFG=release or CFG=debug)"
102 @echo "Invalid specified MMX option : "$(MMX_VAR)"."
104 @echo -n "Possible choices for MMX are 'on' or 'off'"
108 @echo "Setting MMX flag to default value 'on'... (use MMX=on or MMX=off)"
116 @echo "Invalid specified SSE option : "$(SSE2)"."
118 @echo -n "Possible choices for SSE2 are 'on' or 'off'"
122 @echo "Setting SSE2 flag to default value 'on'... (use SSE2=on or SSE2=off)"
126 # pixman compilation and linking
127 $(CFG_VAR)/%.obj: %.c $(BUILT_SOURCES)
129 @$(CC) -c $(CFLAGS) -Fo"$@" $<
131 $(CFG_VAR)/$(LIBRARY).lib: $(OBJECTS)
132 lib -NOLOGO -OUT:$@ $(OBJECTS) || exit 0
134 pixman-combine32.c: pixman-combine.c.template pixman-combine32.h make-combine.pl
135 perl ./make-combine.pl 8 < $< > $@ || ($(RM) $@; exit 1)
136 pixman-combine32.h: pixman-combine.h.template make-combine.pl
137 perl ./make-combine.pl 8 < $< > $@ || ($(RM) $@; exit 1)
139 pixman-combine64.c: pixman-combine.c.template pixman-combine64.h make-combine.pl
140 perl ./make-combine.pl 16 < $< > $@ || ($(RM) $@; exit 1)
141 pixman-combine64.h: pixman-combine.h.template make-combine.pl
142 perl ./make-combine.pl 16 < $< > $@ || ($(RM) $@; exit 1)
145 @rm -f $(CFG_VAR)/*.obj $(CFG_VAR)/*.lib $(CFG_VAR)/*.pdb $(CFG)/*.ilk || exit 0
146 @rm -f $(CFG)/*.obj $(CFG)/*.lib $(CFG)/*.pdb $(CFG)/*.ilk $(BUILT_SOURCES) || exit 0