1# Copyright (C) 2016 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15LOCAL_PATH:= $(call my-dir)
16
17include $(CLEAR_VARS)
18
19LOCAL_CFLAGS += -DLOG_TAG=\"hwc-libacryl\"
20LOCAL_CFLAGS += -Wthread-safety
21#LOCAL_CFLAGS += -DLIBACRYL_DEBUG
22
23ifdef BOARD_LIBACRYL_DEFAULT_COMPOSITOR
24    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_COMPOSITOR=\"$(BOARD_LIBACRYL_DEFAULT_COMPOSITOR)\"
25else
26    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_COMPOSITOR=\"no_default_compositor\"
27endif
28ifdef BOARD_LIBACRYL_DEFAULT_SCALER
29    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_SCALER=\"$(BOARD_LIBACRYL_DEFAULT_SCALER)\"
30else
31    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_SCALER=\"no_default_scaler\"
32endif
33ifdef BOARD_LIBACRYL_DEFAULT_BLTER
34    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_BLTER=\"$(BOARD_LIBACRYL_DEFAULT_BLTER)\"
35else
36    LOCAL_CFLAGS += -DLIBACRYL_DEFAULT_BLTER=\"no_default_blter\"
37endif
38
39LOCAL_SHARED_LIBRARIES := liblog libutils libcutils libion_google android.hardware.graphics.common-V3-ndk
40ifdef BOARD_LIBACRYL_G2D_HDR_PLUGIN
41    LOCAL_SHARED_LIBRARIES += $(BOARD_LIBACRYL_G2D_HDR_PLUGIN)
42    LOCAL_CFLAGS += -DLIBACRYL_G2D_HDR_PLUGIN
43endif
44
45ifeq ($(CLANG_COVERAGE),true)
46# enable code coverage (these flags are copied from build/soong/cc/coverage.go)
47LOCAL_CFLAGS += -fprofile-instr-generate -fcoverage-mapping
48LOCAL_CFLAGS += -Wno-frame-larger-than=
49LOCAL_WHOLE_STATIC_LIBRARIES += libprofile-clang-extras_ndk
50LOCAL_LDFLAGS += -fprofile-instr-generate
51LOCAL_LDFLAGS += -Wl,--wrap,open
52
53ifeq ($(CLANG_COVERAGE_CONTINUOUS_MODE),true)
54LOCAL_CFLAGS += -mllvm -runtime-counter-relocation
55LOCAL_LDFLAGS += -Wl,-mllvm=-runtime-counter-relocation
56endif
57endif
58
59LOCAL_HEADER_LIBRARIES += google_libacryl_hdrplugin_headers
60LOCAL_HEADER_LIBRARIES += google_hal_headers
61LOCAL_HEADER_LIBRARIES += libgralloc_headers
62
63LOCAL_C_INCLUDES := $(LOCAL_PATH)/local_include
64LOCAL_C_INCLUDES += $(LOCAL_PATH)/include
65LOCAL_C_INCLUDES += $(TOP)/hardware/google/graphics/$(TARGET_BOARD_PLATFORM)/libcap
66
67LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include
68
69LOCAL_SRC_FILES := acrylic.cpp acrylic_g2d.cpp
70LOCAL_SRC_FILES += acrylic_factory.cpp acrylic_layer.cpp acrylic_formats.cpp
71LOCAL_SRC_FILES += acrylic_performance.cpp acrylic_device.cpp
72
73LOCAL_MODULE_TAGS := optional
74LOCAL_MODULE := libacryl
75LOCAL_LICENSE_KINDS := SPDX-license-identifier-Apache-2.0
76LOCAL_LICENSE_CONDITIONS := notice
77LOCAL_NOTICE_FILE := $(LOCAL_PATH)/NOTICE
78ifeq ($(BOARD_USES_VENDORIMAGE), true)
79LOCAL_PROPRIETARY_MODULE := true
80endif
81
82include $(BUILD_SHARED_LIBRARY)
83