Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make: introduce common BUILD_DIR #10038

Merged
merged 3 commits into from
Jan 16, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ doc/doxygen/*.db
doc/doxygen/*.tmp
# Built binaries
*bin
# Build directory
/build
# Backup files
*~
*.orig
Expand Down
3 changes: 3 additions & 0 deletions Makefile.include
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand All @@ -39,6 +40,7 @@ __DIRECTORY_VARIABLES := \
RIOTTOOLS \
RIOTPROJECT \
APPDIR \
BUILD_DIR \
BINDIRBASE \
BINDIR \
CCACHE_BASEDIR \
Expand All @@ -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))
Expand Down
4 changes: 4 additions & 0 deletions makefiles/docker.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -108,14 +108,18 @@ ETC_LOCALTIME = $(realpath /etc/localtime)
# hardware which may not be reachable from inside the container.
..in-docker-container:
@$(COLOR_ECHO) '$(COLOR_GREEN)Launching build container using image "$(DOCKER_IMAGE)".$(COLOR_RESET)'
@# HACK: Handle directory creation here until it is provided globally
$(Q)mkdir -p $(BUILD_DIR)
$(DOCKER) run $(DOCKER_FLAGS) -t -u "$$(id -u)" \
-v '$(RIOTBASE):$(DOCKER_BUILD_ROOT)/riotbase' \
-v '$(BUILD_DIR):$(DOCKER_BUILD_ROOT)/build' \
-v '$(RIOTCPU):$(DOCKER_BUILD_ROOT)/riotcpu' \
-v '$(RIOTBOARD):$(DOCKER_BUILD_ROOT)/riotboard' \
-v '$(RIOTMAKE):$(DOCKER_BUILD_ROOT)/riotmake' \
-v '$(RIOTPROJECT):$(DOCKER_BUILD_ROOT)/riotproject' \
-v '$(ETC_LOCALTIME):/etc/localtime:ro' \
-e 'RIOTBASE=$(DOCKER_BUILD_ROOT)/riotbase' \
-e 'BUILD_DIR=$(DOCKER_BUILD_ROOT)/build' \
-e 'CCACHE_BASEDIR=$(DOCKER_BUILD_ROOT)/riotbase' \
-e 'RIOTCPU=$(DOCKER_BUILD_ROOT)/riotcpu' \
-e 'RIOTBOARD=$(DOCKER_BUILD_ROOT)/riotboard' \
Expand Down
1 change: 1 addition & 0 deletions makefiles/scan-build.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ SCANBUILD_ENV_VARS := \
BINDIR \
BINDIRBASE \
BOARD \
BUILD_DIR \
BUILDRELPATH \
CC \
CFLAGS \
Expand Down
1 change: 1 addition & 0 deletions makefiles/vars.inc.mk
Original file line number Diff line number Diff line change
Expand Up @@ -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

Expand Down