1LOCAL_PATH:= $(call my-dir)
2include $(CLEAR_VARS)
3
4#
5# C/C++ and ARMv5 objects
6#
7
8include $(CLEAR_VARS)
9PIXELFLINGER_SRC_FILES:= \
10    codeflinger/ARMAssemblerInterface.cpp \
11    codeflinger/ARMAssemblerProxy.cpp \
12    codeflinger/ARMAssembler.cpp \
13    codeflinger/CodeCache.cpp \
14    codeflinger/GGLAssembler.cpp \
15    codeflinger/load_store.cpp \
16    codeflinger/blending.cpp \
17    codeflinger/texturing.cpp \
18    codeflinger/disassem.c \
19	tinyutils/SharedBuffer.cpp \
20	tinyutils/VectorImpl.cpp \
21	fixed.cpp.arm \
22	picker.cpp.arm \
23	pixelflinger.cpp.arm \
24	trap.cpp.arm \
25	scanline.cpp.arm \
26	format.cpp \
27	clear.cpp \
28	raster.cpp \
29	buffer.cpp
30
31ifeq ($(TARGET_ARCH),arm)
32ifeq ($(TARGET_ARCH_VERSION),armv7-a)
33PIXELFLINGER_SRC_FILES += col32cb16blend_neon.S
34PIXELFLINGER_SRC_FILES += col32cb16blend.S
35else
36PIXELFLINGER_SRC_FILES += t32cb16blend.S
37PIXELFLINGER_SRC_FILES += col32cb16blend.S
38endif
39endif
40
41ifeq ($(TARGET_ARCH),arm)
42# special optimization flags for pixelflinger
43PIXELFLINGER_CFLAGS += -fstrict-aliasing -fomit-frame-pointer
44endif
45
46ifeq ($(TARGET_ARCH),mips)
47PIXELFLINGER_SRC_FILES += codeflinger/MIPSAssembler.cpp
48PIXELFLINGER_SRC_FILES += codeflinger/mips_disassem.c
49PIXELFLINGER_SRC_FILES += arch-mips/t32cb16blend.S
50PIXELFLINGER_CFLAGS += -fstrict-aliasing -fomit-frame-pointer
51endif
52
53LOCAL_SHARED_LIBRARIES := libcutils
54
55ifneq ($(TARGET_ARCH),arm)
56# Required to define logging functions on the simulator.
57# TODO: move the simulator logging functions into libcutils with
58# the rest of the basic log stuff.
59LOCAL_SHARED_LIBRARIES += libutils
60endif
61
62#
63# Shared library
64#
65
66LOCAL_MODULE:= libpixelflinger
67LOCAL_SRC_FILES := $(PIXELFLINGER_SRC_FILES)
68LOCAL_CFLAGS := $(PIXELFLINGER_CFLAGS)
69
70ifneq ($(BUILD_TINY_ANDROID),true)
71# Really this should go away entirely or at least not depend on
72# libhardware, but this at least gets us built.
73LOCAL_SHARED_LIBRARIES += libhardware_legacy
74LOCAL_CFLAGS += -DWITH_LIB_HARDWARE
75endif
76include $(BUILD_SHARED_LIBRARY)
77
78#
79# Static library version
80#
81
82include $(CLEAR_VARS)
83LOCAL_MODULE:= libpixelflinger_static
84LOCAL_SRC_FILES := $(PIXELFLINGER_SRC_FILES)
85LOCAL_CFLAGS := $(PIXELFLINGER_CFLAGS) 
86include $(BUILD_STATIC_LIBRARY)
87
88
89include $(call all-makefiles-under,$(LOCAL_PATH))
90