blob: 0f502c01001742da1b9fa426a67402190e70475c [file] [log] [blame]
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -07001LOCAL_PATH:= $(call my-dir)
2include $(CLEAR_VARS)
3
4#
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -07005# C/C++ and ARMv5 objects
6#
7
8include $(CLEAR_VARS)
9PIXELFLINGER_SRC_FILES:= \
10 codeflinger/ARMAssemblerInterface.cpp \
11 codeflinger/ARMAssemblerProxy.cpp \
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070012 codeflinger/CodeCache.cpp \
13 codeflinger/GGLAssembler.cpp \
14 codeflinger/load_store.cpp \
15 codeflinger/blending.cpp \
16 codeflinger/texturing.cpp \
Mathias Agopian9857d992013-04-01 15:17:55 -070017 codeflinger/tinyutils/SharedBuffer.cpp \
18 codeflinger/tinyutils/VectorImpl.cpp \
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070019 fixed.cpp.arm \
20 picker.cpp.arm \
21 pixelflinger.cpp.arm \
22 trap.cpp.arm \
23 scanline.cpp.arm \
24 format.cpp \
25 clear.cpp \
26 raster.cpp \
27 buffer.cpp
28
29ifeq ($(TARGET_ARCH),arm)
Martyn Capewellf9e8ab02009-12-07 15:00:19 +000030ifeq ($(TARGET_ARCH_VERSION),armv7-a)
31PIXELFLINGER_SRC_FILES += col32cb16blend_neon.S
32PIXELFLINGER_SRC_FILES += col32cb16blend.S
33else
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070034PIXELFLINGER_SRC_FILES += t32cb16blend.S
Martyn Capewellf9e8ab02009-12-07 15:00:19 +000035PIXELFLINGER_SRC_FILES += col32cb16blend.S
36endif
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070037endif
38
39ifeq ($(TARGET_ARCH),arm)
Ashok Bhat658f89d2013-02-28 18:32:03 +000040PIXELFLINGER_SRC_FILES += codeflinger/ARMAssembler.cpp
41PIXELFLINGER_SRC_FILES += codeflinger/disassem.c
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070042# special optimization flags for pixelflinger
43PIXELFLINGER_CFLAGS += -fstrict-aliasing -fomit-frame-pointer
44endif
45
Duane Sand068f9f32012-05-24 22:09:24 -070046ifeq ($(TARGET_ARCH),mips)
Paul Lind2bc2b792012-02-01 10:54:19 -080047PIXELFLINGER_SRC_FILES += codeflinger/MIPSAssembler.cpp
48PIXELFLINGER_SRC_FILES += codeflinger/mips_disassem.c
Duane Sand068f9f32012-05-24 22:09:24 -070049PIXELFLINGER_SRC_FILES += arch-mips/t32cb16blend.S
50PIXELFLINGER_CFLAGS += -fstrict-aliasing -fomit-frame-pointer
51endif
52
Ying Wang083b5cc2013-04-09 22:03:45 -070053LOCAL_SHARED_LIBRARIES := libcutils liblog
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070054
Ashok Bhat658f89d2013-02-28 18:32:03 +000055ifeq ($(TARGET_ARCH),aarch64)
56PIXELFLINGER_SRC_FILES += arch-aarch64/t32cb16blend.S
57PIXELFLINGER_SRC_FILES += arch-aarch64/col32cb16blend.S
58PIXELFLINGER_SRC_FILES += codeflinger/Aarch64Assembler.cpp
59PIXELFLINGER_SRC_FILES += codeflinger/Aarch64Disassembler.cpp
60PIXELFLINGER_CFLAGS += -fstrict-aliasing -fomit-frame-pointer
61endif
62
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070063#
64# Shared library
65#
66
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070067LOCAL_MODULE:= libpixelflinger
68LOCAL_SRC_FILES := $(PIXELFLINGER_SRC_FILES)
Brian Swetland5a326952008-12-23 22:29:27 -080069LOCAL_CFLAGS := $(PIXELFLINGER_CFLAGS)
70
71ifneq ($(BUILD_TINY_ANDROID),true)
The Android Open Source Projectdd7bc332009-03-03 19:32:55 -080072# Really this should go away entirely or at least not depend on
73# libhardware, but this at least gets us built.
74LOCAL_SHARED_LIBRARIES += libhardware_legacy
Brian Swetland5a326952008-12-23 22:29:27 -080075LOCAL_CFLAGS += -DWITH_LIB_HARDWARE
76endif
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070077include $(BUILD_SHARED_LIBRARY)
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070078
79#
80# Static library version
81#
82
83include $(CLEAR_VARS)
84LOCAL_MODULE:= libpixelflinger_static
85LOCAL_SRC_FILES := $(PIXELFLINGER_SRC_FILES)
Ying Wang083b5cc2013-04-09 22:03:45 -070086LOCAL_CFLAGS := $(PIXELFLINGER_CFLAGS)
The Android Open Source Project4f6e8d72008-10-21 07:00:00 -070087include $(BUILD_STATIC_LIBRARY)
The Android Open Source Project35237d12008-12-17 18:08:08 -080088
89
90include $(call all-makefiles-under,$(LOCAL_PATH))