/*
 * Copyright (C) 2020 Arm Limited.
 * SPDX-License-Identifier: Apache-2.0
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package {
    default_applicable_licenses: ["Android-Apache-2.0"],
}

cc_defaults {
	name: "arm_gralloc_version_defaults",
	target: {
		android: {
			shared_libs: [
				"android.hardware.graphics.common@1.2",
			],
		},
	},
	cflags: [
		"-DLOG_TAG=\"gralloc4\"",
		"-DGRALLOC_VERSION_MAJOR=4",
		"-DHIDL_ALLOCATOR_VERSION_SCALED=400",
		"-DHIDL_MAPPER_VERSION_SCALED=400",
		"-DHIDL_COMMON_VERSION_SCALED=120",
	],
}

cc_defaults {
	name: "arm_gralloc_api_4x_defaults",
	defaults: [
		"arm_gralloc_defaults",
		"arm_gralloc_version_defaults",
	],
	compile_multilib: "both",
	relative_install_path: "hw/",
	shared_libs: [
		"libhardware",
		"liblog",
		"libcutils",
		"libdmabufheap",
		"libsync",
		"libutils",
		"libnativewindow",
		"libhidlbase",
		"libgralloctypes",
	],
	static_libs: [
		"libarect",
		"libgralloc_core",
		"libgralloc_allocator",
		"libgralloc_capabilities",
		"libdrm",
	],
	header_libs: [
		"libnativebase_headers",
	],
	export_shared_lib_headers: [
		"libhidlbase",
	],
}

cc_library_shared {
	name: "android.hardware.graphics.mapper@4.0-impl",
	defaults: [
		"arm_gralloc_api_4x_defaults",
	],
	static_libs: [
		"libgralloc_drmutils",
	],
	shared_libs: [
		"arm.graphics-V1-ndk",
		"android.hardware.graphics.mapper@4.0",
	],
	srcs: [
		"GrallocMapper.cpp",
		":libgralloc_hidl_common_mapper",
		":libgralloc_hidl_common_mapper_metadata",
		":libgralloc_hidl_common_shared_metadata",
	],
	include_dirs: [
		"hardware/google/gchips/include",
	],
}
