diff --git a/test/Makefile.guess b/test/Makefile.guess new file mode 100644 index 00000000000..1916d09a6cd --- /dev/null +++ b/test/Makefile.guess @@ -0,0 +1,14 @@ +# Try to guess the build directory: +# we look for subdirectories of ../.. that look like ninja build dirs. + +ifeq ($(BUILD_DIR),) + dirs = $(dir $(wildcard ../../*/.ninja_log)) + ifeq ($(dirs),) + $(error Cannot guess build dir, set BUILD_DIR) + endif + ifneq ($(firstword $(dirs)),$(dirs)) + $(warning Candidates: $(dirs)) + $(error Too many build dirs to pick from, set BUILD_DIR) + endif + BUILD_DIR=$(dirs) +endif diff --git a/test/TEST-01-BASIC/Makefile b/test/TEST-01-BASIC/Makefile index c29fd067639..b895de8bcb5 100644 --- a/test/TEST-01-BASIC/Makefile +++ b/test/TEST-01-BASIC/Makefile @@ -1,2 +1,4 @@ +include ../Makefile.guess + all setup clean run: - @basedir=../.. TEST_BASE_DIR=../ ./test.sh --$@ + @basedir=../.. TEST_BASE_DIR=../ BUILD_DIR=$(BUILD_DIR) ./test.sh --$@ diff --git a/test/TEST-13-NSPAWN-SMOKE/Makefile b/test/TEST-13-NSPAWN-SMOKE/Makefile index e58c0d909b0..41cca23c7fb 100644 --- a/test/TEST-13-NSPAWN-SMOKE/Makefile +++ b/test/TEST-13-NSPAWN-SMOKE/Makefile @@ -1,5 +1,7 @@ +include ../Makefile.guess + all setup run: - @basedir=../.. TEST_BASE_DIR=../ ./test.sh --$@ + @basedir=../.. TEST_BASE_DIR=../ BUILD_DIR=$(BUILD_DIR) ./test.sh --$@ clean: @basedir=../.. TEST_BASE_DIR=../ ./test.sh --clean @rm -f has-overflow