# # Copyright (C) 2010-2012 ARM Limited. All rights reserved. # # This program is free software and is provided to you under the terms of the GNU General Public License version 2 # as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence. # # A copy of the licence is included with the program, and can also be obtained from Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # Set default configuration to use, if Makefile didn't provide one. # Change this to use a different config.h CONFIG ?= default # Validate selected config ifneq ($(shell [ -d $(src)/arch-$(CONFIG) ] && [ -f $(src)/arch-$(CONFIG)/config.h ] && echo "OK"), OK) $(warning Current directory is $(src)) #$(error No configuration found for config $(CONFIG). Check that arch-$(CONFIG)/config.h exists) else # Link arch to the selected arch-config directory $(shell [ -L $(src)/arch ] && rm $(src)/arch) $(shell ln -sf arch-$(CONFIG) $(src)/arch) $(shell touch $(src)/arch/config.h) endif UDD_FILE_PREFIX = ../mali/ # Get subversion revision number, fall back to 0000 if no svn info is available SVN_INFO = (cd $(src); svn info 2>/dev/null) ifneq ($(shell $(SVN_INFO) 2>/dev/null),) # SVN detected SVN_REV := $(shell $(SVN_INFO) | grep '^Revision: '| sed -e 's/^Revision: //' 2>/dev/null) DRIVER_REV := $(MALI_RELEASE_NAME)-r$(SVN_REV) CHANGE_DATE := $(shell $(SVN_INFO) | grep '^Last Changed Date: ' | cut -d: -f2- | cut -b2-) CHANGED_REVISION := $(shell $(SVN_INFO) | grep '^Last Changed Rev: ' | cut -d: -f2- | cut -b2-) REPO_URL := $(shell $(SVN_INFO) | grep '^URL: ' | cut -d: -f2- | cut -b2-) else # SVN GIT_REV := $(shell cd $(src); git describe --always 2>/dev/null) ifneq ($(GIT_REV),) # Git detected DRIVER_REV := $(MALI_RELEASE_NAME)-$(GIT_REV) CHANGE_DATE := $(shell cd $(src); git log -1 --format="%ci") CHANGED_REVISION := $(GIT_REV) REPO_URL := $(shell cd $(src); git describe --all --always 2>/dev/null) else # Git # No Git or SVN detected DRIVER_REV := $(MALI_RELEASE_NAME) CHANGE_DATE := $(MALI_RELEASE_NAME) CHANGED_REVISION := $(MALI_RELEASE_NAME) endif endif ccflags-y += -DSVN_REV=$(SVN_REV) ccflags-y += -DSVN_REV_STRING=\"$(DRIVER_REV)\" ccflags-y += -I$(src) -I$(src)/common -I$(src)/linux -I$(src)/../mali/common -I$(src)/../mali/linux -I$(src)/../../ump/include/ump ccflags-y += -DMALI_STATE_TRACKING=0 ccflags-y += -DMALI_ENABLE_CPU_CYCLES=0 ccflags-$(CONFIG_UMP_DEBUG) += -DDEBUG # For customer releases the Linux Device Drivers will be provided as ARM proprietary and GPL releases: # The ARM proprietary product will only include the license/proprietary directory # The GPL product will only include the license/gpl directory ifeq ($(wildcard $(src)/linux/license/gpl/*),) ccflags-y += -I$(src)/linux/license/proprietary -I$(src)/../mali/linux/license/proprietary else ccflags-y += -I$(src)/linux/license/gpl -I$(src)/../mali/linux/license/gpl endif ump-y = common/ump_kernel_common.o \ common/ump_kernel_descriptor_mapping.o \ common/ump_kernel_api.o \ common/ump_kernel_ref_drv.o \ linux/ump_kernel_linux.o \ linux/ump_kernel_memory_backend_os.o \ linux/ump_kernel_memory_backend_dedicated.o \ linux/ump_memory_backend.o \ linux/ump_ukk_wrappers.o \ linux/ump_ukk_ref_wrappers.o \ linux/ump_osk_atomics.o \ linux/ump_osk_low_level_mem.o \ linux/ump_osk_misc.o \ linux/ump_kernel_random_mapping.o \ $(UDD_FILE_PREFIX)linux/mali_osk_atomics.o \ $(UDD_FILE_PREFIX)linux/mali_osk_locks.o \ $(UDD_FILE_PREFIX)linux/mali_osk_memory.o \ $(UDD_FILE_PREFIX)linux/mali_osk_math.o \ $(UDD_FILE_PREFIX)linux/mali_osk_misc.o obj-$(CONFIG_UMP) := ump.o