]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
selftests: gpio: Fix OUTPUT directory in Makefile
authorDaniel Díaz <daniel.diaz@linaro.org>
Fri, 7 Sep 2018 14:34:55 +0000 (09:34 -0500)
committerShuah Khan (Samsung OSG) <shuah@kernel.org>
Wed, 24 Oct 2018 20:49:37 +0000 (14:49 -0600)
When simply running `make' from the selftests top dir, this
error shows up:

  cc -O2 -g -std=gnu99 -Wall -I../../../../usr/include/ -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/uuid    gpio-mockup-chardev.c ../../../gpio/gpio-utils.o  -lmount -o gpio-mockup-chardev
  cc: error: ../../../gpio/gpio-utils.o: No such file or directory
  <builtin>: recipe for target 'gpio-mockup-chardev' failed
  make[1]: *** [gpio-mockup-chardev] Error 1

because the output directory is set to "selftests/gpio" and
all binaries built from ../../../gpio/ end up there. In fact,
they appear as, exempli gratia:
* gpiogpio-event-mon
* gpiogpio-hammer
* gpioinclude/
* gpiolsgpio
which is wrong, as it's missing a directory separator
somewhere.

This patch sets straight the output directory when building
../../../gpio/ so that binaries don't cross paths.

Signed-off-by: Daniel Díaz <daniel.diaz@linaro.org>
Signed-off-by: Shuah Khan (Samsung OSG) <shuah@kernel.org>
tools/testing/selftests/gpio/Makefile

index a4a01ec8b2a59ff6e24538185d16f534ff383c37..46648427d537ee972396dd0c4b4d652417963bec 100644 (file)
@@ -7,7 +7,7 @@ TEST_PROGS := gpio-mockup.sh
 TEST_FILES := gpio-mockup-sysfs.sh
 TEST_PROGS_EXTENDED := gpio-mockup-chardev
 
-GPIODIR := ../../../gpio
+GPIODIR := $(realpath ../../../gpio)
 GPIOOBJ := gpio-utils.o
 
 include ../lib.mk
@@ -16,11 +16,11 @@ all: $(TEST_PROGS_EXTENDED)
 
 override define CLEAN
        $(RM) $(TEST_PROGS_EXTENDED)
-       $(MAKE) -C $(GPIODIR) clean
+       $(MAKE) -C $(GPIODIR) OUTPUT=$(GPIODIR)/ clean
 endef
 
 $(TEST_PROGS_EXTENDED):| khdr
 $(TEST_PROGS_EXTENDED): $(GPIODIR)/$(GPIOOBJ)
 
 $(GPIODIR)/$(GPIOOBJ):
-       $(MAKE) -C $(GPIODIR)
+       $(MAKE) OUTPUT=$(GPIODIR)/ -C $(GPIODIR)