diff --git a/Makefile.include b/Makefile.include index d85ce551da..dd31b6b2b0 100644 --- a/Makefile.include +++ b/Makefile.include @@ -23,6 +23,7 @@ RIOTTOOLS ?= $(RIOTBASE)/dist/tools RIOTPROJECT ?= $(shell git rev-parse --show-toplevel 2>/dev/null || pwd) GITCACHE ?= $(RIOTTOOLS)/git/git-cache GIT_CACHE_DIR ?= $(HOME)/.gitcache +BUILD_DIR ?= $(RIOTBASE)/build APPDIR ?= $(CURDIR) BINDIRBASE ?= $(APPDIR)/bin BINDIR ?= $(BINDIRBASE)/$(BOARD) @@ -39,6 +40,7 @@ __DIRECTORY_VARIABLES := \ RIOTTOOLS \ RIOTPROJECT \ APPDIR \ + BUILD_DIR \ BINDIRBASE \ BINDIR \ CCACHE_BASEDIR \ @@ -58,6 +60,7 @@ override RIOTTOOLS := $(abspath $(RIOTTOOLS)) override RIOTPROJECT := $(abspath $(RIOTPROJECT)) override GITCACHE := $(abspath $(GITCACHE)) override APPDIR := $(abspath $(APPDIR)) +override BUILD_DIR := $(abspath $(BUILD_DIR)) override BINDIRBASE := $(abspath $(BINDIRBASE)) override BINDIR := $(abspath $(BINDIR)) override PKGDIRBASE := $(abspath $(PKGDIRBASE)) diff --git a/makefiles/scan-build.inc.mk b/makefiles/scan-build.inc.mk index 5160971c7e..10fb376f06 100644 --- a/makefiles/scan-build.inc.mk +++ b/makefiles/scan-build.inc.mk @@ -7,6 +7,7 @@ SCANBUILD_ENV_VARS := \ BINDIR \ BINDIRBASE \ BOARD \ + BUILD_DIR \ BUILDRELPATH \ CC \ CFLAGS \ diff --git a/makefiles/vars.inc.mk b/makefiles/vars.inc.mk index 0dee732764..cff66ea75b 100644 --- a/makefiles/vars.inc.mk +++ b/makefiles/vars.inc.mk @@ -29,6 +29,7 @@ export RIOTPROJECT # Top level git root of the project being built, or export RIOTMAKE # Location of all supplemental Makefiles (such as this file) export BINDIRBASE # This is the folder where the application should be built in. For each BOARD a different subfolder is used. export BINDIR # This is the folder where the application should be built in. +export BUILD_DIR # This is the base folder to store common build files and artifacts, e.g. test results. export APPDIR # The base folder containing the application export PKGDIRBASE # The base folder for building packages