blob: 331f6d30f47261864a7c5654a1efcc2df7db5490 [file] [log] [blame]
Thomas Gleixnerb886d83c2019-06-01 10:08:55 +02001# SPDX-License-Identifier: GPL-2.0-only
Lv Zheng391fc232015-07-28 13:25:25 +08002# tools/power/acpi/Makefile.config - ACPI tool Makefile
3#
4# Copyright (c) 2015, Intel Corporation
5# Author: Lv Zheng <lv.zheng@intel.com>
6#
Lv Zheng391fc232015-07-28 13:25:25 +08007
Lv Zhengd5a4b1a2016-11-16 17:27:34 +08008ifeq ($(srctree),)
9srctree := $(patsubst %/,%,$(dir $(shell pwd)))
10srctree := $(patsubst %/,%,$(dir $(srctree)))
11#$(info Determined 'srctree' to be $(srctree))
12endif
Lv Zheng391fc232015-07-28 13:25:25 +080013
Lv Zhengd5a4b1a2016-11-16 17:27:34 +080014include $(srctree)/../../scripts/Makefile.include
15
16OUTPUT=$(srctree)/
Lv Zheng391fc232015-07-28 13:25:25 +080017ifeq ("$(origin O)", "command line")
Zhengyuan Liu1985f8c2019-12-14 00:27:12 +080018 OUTPUT := $(O)/tools/power/acpi/
Lv Zheng391fc232015-07-28 13:25:25 +080019endif
Lv Zhengd5a4b1a2016-11-16 17:27:34 +080020#$(info Determined 'OUTPUT' to be $(OUTPUT))
Lv Zheng391fc232015-07-28 13:25:25 +080021
22# --- CONFIGURATION BEGIN ---
23
24# Set the following to `true' to make a unstripped, unoptimized
25# binary. Leave this set to `false' for production use.
26DEBUG ?= true
27
28# make the build silent. Set this to something else to make it noisy again.
29V ?= false
30
31# Prefix to the directories we're installing to
32DESTDIR ?=
33
34# --- CONFIGURATION END ---
35
36# Directory definitions. These are default and most probably
37# do not need to be changed. Please note that DESTDIR is
38# added in front of any of them
39
40bindir ?= /usr/bin
41sbindir ?= /usr/sbin
42mandir ?= /usr/man
43
44# Toolchain: what tools do we use, and what options do they need:
45
46INSTALL = /usr/bin/install -c
47INSTALL_PROGRAM = ${INSTALL}
48INSTALL_DATA = ${INSTALL} -m 644
49INSTALL_SCRIPT = ${INSTALL_PROGRAM}
50
51# If you are running a cross compiler, you may want to set this
52# to something more interesting, like "arm-linux-". If you want
53# to compile vs uClibc, that can be done here as well.
54CROSS = #/usr/i386-linux-uclibc/usr/bin/i386-uclibc-
Andy Shevchenkoa3bcf2d2016-06-17 16:01:08 +030055CROSS_COMPILE ?= $(CROSS)
Jiri Slaby75539612018-04-24 09:43:44 +020056LD = $(CC)
Lv Zheng391fc232015-07-28 13:25:25 +080057
58# check if compiler option is supported
59cc-supports = ${shell if $(CC) ${1} -S -o /dev/null -x c /dev/null > /dev/null 2>&1; then echo "$(1)"; fi;}
60
61# use '-Os' optimization if available, else use -O2
62OPTIMIZATION := $(call cc-supports,-Os,-O2)
63
64WARNINGS := -Wall
65WARNINGS += $(call cc-supports,-Wstrict-prototypes)
66WARNINGS += $(call cc-supports,-Wdeclaration-after-statement)
67
Lv Zhengd5a4b1a2016-11-16 17:27:34 +080068KERNEL_INCLUDE := $(OUTPUT)include
69ACPICA_INCLUDE := $(srctree)/../../../drivers/acpi/acpica
Lv Zheng391fc232015-07-28 13:25:25 +080070CFLAGS += -D_LINUX -I$(KERNEL_INCLUDE) -I$(ACPICA_INCLUDE)
71CFLAGS += $(WARNINGS)
72
73ifeq ($(strip $(V)),false)
74 QUIET=@
75 ECHO=@echo
76else
77 QUIET=
78 ECHO=@\#
79endif
80
81# if DEBUG is enabled, then we do not strip or optimize
82ifeq ($(strip $(DEBUG)),true)
83 CFLAGS += -O1 -g -DDEBUG
84 STRIPCMD = /bin/true -Since_we_are_debugging
85else
86 CFLAGS += $(OPTIMIZATION) -fomit-frame-pointer
87 STRIPCMD = $(STRIP) -s --remove-section=.note --remove-section=.comment
88endif