mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-24 18:42:29 +03:00
Allow unit tests to define NVGPU_UNIT_SHARED_LIBRARIES in their tmake files for linking if necessary. For example, pthreads. JIRA NVGPU-2251 Change-Id: Ieeae10fe981d82e2caa0fbde041b72b0887b6ca6 Signed-off-by: Philip Elcan <pelcan@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/2034425 GVS: Gerrit_Virtual_Submit Reviewed-by: Alex Waterman <alexw@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
95 lines
2.7 KiB
Makefile
95 lines
2.7 KiB
Makefile
################################### tell Emacs this is a -*- makefile-gmake -*-
|
|
#
|
|
# Copyright (c) 2018-2019 NVIDIA CORPORATION. All Rights Reserved.
|
|
#
|
|
# NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
# and proprietary rights in and to this software, related documentation
|
|
# and any modifications thereto. Any use, reproduction, disclosure or
|
|
# distribution of this software and related documentation without an express
|
|
# license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
#
|
|
# tmake for SW Mobile component makefile
|
|
#
|
|
###############################################################################
|
|
|
|
ifdef NV_COMPONENT_FLAG_SHARED_LIBRARY_SECTION
|
|
include $(NV_BUILD_START_COMPONENT)
|
|
|
|
NV_COMPONENT_NAME := $(NVGPU_UNIT_NAME)
|
|
NV_COMPONENT_OWN_INTERFACE_DIR := .
|
|
|
|
#For the simple case, if there's only one source file with the same name as the
|
|
#component, the unit test can let this makefile add it.
|
|
#But if the unit test has > 1 file, they can define NVGPU_UNIT_SRCS
|
|
ifdef NVGPU_UNIT_SRCS
|
|
NV_COMPONENT_SOURCES := \
|
|
$(NVGPU_UNIT_SRCS)
|
|
else
|
|
NV_COMPONENT_SOURCES := \
|
|
$(NVGPU_UNIT_NAME).c
|
|
endif
|
|
|
|
ifdef NVGPU_UNIT_INCLUDES
|
|
NV_COMPONENT_INCLUDES := \
|
|
$(NVGPU_UNIT_INCLUDES)
|
|
endif
|
|
|
|
ifdef NVGPU_CFLAGS
|
|
NV_COMPONENT_CFLAGS := \
|
|
$(NVGPU_CFLAGS)
|
|
else
|
|
NV_COMPONENT_CFLAGS += -D__NVGPU_POSIX__
|
|
endif
|
|
|
|
NV_COMPONENT_CFLAGS += \
|
|
-DCONFIG_TEGRA_19x_GPU \
|
|
-DCONFIG_TEGRA_GK20A_NVHOST \
|
|
-DCONFIG_GK20A_CYCLE_STATS \
|
|
-DCONFIG_TEGRA_T19X_GRHOST \
|
|
-DCONFIG_NVGPU_SUPPORT_TURING \
|
|
-DCONFIG_TEGRA_GK20A_PMU=1 \
|
|
-DCONFIG_TEGRA_ACR=1 \
|
|
-DCONFIG_TEGRA_GR_VIRTUALIZATION \
|
|
-DNVCPU_IS_AARCH64=1 \
|
|
-DCONFIG_TEGRA_IOVMM=0 \
|
|
-DCONFIG_ARCH_TEGRA_18x_SOC=1 \
|
|
-DCONFIG_GK20A_VIDMEM=1 \
|
|
-DCONFIG_PCI_MSI \
|
|
-DCONFIG_SUPPORT_PMU_PSTATE \
|
|
-DCONFIG_TEGRA_NVLINK
|
|
|
|
NV_COMPONENT_NEEDED_INTERFACE_DIRS := \
|
|
$(NV_SOURCE)/kernel/nvgpu/userspace
|
|
|
|
ifdef NVGPU_UNIT_SHARED_LIBRARIES
|
|
NV_COMPONENT_SYSTEM_SHARED_LIBRARIES += $(NVGPU_UNIT_SHARED_LIBRARIES)
|
|
endif
|
|
|
|
ifdef NVGPU_UNIT_INTERFACE_DIRS
|
|
NV_COMPONENT_NEEDED_INTERFACE_DIRS += \
|
|
$(NVGPU_UNIT_INTERFACE_DIRS)
|
|
else
|
|
NV_COMPONENT_NEEDED_INTERFACE_DIRS += \
|
|
$(NV_SOURCE)/kernel/nvgpu/drivers/gpu/nvgpu
|
|
endif
|
|
|
|
ifdef NVGPU_SYSTEMIMAGE_DIR
|
|
NV_COMPONENT_SYSTEMIMAGE_DIR := $(NVGPU_SYSTEMIMAGE_DIR)
|
|
else
|
|
NV_COMPONENT_SYSTEMIMAGE_DIR := $(NV_SYSTEMIMAGE_TEST_EXECUTABLE_DIR)/nvgpu_unit/units
|
|
endif
|
|
|
|
systemimage:: $(NV_COMPONENT_SYSTEMIMAGE_DIR)
|
|
$(NV_COMPONENT_SYSTEMIMAGE_DIR) : $(NV_SYSTEMIMAGE_TEST_EXECUTABLE_DIR)
|
|
$(MKDIR_P) $@
|
|
|
|
include $(NV_BUILD_SHARED_LIBRARY)
|
|
|
|
endif
|
|
|
|
# Local Variables:
|
|
# indent-tabs-mode: t
|
|
# tab-width: 8
|
|
# End:
|
|
# vi: set tabstop=8 noexpandtab:
|