125 lines
3.3 KiB
Modula-2
125 lines
3.3 KiB
Modula-2
##############################################################################
|
|
#
|
|
# Copyright (c) 2005 - 2021 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.
|
|
#
|
|
##############################################################################
|
|
|
|
################################################################
|
|
# Arch.
|
|
|
|
ARCH_TYPE ?= arm64
|
|
CPU_TYPE ?= cortex-a55
|
|
CPU_ARCH ?=
|
|
ABI ?=
|
|
ENDIANNESS ?=
|
|
FPU ?=
|
|
FLOAT_ABI ?=
|
|
|
|
gcdSTATIC_LINK ?= 0
|
|
|
|
CROSS_COMPILE ?= aarch64-linux-gnu-
|
|
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
|
|
|
|
PKG_CONFIG ?= $(CROSS_COMPILE)pkg-config
|
|
|
|
|
|
################################################################
|
|
# Resource.
|
|
|
|
VIVANTE_SDK_DIR ?= $(AQROOT)
|
|
VIVANTE_SDK_INC ?= $(VIVANTE_SDK_DIR)/include
|
|
VIVANTE_SDK_LIB ?= $(VIVANTE_SDK_DIR)/lib/$(ARCH_TYPE)/$(SOC_BOARD)
|
|
|
|
################################################################
|
|
# Target directory.
|
|
|
|
ifeq ($(DEBUG),1)
|
|
OBJ_DIR ?= bin_d
|
|
else
|
|
OBJ_DIR ?= bin_r
|
|
endif
|
|
|
|
###############################################################
|
|
# Common flags.
|
|
LDFLAGS += $(LFLAGS)
|
|
ifneq ($(ROOTFS),)
|
|
LDFLAGS += --sysroot=$(ROOTFS)
|
|
endif
|
|
|
|
ifneq (,$(findstring -mcpu=,$(CC) $(CFLAGS)))
|
|
CPU_TYPE=0
|
|
CPU_ARCH=0
|
|
endif
|
|
|
|
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
|
|
|
|
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 ($(DEBUG),1)
|
|
# CFLAGS += -g3 -ggdb3 -O0 -DDEBUG -D_DEBUG -DgcdDEBUG=1
|
|
CFLAGS += -g -O1 -DDEBUG -D_DEBUG -DgcdDEBUG=1
|
|
else
|
|
ifeq ("$(DEBUG)", "valgrind")
|
|
CFLAGS += -g -O -DgcdBUILT_FOR_VALGRIND=1
|
|
else
|
|
CFLAGS += -O2
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(gcdSTATIC_LINK),1)
|
|
CFLAGS += -DgcdSTATIC_LINK=1
|
|
else
|
|
CFLAGS += -DgcdSTATIC_LINK=0
|
|
endif
|