659 lines
18 KiB
Modula-2
659 lines
18 KiB
Modula-2
##############################################################################
|
|||
|
|
#
|
||
|
|
# Copyright (c) 2005 - 2022 by Vivante Corp. All rights reserved.
|
||
|
|
#
|
||
|
|
# The material in this file is confidential and contains trade secrets
|
||
|
|
# of Vivante Corporation. This is proprietary information owned by
|
||
|
|
# Vivante Corporation. No part of this work may be disclosed,
|
||
|
|
# reproduced, copied, transmitted, or used in any way for any purpose,
|
||
|
|
# without the express written permission of Vivante Corporation.
|
||
|
|
#
|
||
|
|
##############################################################################
|
||
|
|
|
||
|
|
|
||
|
|
#
|
||
|
|
# Common inlude file for Linux build.
|
||
|
|
#
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Select prebuilt binary types.
|
||
|
|
FIXED_ARCH_TYPE ?=
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Arch.
|
||
|
|
|
||
|
|
ARCH_TYPE ?= arm
|
||
|
|
CPU_TYPE ?= arm920
|
||
|
|
CPU_ARCH ?=
|
||
|
|
ABI ?=
|
||
|
|
ENDIANNESS ?=
|
||
|
|
FPU ?=
|
||
|
|
FLOAT_ABI ?=
|
||
|
|
|
||
|
|
USE_ARMCC ?= 0
|
||
|
|
LINUX_OABI ?= 0
|
||
|
|
|
||
|
|
gcdSTATIC_LINK ?= 0
|
||
|
|
|
||
|
|
VIVANTE_ENABLE_2D ?= 1
|
||
|
|
VIVANTE_ENABLE_VG ?= 0
|
||
|
|
VIVANTE_ENABLE_3D ?= 1
|
||
|
|
VIVANTE_NO_GL4 ?= 0
|
||
|
|
VIVANTE_NO_VG ?= 0
|
||
|
|
VIVANTE_ENABLE_APBFE ?= 0
|
||
|
|
VIVANTE_ENABLE_40BITS_VA ?= 0
|
||
|
|
VIVANTE_ENABLE_DEV_BUILD ?= 0
|
||
|
|
|
||
|
|
LINUX_EMULATOR ?= 0
|
||
|
|
LINUX_VSIMULATOR ?= 0
|
||
|
|
NO_KERNEL ?= 0
|
||
|
|
|
||
|
|
USE_OPENCL ?= 1
|
||
|
|
USE_OPENVX ?= 1
|
||
|
|
USE_VIP_ONLY ?= 0
|
||
|
|
USE_OVXLIB ?= 0
|
||
|
|
USE_VULKAN ?= 0
|
||
|
|
USE_VDK ?= 0
|
||
|
|
|
||
|
|
EGL_API_FB ?= 0
|
||
|
|
EGL_API_WL ?= 0
|
||
|
|
EGL_API_DRI ?= 0
|
||
|
|
X11_DRI3 ?= 0
|
||
|
|
EGL_API_DFB ?= 0
|
||
|
|
EGL_API_X ?= 0
|
||
|
|
|
||
|
|
USE_MOVG ?= 0
|
||
|
|
GC355_MEM_PRINT ?= 0
|
||
|
|
GC355_PROFILER ?= 0
|
||
|
|
|
||
|
|
USE_BANK_ALIGNMENT ?= 0
|
||
|
|
BANK_BIT_START ?= 0
|
||
|
|
BANK_BIT_END ?= 0
|
||
|
|
BANK_CHANNEL_BIT ?= 0
|
||
|
|
|
||
|
|
USE_LOADTIME_OPT ?= 1
|
||
|
|
GL4_DRI_BUILD ?= 0
|
||
|
|
VSC_VIR_BUILD ?= 1
|
||
|
|
USE_EXA_G2D ?= 0
|
||
|
|
GL4_LINUX_ENABLE ?= 1
|
||
|
|
|
||
|
|
SOC_PLATFORM ?= default
|
||
|
|
|
||
|
|
GPU_CONFIG ?= default
|
||
|
|
USE_VXC_BINARY ?= 0
|
||
|
|
USE_VXC_EMBEDDED ?= 0
|
||
|
|
|
||
|
|
USE_VSC_LITE ?= 0
|
||
|
|
|
||
|
|
USE_STATIC_STDCxx ?= 0
|
||
|
|
|
||
|
|
USE_CLANG ?= 0
|
||
|
|
|
||
|
|
#If need to user ori arch model, set to 1
|
||
|
|
ORI_NNARCHPERF ?= 0
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Option dependency.
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_ENABLE_3D),1)
|
||
|
|
ifeq ($(USE_OPENCL),1)
|
||
|
|
ifeq ($(LINUX_VSIMULATOR),1)
|
||
|
|
ENABLE_CL_GL ?= 0
|
||
|
|
BUILD_OPENCL_ICD:= 0
|
||
|
|
else ifeq ($(USE_VIP_ONLY),1)
|
||
|
|
ENABLE_CL_GL ?= 0
|
||
|
|
BUILD_OPENCL_ICD:= 0
|
||
|
|
else
|
||
|
|
ENABLE_CL_GL ?= 0
|
||
|
|
BUILD_OPENCL_ICD:= 0
|
||
|
|
endif
|
||
|
|
else
|
||
|
|
ENABLE_CL_GL ?= 0
|
||
|
|
BUILD_OPENCL_ICD:= 0
|
||
|
|
endif
|
||
|
|
else
|
||
|
|
BUILD_OPENCL_ICD := 0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_NO_VG),1)
|
||
|
|
VIVANTE_ENABLE_VG := 0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(gcdSTATIC_LINK),1)
|
||
|
|
GL_11_APPENDIX ?= _es11
|
||
|
|
GL_2_APPENDIX ?= _es2
|
||
|
|
GL_3_APPENDIX ?= _es3
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_OPENVX),1)
|
||
|
|
OPENVX_MAJOR_VERSION ?= 1
|
||
|
|
OPENVX_SUB_VERSION ?= 3
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(LINUX_OABI),1)
|
||
|
|
ABI ?= aapcs-linux
|
||
|
|
endif
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Initialize build flags.
|
||
|
|
|
||
|
|
ORIG_CFLAGS ?= $(CFLAGS)
|
||
|
|
ORIG_CXXFLAGS ?= $(CXXFLAGS)
|
||
|
|
ORIG_LDFLAGS ?= $(LDFLAGS)
|
||
|
|
ORIG_PFLAGS ?= $(PFLAGS)
|
||
|
|
|
||
|
|
export ORIG_CFLAGS ORIG_CXXFLAGS ORIG_LDFLAGS ORIG_PFLAGS
|
||
|
|
|
||
|
|
CFLAGS := $(ORIG_CFLAGS)
|
||
|
|
CXXFLAGS := $(ORIG_CXXFLAGS)
|
||
|
|
LDFLAGS := $(ORIG_LDFLAGS)
|
||
|
|
PFLAGS := $(ORIG_PFLAGS)
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Toolchain.
|
||
|
|
|
||
|
|
ifneq ($(YOCTO_BUILD),1)
|
||
|
|
ifeq ($(USE_ARMCC),1)
|
||
|
|
ARM_BASE ?= /home/software/ARM
|
||
|
|
ARM_VERSION ?= 4.0/650
|
||
|
|
CROSS_COMPILE ?= $(ARM_BASE)/RVCT/Programs/$(ARM_VERSION)/linux-pentium/arm
|
||
|
|
CFLAGS += -I$(ARM_BASE)/RVCT/Data/$(ARM_VERSION)/include/unix
|
||
|
|
CC := $(CROSS_COMPILE)cc
|
||
|
|
CXX := $(CROSS_COMPILE)cc
|
||
|
|
AR := $(CROSS_COMPILE)ar
|
||
|
|
AS := $(CROSS_COMPILE)as
|
||
|
|
LD := $(CROSS_COMPILE)link
|
||
|
|
else
|
||
|
|
CROSS_COMPILE ?= arm-none-linux-gnueabi-
|
||
|
|
CC := $(CROSS_COMPILE)gcc
|
||
|
|
CXX := $(CROSS_COMPILE)g++
|
||
|
|
AR := $(CROSS_COMPILE)ar
|
||
|
|
AS := $(CROSS_COMPILE)as
|
||
|
|
LD := $(CROSS_COMPILE)ld
|
||
|
|
RANLIB := $(CROSS_COMPILE)ranlib
|
||
|
|
STRIP := $(CROSS_COMPILE)strip
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
PKG_CONFIG ?= $(CROSS_COMPILE)pkg-config
|
||
|
|
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Resource.
|
||
|
|
|
||
|
|
KERNEL_DIR ?=
|
||
|
|
ROOTFS ?=
|
||
|
|
TOOL_DIR ?= /home/software/Linux
|
||
|
|
WAYLAND_DIR ?= $(TOOL_DIR)/wayland
|
||
|
|
|
||
|
|
VIVANTE_SDK_DIR ?= $(AQROOT)/build/sdk
|
||
|
|
VIVANTE_SDK_INC ?= $(VIVANTE_SDK_DIR)/include
|
||
|
|
VIVANTE_SDK_LIB ?= $(VIVANTE_SDK_DIR)/drivers
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_GBM),1)
|
||
|
|
GBM_CFLAGS ?= $(shell $(PKG_CONFIG) --cflags gbm 2>/dev/null)
|
||
|
|
GBM_LIBS ?= $(shell $(PKG_CONFIG) --libs gbm 2>/dev/null)
|
||
|
|
endif
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Target directory.
|
||
|
|
|
||
|
|
ifeq ($(DEBUG),1)
|
||
|
|
OBJ_DIR ?= bin_d
|
||
|
|
else
|
||
|
|
OBJ_DIR ?= bin_r
|
||
|
|
endif
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Release directory.
|
||
|
|
|
||
|
|
SDK_DIR ?= $(AQROOT)/build/sdk
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Force to use dma_coherent_* stuff.
|
||
|
|
|
||
|
|
NO_DMA_COHERENT ?= 0
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Set this value to 1 if you are using ARM L2 cache.
|
||
|
|
|
||
|
|
ENABLE_ARM_L2_CACHE := 0
|
||
|
|
|
||
|
|
################################################################
|
||
|
|
# Set this value to 1 if you are using DOVE board.
|
||
|
|
CONFIG_DOVE_GPU := 0
|
||
|
|
|
||
|
|
###############################################################
|
||
|
|
# Common flags.
|
||
|
|
LDFLAGS += $(LFLAGS)
|
||
|
|
ifneq ($(ROOTFS),)
|
||
|
|
LDFLAGS += --sysroot=$(ROOTFS)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq (,$(findstring -mcpu=,$(CC) $(CFLAGS)))
|
||
|
|
CPU_TYPE=0
|
||
|
|
CPU_ARCH=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_ARMCC),1)
|
||
|
|
CFLAGS += --c99 #--strict
|
||
|
|
else
|
||
|
|
ifneq ($(ABI),)
|
||
|
|
ifneq ($(ABI),0)
|
||
|
|
CFLAGS += -mabi=$(ABI)
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(ENDIANNESS),)
|
||
|
|
CFLAGS += $(ENDIANNESS)
|
||
|
|
# LDFLAGS += $(ENDIANNESS)
|
||
|
|
PFLAGS += $(ENDIANNESS)
|
||
|
|
endif
|
||
|
|
|
||
|
|
CFLAGS += -DLINUX
|
||
|
|
CFLAGS += -Wall -D_REENTRANT -fno-strict-aliasing
|
||
|
|
|
||
|
|
ifneq ($(CPU_TYPE),)
|
||
|
|
ifneq ($(CPU_TYPE),0)
|
||
|
|
CFLAGS += -mtune=$(CPU_TYPE)
|
||
|
|
# LDFLAGS += -mtune=$(CPU_TYPE)
|
||
|
|
PFLAGS += -mtune=$(CPU_TYPE)
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(CPU_ARCH),)
|
||
|
|
ifneq ($(CPU_ARCH),0)
|
||
|
|
CFLAGS += -march=$(CPU_ARCH)
|
||
|
|
# LDFLAGS += -march=$(CPU_ARCH)
|
||
|
|
PFLAGS += -march=$(CPU_ARCH)
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(FPU),)
|
||
|
|
CFLAGS += -mfpu=$(FPU)
|
||
|
|
CXXFLAGS += -mfpu=$(FPU)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(FLOAT_ABI),)
|
||
|
|
CFLAGS += -mfloat-abi=$(FLOAT_ABI)
|
||
|
|
CXXFLAGS += -mfloat-abi=$(FLOAT_ABI)
|
||
|
|
# LDFLAGS += -mfloat-abi=$(FLOAT_ABI)
|
||
|
|
PFLAGS += -mfloat-abi=$(FLOAT_ABI)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(LINUX_OABI),1)
|
||
|
|
CFLAGS += -DLINUX_OABI
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(filter asan, $(DEBUG)),)
|
||
|
|
CFLAGS +=-fsanitize=address -g -O
|
||
|
|
LFLAGS +=-fsanitize=address -lasan
|
||
|
|
LDFLAGS +=-fsanitize=address -lasan
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(filter systrace-api, $(DEBUG)),)
|
||
|
|
CFLAGS += -DgcdSYSTRACE=1 -DLINUX -DgcdDEBUG=gcdDEBUG_TRACE
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(DEBUG),1)
|
||
|
|
# CFLAGS += -g3 -ggdb3 -O0 -DDEBUG -D_DEBUG -DgcdDEBUG=1
|
||
|
|
CFLAGS += -g -O0 -DDEBUG -D_DEBUG -DgcdDEBUG=1
|
||
|
|
else
|
||
|
|
ifeq ("$(DEBUG)", "valgrind")
|
||
|
|
CFLAGS += -g -O -DgcdBUILT_FOR_VALGRIND=1
|
||
|
|
else
|
||
|
|
CFLAGS += -O2
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ("$(ARCH_TYPE)", "x86_64")
|
||
|
|
CFLAGS += -DX86_64_ARCH
|
||
|
|
else ifeq ("$(ARCH_TYPE)", "arm64")
|
||
|
|
CFLAGS += -DARM64_ARCH
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_LINUX_PCIE),1)
|
||
|
|
CFLAGS += -DUSE_LINUX_PCIE=1
|
||
|
|
else
|
||
|
|
CFLAGS += -DUSE_LINUX_PCIE=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
CFLAGS += -DgcdENABLE_3D=$(VIVANTE_ENABLE_3D)
|
||
|
|
CFLAGS += -DgcdENABLE_2D=$(VIVANTE_ENABLE_2D)
|
||
|
|
CFLAGS += -DgcdENABLE_VG=$(VIVANTE_ENABLE_VG)
|
||
|
|
CFLAGS += -DgcdVG_NONE=$(VIVANTE_NO_VG)
|
||
|
|
|
||
|
|
CFLAGS += -DVX_VA40_EXT_SUPPORT=$(VIVANTE_ENABLE_40BITS_VA) -DgcdENABLE_40BIT_VA=$(VIVANTE_ENABLE_40BITS_VA)
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_ENABLE_DEV_BUILD),1)
|
||
|
|
CFLAGS += -DgcdVX_DEV_BUILD
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_NO_GL4),1)
|
||
|
|
CFLAGS += -DVIVANTE_NO_GL4
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_NO_VG),1)
|
||
|
|
CFLAGS += -DVIVANTE_NO_VG
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_ENABLE_3D),1)
|
||
|
|
CFLAGS += -DgcdUSE_VX=$(USE_OPENVX)
|
||
|
|
else
|
||
|
|
CFLAGS += -DgcdUSE_VX=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(VIVANTE_ENABLE_3D)_$(VIVANTE_ENABLE_VG),0_0)
|
||
|
|
CFLAGS += -DUSE_VDK=$(USE_VDK)
|
||
|
|
else
|
||
|
|
CFLAGS += -DUSE_VDK=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
CFLAGS += -DgcdMOVG=$(USE_MOVG)
|
||
|
|
|
||
|
|
ifeq ($(USE_BANK_ALIGNMENT),1)
|
||
|
|
CFLAGS += -DgcdENABLE_BANK_ALIGNMENT=1
|
||
|
|
|
||
|
|
ifneq ($(BANK_BIT_START),0)
|
||
|
|
ifneq ($(BANK_BIT_END),0)
|
||
|
|
CFLAGS += -DgcdBANK_BIT_START=$(BANK_BIT_START)
|
||
|
|
CFLAGS += -DgcdBANK_BIT_END=$(BANK_BIT_END)
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(BANK_CHANNEL_BIT),0)
|
||
|
|
CFLAGS += -DgcdBANK_CHANNEL_BIT=$(BANK_CHANNEL_BIT)
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_GBM),1)
|
||
|
|
CFLAGS += -DEGL_API_GBM
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_NULLWS),1)
|
||
|
|
CFLAGS += -DEGL_API_NULLWS
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_FB),1)
|
||
|
|
CFLAGS += -DEGL_API_FB
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_WL),1)
|
||
|
|
CFLAGS += -DEGL_API_WL -Wno-deprecated-declarations
|
||
|
|
ifeq ($(GL4_DRI_BUILD),1)
|
||
|
|
CFLAGS += -DDRI_PIXMAPRENDER_ASYNC
|
||
|
|
CFLAGS += -DGL4_DRI_BUILD
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_DRI),1)
|
||
|
|
CFLAGS += -DDRI_PIXMAPRENDER_ASYNC
|
||
|
|
CFLAGS += -DGL4_DRI_BUILD
|
||
|
|
CFLAGS += -DEGL_API_DRI
|
||
|
|
ifneq ($(ROOTFS),)
|
||
|
|
CFLAGS += -I$(ROOTFS)/usr/include
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(X11_DRI3),1)
|
||
|
|
CFLAGS += -DDRI_PIXMAPRENDER_ASYNC
|
||
|
|
CFLAGS += -DGL4_DRI_BUILD
|
||
|
|
CFLAGS += -DX11_DRI3
|
||
|
|
ifneq ($(ROOTFS),)
|
||
|
|
CFLAGS += -I$(ROOTFS)/usr/include
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_X),1)
|
||
|
|
CFLAGS += -DEGL_API_X
|
||
|
|
ifneq ($(ROOTFS),)
|
||
|
|
CFLAGS += -I$(ROOTFS)/usr/include
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(EGL_API_DFB),1)
|
||
|
|
CFLAGS += -DEGL_API_DFB
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(STATIC_LINK),1)
|
||
|
|
CFLAGS += -DSTATIC_LINK
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_NEW_LINUX_SIGNAL),1)
|
||
|
|
CFLAGS += -DUSE_NEW_LINUX_SIGNAL=1
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(USE_ARMCC),1)
|
||
|
|
CXXFLAGS += -fno-short-enums
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq (,$(EGL_APPENDIX))
|
||
|
|
CFLAGS += -D_EGL_APPENDIX=$(EGL_APPENDIX)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(gcdSTATIC_LINK),1)
|
||
|
|
CFLAGS += -DgcdSTATIC_LINK=1
|
||
|
|
else
|
||
|
|
CFLAGS += -DgcdSTATIC_LINK=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(gcdIGNORE_DRIVER_VERSIONS_MISMATCH),1)
|
||
|
|
CFLAGS += -DgcdIGNORE_DRIVER_VERSIONS_MISMATCH=1
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq (,$(GL_2_APPENDIX))
|
||
|
|
CFLAGS += -D_GL_2_APPENDIX=$(GL_2_APPENDIX)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(GL_11_APPENDIX),)
|
||
|
|
CFLAGS += -D_GL_11_APPENDIX=$(GL_11_APPENDIX)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(GL_3_APPENDIX),)
|
||
|
|
CFLAGS += -D_GL_3_APPENDIX=$(GL_3_APPENDIX)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifneq ($(VG_APPENDIX),)
|
||
|
|
CFLAGS += -D_VG_APPENDIX=$(VG_APPENDIX)
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(REGISTER_READ_FROM_USER),1)
|
||
|
|
CFLAGS += -DgcdREGISTER_READ_FROM_USER=1
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(REGISTER_WRITE_FROM_USER),1)
|
||
|
|
CFLAGS += -DgcdREGISTER_WRITE_FROM_USER=1
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(FPGA_BUILD),1)
|
||
|
|
CFLAGS += -DgcdFPGA_BUILD=1
|
||
|
|
else
|
||
|
|
CFLAGS += -DgcdFPGA_BUILD=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_LOADTIME_OPT),1)
|
||
|
|
CFLAGS += -DGC_ENABLE_LOADTIME_OPT=1
|
||
|
|
else
|
||
|
|
CFLAGS += -DGC_ENABLE_LOADTIME_OPT=0
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_OPENVX),1)
|
||
|
|
CFLAGS += -DVX_VERSION=VX_VERSION_${OPENVX_MAJOR_VERSION}_${OPENVX_SUB_VERSION}
|
||
|
|
ifeq ($(USE_BROKER),1)
|
||
|
|
CFLAGS += -DgcdUSE_BROKER=1
|
||
|
|
CFLAGS += -DNO_KERNEL
|
||
|
|
NO_KERNEL := 1
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(USE_VXC_BINARY),1)
|
||
|
|
CFLAGS += -DgcdUSE_VXC_BINARY=1
|
||
|
|
ifeq ($(GPU_CONFIG),)
|
||
|
|
$(error "ERROR: missing GPU_CONFIG build setting")
|
||
|
|
endif
|
||
|
|
else
|
||
|
|
CFLAGS += -DgcdUSE_VXC_BINARY=0
|
||
|
|
|
||
|
|
ifeq ($(USE_VXC_EMBEDDED),1)
|
||
|
|
CFLAGS += -DgcdUSE_VXC_EMBEDDED=1
|
||
|
|
else
|
||
|
|
CFLAGS += -DgcdUSE_VXC_EMBEDDED=0
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(LINUX_EMULATOR),1)
|
||
|
|
CFLAGS += -DEMULATOR
|
||
|
|
CFLAGS += -DLINUXEMULATOR
|
||
|
|
endif
|
||
|
|
|
||
|
|
ifeq ($(LINUX_VSIMULATOR),1)
|
||
|
|
CFLAGS += -DEMULATOR -DVSIMULATOR_DEBUG
|
||
|
|
CXXFLAGS += -DEMULATOR -DVSIMULATOR_DEBUG
|
||
|
|
endif
|
||
|
|
|
||
|
|
|
||
|
|
ifeq ($(ENABLE_VIDEO_MEMORY_MIRROR),1)
|
||
|
|
CFLAGS += -DgcdENABLE_VIDEO_MEMORY_MIRROR=1
|
||
|
|
endif
|
||
|
|
|
||
|
|
CFLAGS += -DgcdGC355_MEM_PRINT=$(GC355_MEM_PRINT)
|
||
|
|
CFLAGS += -DgcdGC355_PROFILER=$(GC355_PROFILER)
|
||
|
|
|
||
|
|
# platform configs.
|
||
|
|
soc_vendor := $(firstword $(subst -, ,$(SOC_PLATFORM)))
|
||
|
|
soc_board := $(lastword $(subst -, ,$(SOC_PLATFORM)))
|
||
|
|
|
||
|
|
-include hal/os/linux/user/platform/$(soc_vendor)/gc_hal_user_platform_$(soc_board).config
|
||
|
|
|
||
|
|
################################################################################
|
||
|
|
# Build with profiler
|
||
|
|
|
||
|
|
CFLAGS += -DVIVANTE_PROFILER=1
|
||
|
|
CFLAGS += -DVIVANTE_PROFILER_CONTEXT=1
|
||
|
|
|
||
|
|
ifeq ($(USE_FILE_OFFSET_BITS_64),1)
|
||
|
|
CFLAGS += -D_FILE_OFFSET_BITS=64
|
||
|
|
endif
|
||
|
|
|
||
|
|
#If need to user ori arch model, set to 1
|
||
|
|
#CFLAGS += -DORI_NNARCHPERF
|
||
|
|
|
||
|
|
#If need to remove cl libs
|
||
|
|
ifeq ($(REMOVE_CL_LIBS),1)
|
||
|
|
CFLAGS += -DREMOVE_CL_LIBS=$(REMOVE_CL_LIBS)
|
||
|
|
endif
|
||
|
|
|
||
|
|
################################################################################
|
||
|
|
#
|
||
|
|
# Third party resources, DFB_DIR to specify DirectFB SDK path
|
||
|
|
# To build DirectFB Accelerator and gfx test, must set DFB_DIR
|
||
|
|
#
|
||
|
|
#DFB_DIR ?= $(TOOL_DIR)/dfb
|
||
|
|
|
||
|
|
################################################################################
|
||
|
|
# Module directories.
|
||
|
|
|
||
|
|
#CARCH
|
||
|
|
CARCHDIR := $(AQROOT)/arch/vipArchPerfMdl_dev/
|
||
|
|
|
||
|
|
# drivers
|
||
|
|
GAL_DIR := $(AQROOT)/hal
|
||
|
|
EGL_DIR := $(AQROOT)/driver/khronos/libEGL
|
||
|
|
GLES11_DIR := $(AQROOT)/driver/khronos/libGLESv11
|
||
|
|
GLES2X_DIR := $(AQROOT)/driver/khronos/libGLESv3
|
||
|
|
GL4X_DIR := $(AQROOT)/driver/khronos/libGL4
|
||
|
|
LIBDRM_DIR := $(AQROOT)/driver/X/libdrm-2.4.107
|
||
|
|
|
||
|
|
CL11_DIR := $(AQROOT)/driver/khronos/libCL
|
||
|
|
CL11_ICD_DIR := $(AQROOT)/driver/khronos/libCL/icdloader12
|
||
|
|
CLC_DIR := $(AQROOT)/compiler/libCLC
|
||
|
|
|
||
|
|
GLSLC_DIR := $(AQROOT)/compiler/libGLSLC
|
||
|
|
VSC_DIR := $(AQROOT)/compiler/libVSC
|
||
|
|
VSC_Lite_DIR := $(AQROOT)/compiler/libVSC_Lite
|
||
|
|
|
||
|
|
VULKAN_DIR := $(AQROOT)/driver/khronos/libVulkan12
|
||
|
|
SPIRV_DIR := $(AQROOT)/compiler/libSPIRV
|
||
|
|
|
||
|
|
OPENVX_DIR := $(AQROOT)/driver/khronos/libOpenVX
|
||
|
|
|
||
|
|
VDK_DIR := $(AQROOT)/sdk/vdk
|
||
|
|
VIVANTE_LIB_DIR := $(AQROOT)/sdk/vivante
|
||
|
|
VG113D_DIR := $(AQROOT)/driver/khronos/libOpenVG_3D/vg11/driver
|
||
|
|
VG112D_DIR := $(AQROOT)/driver/khronos/libOpenVG
|
||
|
|
GFX_DIR := $(AQROOT)/driver/dfb
|
||
|
|
|
||
|
|
ifeq ($(USE_EXA_G2D),1)
|
||
|
|
EXA_DIR := $(AQROOT)/driver/X/EXA_G2D/src
|
||
|
|
else
|
||
|
|
EXA_DIR := $(AQROOT)/driver/X/EXA/src
|
||
|
|
endif
|
||
|
|
|
||
|
|
# applications
|
||
|
|
EGL_TEST_DIR := $(AQROOT)/test/egl
|
||
|
|
ES11_TEST_DIR := $(AQROOT)/test/es11/Linux
|
||
|
|
ES2X_TEST_DIR := $(AQROOT)/test/es20
|
||
|
|
ES2X_EXTERN_DIR := $(AQROOT)/test/es20/extern
|
||
|
|
ES20_TEST_DIR := $(AQROOT)/sdk/samples/es20
|
||
|
|
CL11_TEST_DIR := $(AQROOT)/test/cl11
|
||
|
|
|
||
|
|
VDK_TEST_DIR := $(AQROOT)/sdk/samples/vdk
|
||
|
|
HAL_TEST_DIR := $(AQROOT)/sdk
|
||
|
|
HAL_CUSTOM_DIR := $(AQROOT)/test/hal/Linux/custom
|
||
|
|
CHIPINFO_DIR := $(AQROOT)/test/hal/common/chipinfo
|
||
|
|
|
||
|
|
GLBES11_DIR := $(AQROOT)/test/es11/GLBenchmark_ES1.1v2
|
||
|
|
GLBES20_DIR := $(AQROOT)/test/es20/GLBenchmark2_RC2
|
||
|
|
GLBES30_DIR := $(AQROOT)/../../../TEST/SW/Benchmarks/Kishonti/GLBenchmark3.0/AA21A9
|
||
|
|
GLBESNAVI11_DIR := $(AQROOT)/test/es11/GLBenchmark_Navi_Beta2/es11
|
||
|
|
GLBESNAVI20_DIR := $(AQROOT)/test/es11/GLBenchmark_Navi_Beta2/es20
|
||
|
|
GLBESNAVI_DIR := $(AQROOT)/test/es20/GLBenchNavi
|
||
|
|
#GLBESNAVI_DIR := $(AQROOT)/test/es20/GLBenchmark_navi
|
||
|
|
GTF_DIR := $(AQROOT)/test/es20/conform/GTF_ES/glsl/GTF
|
||
|
|
CTS_ES30_DIR := $(AQROOT)/../../../TEST/SW/Khronos/Conformance/es30/conform/GTF_ES/glsl/GTF
|
||
|
|
VGMARK_DIR := $(AQROOT)/test/vg/common/VGMark_10_src
|
||
|
|
VGMARK11_DIR := $(AQROOT)/test/vg11/VGMark11/VGMark11_addendum
|
||
|
|
VGCTS_DIR := $(AQROOT)/test/vg/ovg_1.0.1_cts_rc10
|
||
|
|
VGCTS11_DIR := $(AQROOT)/test/vg/ovg_1.1_cts_rc10
|
||
|
|
|
||
|
|
ifeq ($(VIVANTE_ENABLE_3D),1)
|
||
|
|
ifeq ($(USE_VDK),1)
|
||
|
|
TUTORIAL_DIR := $(ES11_TEST_DIR)
|
||
|
|
MM06_DIR := $(AQROOT)/test/es11/common/3DMarkMobile06/configuration/vdk
|
||
|
|
CONFORM_DIR := $(AQROOT)/test/es11/conform
|
||
|
|
else
|
||
|
|
MM06_DIR := $(ES11_TEST_DIR)/3DMarkMobile06
|
||
|
|
endif
|
||
|
|
endif
|
||
|
|
|
||
|
|
MM07_DIR := $(ES2X_TEST_DIR)/3DMarkMobileES2_RC_src
|
||
|
|
MM07U_DIR := $(ES2X_TEST_DIR)/3DMarkMobileES2_Update
|
||
|
|
SM20_DIR := $(AQROOT)/test/es20/SimulationMark_ES_2.0
|
||
|
|
KANZI_DIR := $(AQROOT)/test/es20/Kanzi_UI_demo/Kanzi_UI_src
|
||
|
|
AB20_DIR := $(ES2X_TEST_DIR)/Automotive
|
||
|
|
JRC_DIR := $(ES2X_TEST_DIR)/JRC
|
||
|
|
GFX_TEST_DIR := $(AQROOT)/test/gfx
|
||
|
|
ES20_GEARS_DIR := $(AQROOT)/test/es20/gles2-cm-gears
|
||
|
|
ES11_UNIT_DIR := $(AQROOT)/test/es11/common/UnitTest
|
||
|
|
ES11_EXTERN_DIR := $(AQROOT)/test/es11/extern
|
||
|
|
ES11_EXTENSION_DIR := $(AQROOT)/test/es11/Extensions
|
||
|
|
ES11_GEARS_DIR := $(AQROOT)/test/es11/gles1-cm-gears
|
||
|
|
VG11_UNIT_DIR := $(AQROOT)/test/vg11/UnitTest
|
||
|
|
VG11_EXTERN_DIR := $(AQROOT)/test/vg11/extern
|
||
|
|
CL11_UNIT_DIR := $(AQROOT)/test/cl11/UnitTest
|
||
|
|
CL11_EXTERN_DIR := $(AQROOT)/test/cl11/extern
|
||
|
|
CL11_CONFORM_DIR := $(AQROOT)/test/cl11/conform
|
||
|
|
CL11_SAMPLE_DIR := $(AQROOT)/sdk/samples/cl11
|
||
|
|
|
||
|
|
|
||
|
|
TEXTURE5_DIR := $(ES2X_TEST_DIR)/texture5
|
||
|
|
TEXTURE7_DIR := $(ES2X_TEST_DIR)/texture7
|
||
|
|
|
||
|
|
ACTINIUM_DIR := $(ES2X_TEST_DIR)/actinium
|
||
|
|
VVLAUNCHER_DIR := $(ES2X_TEST_DIR)/vv_launcher
|
||
|
|
|
||
|
|
VIDEOCUBE_DIR := $(AQROOT)/test/es11/extern/VideoCube
|
||
|
|
VC_TESTCASE_DIR := $(AQROOT)/test/es20/vCompiler_Testcase
|
||
|
|
|