xref: /OK3568_Linux_fs/kernel/drivers/gpu/arm/mali400/umplock/Makefile (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#
2*4882a593Smuzhiyun# Copyright (C) 2012, 2016-2017 ARM Limited. All rights reserved.
3*4882a593Smuzhiyun#
4*4882a593Smuzhiyun# This program is free software and is provided to you under the terms of the GNU General Public License version 2
5*4882a593Smuzhiyun# as published by the Free Software Foundation, and any use by you of this program is subject to the terms of such GNU licence.
6*4882a593Smuzhiyun#
7*4882a593Smuzhiyun# A copy of the licence is included with the program, and can also be obtained from Free Software
8*4882a593Smuzhiyun# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
9*4882a593Smuzhiyun#
10*4882a593Smuzhiyun
11*4882a593Smuzhiyun# default to building for the host
12*4882a593SmuzhiyunARCH ?= $(shell uname -m)
13*4882a593Smuzhiyun
14*4882a593Smuzhiyun# linux build system integration
15*4882a593Smuzhiyun
16*4882a593Smuzhiyunifneq ($(KERNELRELEASE),)
17*4882a593Smuzhiyun# Inside the kernel build system
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunEXTRA_CFLAGS += -I$(KBUILD_EXTMOD)
20*4882a593Smuzhiyun
21*4882a593SmuzhiyunSRC =	umplock_driver.c
22*4882a593Smuzhiyun
23*4882a593SmuzhiyunMODULE:=umplock.ko
24*4882a593Smuzhiyun
25*4882a593Smuzhiyunobj-m := $(MODULE:.ko=.o)
26*4882a593Smuzhiyun$(MODULE:.ko=-y) := $(SRC:.c=.o)
27*4882a593Smuzhiyun
28*4882a593Smuzhiyun$(MODULE:.ko=-objs) := $(SRC:.c=.o)
29*4882a593Smuzhiyun
30*4882a593Smuzhiyunelse
31*4882a593Smuzhiyun# Outside the kernel build system
32*4882a593Smuzhiyun#
33*4882a593Smuzhiyun#
34*4882a593Smuzhiyun
35*4882a593Smuzhiyun# Get any user defined KDIR-<names> or maybe even a hardcoded KDIR
36*4882a593Smuzhiyun-include KDIR_CONFIGURATION
37*4882a593Smuzhiyun
38*4882a593Smuzhiyun# Define host system directory
39*4882a593SmuzhiyunKDIR-$(shell uname -m):=/lib/modules/$(shell uname -r)/build
40*4882a593Smuzhiyun
41*4882a593Smuzhiyunifeq ($(ARCH), arm)
42*4882a593Smuzhiyun	# when compiling for ARM we're cross compiling
43*4882a593Smuzhiyun	export CROSS_COMPILE ?= arm-none-linux-gnueabi-
44*4882a593Smuzhiyun	CONFIG ?= arm
45*4882a593Smuzhiyunelse
46*4882a593Smuzhiyun	# Compiling for the host
47*4882a593Smuzhiyun	CONFIG ?= $(shell uname -m)
48*4882a593Smuzhiyunendif
49*4882a593Smuzhiyun
50*4882a593Smuzhiyun# default cpu to select
51*4882a593SmuzhiyunCPU ?= $(shell uname -m)
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun# look up KDIR based om CPU selection
54*4882a593SmuzhiyunKDIR ?= $(KDIR-$(CPU))
55*4882a593Smuzhiyun
56*4882a593Smuzhiyunifeq ($(KDIR),)
57*4882a593Smuzhiyun$(error No KDIR found for platform $(CPU))
58*4882a593Smuzhiyunendif
59*4882a593Smuzhiyun
60*4882a593Smuzhiyunall:
61*4882a593Smuzhiyun	$(MAKE) ARCH=$(ARCH) -C $(KDIR) M=$(CURDIR)
62*4882a593Smuzhiyun
63*4882a593Smuzhiyunkernelrelease:
64*4882a593Smuzhiyun	$(MAKE) -C $(KDIR) kernelrelease
65*4882a593Smuzhiyun
66*4882a593Smuzhiyunclean:
67*4882a593Smuzhiyun	$(MAKE) ARCH=$(ARCH) -C $(KDIR) M=$(CURDIR) clean
68*4882a593Smuzhiyun
69*4882a593Smuzhiyunendif
70