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