cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

Makefile (1419B)


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