Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

spi: tools: move to tools buildsystem

There is a nice buildsystem dedicated for userspace tools in Linux kernel tree.
Switch spi target to be built by it.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>

authored by

Andy Shevchenko and committed by
Mark Brown
f325b73d 5771a8c0

+57 -3
+2
tools/spi/Build
··· 1 + spidev_test-y += spidev_test.o 2 + spidev_fdx-y += spidev_fdx.o
+55 -3
tools/spi/Makefile
··· 1 - CC = $(CROSS_COMPILE)gcc 1 + include ../scripts/Makefile.include 2 2 3 - all: spidev_test spidev_fdx 3 + ifeq ($(srctree),) 4 + srctree := $(patsubst %/,%,$(dir $(CURDIR))) 5 + srctree := $(patsubst %/,%,$(dir $(srctree))) 6 + endif 7 + 8 + # Do not use make's built-in rules 9 + # (this improves performance and avoids hard-to-debug behaviour); 10 + MAKEFLAGS += -r 11 + 12 + CC = $(CROSS_COMPILE)gcc 13 + LD = $(CROSS_COMPILE)ld 14 + CFLAGS += -O2 -Wall -g -D_GNU_SOURCE -I$(OUTPUT)include 15 + 16 + ALL_TARGETS := spidev_test spidev_fdx 17 + ALL_PROGRAMS := $(patsubst %,$(OUTPUT)%,$(ALL_TARGETS)) 18 + 19 + all: $(ALL_PROGRAMS) 20 + 21 + export srctree OUTPUT CC LD CFLAGS 22 + include $(srctree)/tools/build/Makefile.include 23 + 24 + # 25 + # We need the following to be outside of kernel tree 26 + # 27 + $(OUTPUT)include/linux/spi/spidev.h: ../../include/uapi/linux/spi/spidev.h 28 + mkdir -p $(OUTPUT)include/linux/spi 2>&1 || true 29 + ln -sf $(CURDIR)/../../include/uapi/linux/spi/spidev.h $@ 30 + 31 + prepare: $(OUTPUT)include/linux/spi/spidev.h 32 + 33 + # 34 + # spidev_test 35 + # 36 + SPIDEV_TEST_IN := $(OUTPUT)spidev_test-in.o 37 + $(SPIDEV_TEST_IN): prepare FORCE 38 + $(Q)$(MAKE) $(build)=spidev_test 39 + $(OUTPUT)spidev_test: $(SPIDEV_TEST_IN) 40 + $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ 41 + 42 + # 43 + # spidev_fdx 44 + # 45 + SPIDEV_FDX_IN := $(OUTPUT)spidev_fdx-in.o 46 + $(SPIDEV_FDX_IN): prepare FORCE 47 + $(Q)$(MAKE) $(build)=spidev_fdx 48 + $(OUTPUT)spidev_fdx: $(SPIDEV_FDX_IN) 49 + $(QUIET_LINK)$(CC) $(CFLAGS) $(LDFLAGS) $< -o $@ 4 50 5 51 clean: 6 - $(RM) spidev_test spidev_fdx 52 + rm -f $(ALL_PROGRAMS) 53 + rm -f $(OUTPUT)include/linux/spi/spidev.h 54 + find $(if $(OUTPUT),$(OUTPUT),.) -name '*.o' -delete -o -name '\.*.d' -delete 55 + 56 + FORCE: 57 + 58 + .PHONY: all clean FORCE prepare