Fixed an issue when configuration file options partly ignored when `--project-conf` // Resolve #3034 (#3055)

* Fixed an issue when configuration file options partly ignored when using custom ``--project-conf`` // Resolve #3034

* Py2 compatible makedirs

* Fix circle dependency

* Fix broken import in test examples

* Fix history

* Remove YAPF markers

* PyLint fix

* Fix invalid project conf path

* Move PIO Core to the root on Windows, issue with long CPPPATHs

* Respect global PLATFORMIO_BUILD_CACHE_DIR env var

* Fix Appveyor paths

* Minor changes
This commit is contained in:
Ivan Kravets authored and GitHub committed 2019-09-27 14:13:53 +03:00
1 parent 94f8afec38
commit d2abac9b18
40 files changed
+411 -378

No files matched your search

+7 -12
View File
@@ -23,12 +23,7 @@ from platformio import fs, util
from platformio.compat import get_file_contents
from platformio.proc import where_is_program
from platformio.project.config import ProjectConfig
from platformio.project.helpers import (
get_project_lib_dir,
get_project_libdeps_dir,
get_project_src_dir,
load_project_ide_data,
)
from platformio.project.helpers import load_project_ide_data
class ProjectGenerator(object):
@@ -76,7 +71,7 @@ class ProjectGenerator(object):
else where_is_program("platformio"),
"env_path": os.getenv("PATH"),
"env_pathsep": os.pathsep,
} # yapf: disable
}
# default env configuration
tpl_vars.update(self.config.items(env=self.env_name, as_dict=True))
@@ -87,13 +82,13 @@ class ProjectGenerator(object):
tpl_vars.update(
{
"src_files": self.get_src_files(),
"project_src_dir": get_project_src_dir(),
"project_lib_dir": get_project_lib_dir(),
"project_src_dir": self.config.get_optional_dir("src"),
"project_lib_dir": self.config.get_optional_dir("lib"),
"project_libdeps_dir": join(
get_project_libdeps_dir(), self.env_name
self.config.get_optional_dir("libdeps"), self.env_name
),
}
) # yapf: disable
)
for key, value in tpl_vars.items():
if key.endswith(("_path", "_dir")):
@@ -109,7 +104,7 @@ class ProjectGenerator(object):
def get_src_files(self):
result = []
with fs.cd(self.project_dir):
for root, _, files in os.walk(get_project_src_dir()):
for root, _, files in os.walk(self.config.get_optional_dir("src")):
for f in files:
result.append(relpath(join(root, f)))
return result