1# SPDX-License-Identifier: GPL-2.0-only
2# tools/power/acpi/Makefile.config - ACPI tool Makefile
3#
4# Copyright (c) 2015, Intel Corporation
5#   Author: Lv Zheng <lv.zheng@intel.com>
6#
7
8ifeq ($(srctree),)
9srctree := $(patsubst %/,%,$(dir $(shell pwd)))
10srctree := $(patsubst %/,%,$(dir $(srctree)))
11#$(info Determined 'srctree' to be $(srctree))
12endif
13
14include $(srctree)/../../scripts/Makefile.include
15
16OUTPUT=$(srctree)/
17ifeq ("$(origin O)", "command line")
18	OUTPUT := $(O)/tools/power/acpi/
19endif
20#$(info Determined 'OUTPUT' to be $(OUTPUT))
21
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-
55CROSS_COMPILE ?= $(CROSS)
56LD = $(CC)
57
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
68KERNEL_INCLUDE := $(OUTPUT)include
69ACPICA_INCLUDE := $(srctree)/../../../drivers/acpi/acpica
70CFLAGS += -D_LINUX -I$(KERNEL_INCLUDE) -I$(ACPICA_INCLUDE)
71CFLAGS += $(WARNINGS)
72MKDIR = mkdir
73
74ifeq ($(strip $(V)),false)
75	QUIET=@
76	ECHO=@echo
77else
78	QUIET=
79	ECHO=@\#
80endif
81
82# if DEBUG is enabled, then we do not strip or optimize
83ifeq ($(strip $(DEBUG)),true)
84	CFLAGS += -O1 -g -DDEBUG
85	STRIPCMD = /bin/true -Since_we_are_debugging
86else
87	CFLAGS += $(OPTIMIZATION) -fomit-frame-pointer
88	STRIPCMD = $(STRIP) -s --remove-section=.note --remove-section=.comment
89endif
90