xref: /linux/tools/power/acpi/Makefile.rules (revision 69bfec7548f4c1595bac0e3ddfc0458a5af31f4c)
1# SPDX-License-Identifier: GPL-2.0-only
2# tools/power/acpi/Makefile.rules - ACPI tool Makefile
3#
4# Copyright (c) 2015, Intel Corporation
5#   Author: Lv Zheng <lv.zheng@intel.com>
6#
7
8objdir := $(OUTPUT)tools/$(TOOL)/
9toolobjs := $(addprefix $(objdir),$(TOOL_OBJS))
10$(OUTPUT)$(TOOL): $(toolobjs) FORCE
11	$(ECHO) "  LD      " $(subst $(OUTPUT),,$@)
12	$(QUIET) $(LD) $(CFLAGS) $(toolobjs) $(LDFLAGS) -L$(OUTPUT) -o $@
13	$(ECHO) "  STRIP   " $(subst $(OUTPUT),,$@)
14	$(QUIET) $(STRIPCMD) $@
15
16$(KERNEL_INCLUDE):
17	$(ECHO) "  MKDIR   " $(subst $(OUTPUT),,$@)
18	$(QUIET) mkdir -p $(KERNEL_INCLUDE)
19	$(ECHO) "  CP      " $(subst $(OUTPUT),,$@)
20	$(QUIET) cp -rf $(srctree)/../../../include/acpi $(KERNEL_INCLUDE)/
21
22$(objdir)%.o: %.c $(KERNEL_INCLUDE)
23	$(ECHO) "  CC      " $(subst $(OUTPUT),,$@)
24	$(QUIET) $(MKDIR) -p $(objdir) 2>/dev/null
25	$(QUIET) $(CC) -c $(CFLAGS) -o $@ $<
26
27all: $(OUTPUT)$(TOOL)
28clean:
29	$(ECHO) "  RMOBJ   " $(subst $(OUTPUT),,$(objdir))
30	$(QUIET) find $(objdir) \( -not -type d \)\
31		 -and \( -name '*~' -o -name '*.[oas]' \)\
32		 -type f -print | xargs rm -f
33	$(ECHO) "  RM      " $(TOOL)
34	$(QUIET) rm -f $(OUTPUT)$(TOOL)
35	$(ECHO) "  RMINC   " $(subst $(OUTPUT),,$(KERNEL_INCLUDE))
36	$(QUIET) rm -rf $(KERNEL_INCLUDE)
37
38install-tools:
39	$(ECHO) "  INST    " $(TOOL)
40	$(QUIET) $(INSTALL) -d $(DESTDIR)$(sbindir)
41	$(QUIET) $(INSTALL_PROGRAM) $(OUTPUT)$(TOOL) $(DESTDIR)$(sbindir)
42uninstall-tools:
43	$(ECHO) "  UNINST  " $(TOOL)
44	$(QUIET) rm -f $(DESTDIR)$(sbindir)/$(TOOL)
45
46install: all install-tools $(EXTRA_INSTALL)
47uninstall: uninstall-tools $(EXTRA_UNINSTALL)
48
49.PHONY: FORCE
50