linux/tools/power/x86/intel-speed-select/Makefile
<<
>>
Prefs
   1# SPDX-License-Identifier: GPL-2.0
   2include ../../../scripts/Makefile.include
   3
   4bindir ?= /usr/bin
   5
   6ifeq ($(srctree),)
   7srctree := $(patsubst %/,%,$(dir $(CURDIR)))
   8srctree := $(patsubst %/,%,$(dir $(srctree)))
   9srctree := $(patsubst %/,%,$(dir $(srctree)))
  10srctree := $(patsubst %/,%,$(dir $(srctree)))
  11endif
  12
  13# Do not use make's built-in rules
  14# (this improves performance and avoids hard-to-debug behaviour);
  15MAKEFLAGS += -r
  16
  17override CFLAGS += -O2 -Wall -g -D_GNU_SOURCE -I$(OUTPUT)include
  18
  19ALL_TARGETS := intel-speed-select
  20ALL_PROGRAMS := $(patsubst %,$(OUTPUT)%,$(ALL_TARGETS))
  21
  22all: $(ALL_PROGRAMS)
  23
  24export srctree OUTPUT CC LD CFLAGS
  25include $(srctree)/tools/build/Makefile.include
  26
  27#
  28# We need the following to be outside of kernel tree
  29#
  30$(OUTPUT)include/linux/isst_if.h: ../../../../include/uapi/linux/isst_if.h
  31        mkdir -p $(OUTPUT)include/linux 2>&1 || true
  32        ln -sf $(CURDIR)/../../../../include/uapi/linux/isst_if.h $@
  33
  34prepare: $(OUTPUT)include/linux/isst_if.h
  35
  36ISST_IN := $(OUTPUT)intel-speed-select-in.o
  37
  38$(ISST_IN): prepare FORCE
  39        $(Q)$(MAKE) $(build)=intel-speed-select
  40$(OUTPUT)intel-speed-select: $(ISST_IN)
  41        $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@
  42
  43clean:
  44        rm -f $(ALL_PROGRAMS)
  45        rm -rf $(OUTPUT)include/linux/isst_if.h
  46        find $(if $(OUTPUT),$(OUTPUT),.) -name '*.o' -delete -o -name '\.*.d' -delete
  47
  48install: $(ALL_PROGRAMS)
  49        install -d -m 755 $(DESTDIR)$(bindir);          \
  50        for program in $(ALL_PROGRAMS); do              \
  51                install $$program $(DESTDIR)$(bindir);  \
  52        done
  53
  54FORCE:
  55
  56.PHONY: all install clean FORCE prepare
  57