mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-26 12:34:41 +08:00
11f8cb8903
Compiling the ACPI tools when output directory parameter is specified, but the output directory is not present, triggers the following error: make O=/data/test/tmp/ -C tools/power/acpi/ make: Entering directory '/data/src/kernel/linux/tools/power/acpi' DESCEND tools/acpidbg make[1]: Entering directory '/data/src/kernel/linux/tools/power/acpi/tools/acpidbg' MKDIR include CP include CC tools/acpidbg/acpidbg.o Assembler messages: Fatal error: can't create /data/test/tmp/tools/power/acpi/tools/acpidbg/acpidbg.o: No such file or directory make[1]: *** [../../Makefile.rules:24: /data/test/tmp/tools/power/acpi/tools/acpidbg/acpidbg.o] Error 1 make[1]: Leaving directory '/data/src/kernel/linux/tools/power/acpi/tools/acpidbg' make: *** [Makefile:18: acpidbg] Error 2 make: Leaving directory '/data/src/kernel/linux/tools/power/acpi' which occurs because the output directory has not been created yet. Fix this issue by creating the output directory before compiling. Reported-by: Andy Shevchenko <andriy.shevchenko@intel.com> Signed-off-by: Chen Yu <yu.c.chen@intel.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> [ rjw: New subject, changelog edits ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
50 lines
1.5 KiB
Makefile
50 lines
1.5 KiB
Makefile
# SPDX-License-Identifier: GPL-2.0-only
|
|
# tools/power/acpi/Makefile.rules - ACPI tool Makefile
|
|
#
|
|
# Copyright (c) 2015, Intel Corporation
|
|
# Author: Lv Zheng <lv.zheng@intel.com>
|
|
#
|
|
|
|
objdir := $(OUTPUT)tools/$(TOOL)/
|
|
toolobjs := $(addprefix $(objdir),$(TOOL_OBJS))
|
|
$(OUTPUT)$(TOOL): $(toolobjs) FORCE
|
|
$(ECHO) " LD " $(subst $(OUTPUT),,$@)
|
|
$(QUIET) $(LD) $(CFLAGS) $(LDFLAGS) $(toolobjs) -L$(OUTPUT) -o $@
|
|
$(ECHO) " STRIP " $(subst $(OUTPUT),,$@)
|
|
$(QUIET) $(STRIPCMD) $@
|
|
|
|
$(KERNEL_INCLUDE):
|
|
$(ECHO) " MKDIR " $(subst $(OUTPUT),,$@)
|
|
$(QUIET) mkdir -p $(KERNEL_INCLUDE)
|
|
$(ECHO) " CP " $(subst $(OUTPUT),,$@)
|
|
$(QUIET) cp -rf $(srctree)/../../../include/acpi $(KERNEL_INCLUDE)/
|
|
|
|
$(objdir)%.o: %.c $(KERNEL_INCLUDE)
|
|
$(ECHO) " CC " $(subst $(OUTPUT),,$@)
|
|
$(QUIET) $(MKDIR) -p $(objdir) 2>/dev/null
|
|
$(QUIET) $(CC) -c $(CFLAGS) -o $@ $<
|
|
|
|
all: $(OUTPUT)$(TOOL)
|
|
clean:
|
|
$(ECHO) " RMOBJ " $(subst $(OUTPUT),,$(objdir))
|
|
$(QUIET) find $(objdir) \( -not -type d \)\
|
|
-and \( -name '*~' -o -name '*.[oas]' \)\
|
|
-type f -print | xargs rm -f
|
|
$(ECHO) " RM " $(TOOL)
|
|
$(QUIET) rm -f $(OUTPUT)$(TOOL)
|
|
$(ECHO) " RMINC " $(subst $(OUTPUT),,$(KERNEL_INCLUDE))
|
|
$(QUIET) rm -rf $(KERNEL_INCLUDE)
|
|
|
|
install-tools:
|
|
$(ECHO) " INST " $(TOOL)
|
|
$(QUIET) $(INSTALL) -d $(DESTDIR)$(sbindir)
|
|
$(QUIET) $(INSTALL_PROGRAM) $(OUTPUT)$(TOOL) $(DESTDIR)$(sbindir)
|
|
uninstall-tools:
|
|
$(ECHO) " UNINST " $(TOOL)
|
|
$(QUIET) rm -f $(DESTDIR)$(sbindir)/$(TOOL)
|
|
|
|
install: all install-tools $(EXTRA_INSTALL)
|
|
uninstall: uninstall-tools $(EXTRA_UNINSTALL)
|
|
|
|
.PHONY: FORCE
|