1 # SPDX-License-Identifier: GPL-2.0-only !! 1 CC = $(CROSS_COMPILE)gcc 2 include ../scripts/Makefile.include << 3 2 4 bindir ?= /usr/bin !! 3 all: spidev_test spidev_fdx 5 << 6 ifeq ($(srctree),) << 7 srctree := $(patsubst %/,%,$(dir $(CURDIR))) << 8 srctree := $(patsubst %/,%,$(dir $(srctree))) << 9 endif << 10 << 11 # Do not use make's built-in rules << 12 # (this improves performance and avoids hard-t << 13 MAKEFLAGS += -r << 14 << 15 CFLAGS += -O2 -Wall -g -D_GNU_SOURCE -I$(OUTPU << 16 << 17 ALL_TARGETS := spidev_test spidev_fdx << 18 ALL_PROGRAMS := $(patsubst %,$(OUTPUT)%,$(ALL_ << 19 << 20 all: $(ALL_PROGRAMS) << 21 << 22 export srctree OUTPUT CC LD CFLAGS << 23 include $(srctree)/tools/build/Makefile.includ << 24 << 25 # << 26 # We need the following to be outside of kerne << 27 # << 28 $(OUTPUT)include/linux/spi: ../../include/uapi << 29 mkdir -p $(OUTPUT)include/linux/spi 2> << 30 ln -sf $(CURDIR)/../../include/uapi/li << 31 ln -sf $(CURDIR)/../../include/uapi/li << 32 << 33 prepare: $(OUTPUT)include/linux/spi << 34 << 35 # << 36 # spidev_test << 37 # << 38 SPIDEV_TEST_IN := $(OUTPUT)spidev_test-in.o << 39 $(SPIDEV_TEST_IN): prepare FORCE << 40 $(Q)$(MAKE) $(build)=spidev_test << 41 $(OUTPUT)spidev_test: $(SPIDEV_TEST_IN) << 42 $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS << 43 << 44 # << 45 # spidev_fdx << 46 # << 47 SPIDEV_FDX_IN := $(OUTPUT)spidev_fdx-in.o << 48 $(SPIDEV_FDX_IN): prepare FORCE << 49 $(Q)$(MAKE) $(build)=spidev_fdx << 50 $(OUTPUT)spidev_fdx: $(SPIDEV_FDX_IN) << 51 $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS << 52 4 53 clean: 5 clean: 54 rm -f $(ALL_PROGRAMS) !! 6 $(RM) spidev_test spidev_fdx 55 rm -rf $(OUTPUT)include/ << 56 find $(or $(OUTPUT),.) -name '*.o' -de << 57 find $(or $(OUTPUT),.) -name '\.*.o.d' << 58 find $(or $(OUTPUT),.) -name '\.*.o.cm << 59 << 60 install: $(ALL_PROGRAMS) << 61 install -d -m 755 $(DESTDIR)$(bindir); << 62 for program in $(ALL_PROGRAMS); do << 63 install $$program $(DESTDIR)$( << 64 done << 65 << 66 FORCE: << 67 << 68 .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.