diff options
author | Andy Shevchenko <andriy.shevchenko@linux.intel.com> | 2017-07-26 05:59:29 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2017-07-26 07:25:23 -0400 |
commit | f325b73dc4db9d6c2393805b4f468e82d730764e (patch) | |
tree | 93a087d81bf2ed839b4e4d10aba63127ba976162 /tools/spi | |
parent | 5771a8c08880cdca3bfb4a3fc6d309d6bba20877 (diff) |
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>
Diffstat (limited to 'tools/spi')
-rw-r--r-- | tools/spi/Build | 2 | ||||
-rw-r--r-- | tools/spi/Makefile | 56 |
2 files changed, 56 insertions, 2 deletions
diff --git a/tools/spi/Build b/tools/spi/Build new file mode 100644 index 000000000000..8e8466033d99 --- /dev/null +++ b/tools/spi/Build | |||
@@ -0,0 +1,2 @@ | |||
1 | spidev_test-y += spidev_test.o | ||
2 | spidev_fdx-y += spidev_fdx.o | ||
diff --git a/tools/spi/Makefile b/tools/spi/Makefile index 3815b18ba070..aa9517260715 100644 --- a/tools/spi/Makefile +++ b/tools/spi/Makefile | |||
@@ -1,6 +1,58 @@ | |||
1 | include ../scripts/Makefile.include | ||
2 | |||
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 | |||
1 | CC = $(CROSS_COMPILE)gcc | 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 | ||
2 | 23 | ||
3 | all: spidev_test spidev_fdx | 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 | clean: | 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 | ||