Open cladmi opened 6 years ago
More information on this one, the issue is only present when providing variable configuration from the command line.
What I should address is that directories are overridden only if necessary in this line:
https://github.com/RIOT-OS/RIOT/blob/c7894d2bfc0c437da2ca6472ac5c2c439b358330/Makefile.include#L69
To not have different behavior when setting a variable on the command line.
@MrKevinWeiss this is the tracking issue of https://github.com/RIOT-OS/RIOT/pull/9831
Description
When building using
buildtest
the build is not using the BOARDbin/$(BOARD)
directory but the default BOARD defined in the application MakefileBOARD ?= native
.This also has consequences on
dist/tools/compile_test/compile_test.py
which is usingbuildtest
.EDIT: This only happens when setting variables on the command line as then the
MAKEOVERRIDES
from here are done even if these variables are not set.https://github.com/RIOT-OS/RIOT/blob/c7894d2bfc0c437da2ca6472ac5c2c439b358330/Makefile.include#L69
I think a solution is to only override variables which were set from the command line (by checking
origin
) before changing there value.A better fix would be to never override but require variables to have been set absolute if set from the command line, (and maybe also environment) but it changes the behavior.
Steps to reproduce the issue
I am using https://github.com/RIOT-OS/RIOT/pull/9741 to make it more visible during compilation but can be done without.
When building for
iotlab-m3
the output is saved inbin/native
.When running some compilations with
buildtest
I also sometime had strange issues with packages withnative
but was correct when build alone. I think it is related to an issue with the packageclean
which was shown with this path collision.Expected results
Building in
bin/iotlab-m3
Actual results
Build in
bin/native
.Versions
Ubuntu 16.04