mirror of
https://github.com/platformio/platformio-core.git
synced 2025-07-30 10:07:14 +02:00
Fixed "non-existent variable ''projenv''" when ESP-IDF is used // Resolve #4329
This commit is contained in:
@ -333,7 +333,7 @@ class LibBuilderBase:
|
|||||||
LibBuilderBase._INCLUDE_DIRS_CACHE = [
|
LibBuilderBase._INCLUDE_DIRS_CACHE = [
|
||||||
self.env.Dir(d)
|
self.env.Dir(d)
|
||||||
for d in ProjectAsLibBuilder(
|
for d in ProjectAsLibBuilder(
|
||||||
self.envorigin, "$PROJECT_DIR"
|
self.envorigin, "$PROJECT_DIR", export_projenv=False
|
||||||
).get_include_dirs()
|
).get_include_dirs()
|
||||||
]
|
]
|
||||||
for lb in self.env.GetLibBuilders():
|
for lb in self.env.GetLibBuilders():
|
||||||
@ -862,10 +862,15 @@ class PlatformIOLibBuilder(LibBuilderBase):
|
|||||||
|
|
||||||
class ProjectAsLibBuilder(LibBuilderBase):
|
class ProjectAsLibBuilder(LibBuilderBase):
|
||||||
def __init__(self, env, *args, **kwargs):
|
def __init__(self, env, *args, **kwargs):
|
||||||
|
export_projenv = kwargs.get("export_projenv", True)
|
||||||
|
if "export_projenv" in kwargs:
|
||||||
|
del kwargs["export_projenv"]
|
||||||
# backup original value, will be reset in base.__init__
|
# backup original value, will be reset in base.__init__
|
||||||
project_src_filter = env.get("SRC_FILTER")
|
project_src_filter = env.get("SRC_FILTER")
|
||||||
super().__init__(env, *args, **kwargs)
|
super().__init__(env, *args, **kwargs)
|
||||||
self.env["SRC_FILTER"] = project_src_filter
|
self.env["SRC_FILTER"] = project_src_filter
|
||||||
|
if export_projenv:
|
||||||
|
env.Export(dict(projenv=self.env))
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def include_dir(self):
|
def include_dir(self):
|
||||||
@ -1130,7 +1135,6 @@ def ConfigureProjectLibBuilder(env):
|
|||||||
_print_deps_tree(lb, level + 1)
|
_print_deps_tree(lb, level + 1)
|
||||||
|
|
||||||
project = ProjectAsLibBuilder(env, "$PROJECT_DIR")
|
project = ProjectAsLibBuilder(env, "$PROJECT_DIR")
|
||||||
env.Export(dict(projenv=project.env))
|
|
||||||
|
|
||||||
if "test" in env.GetBuildType():
|
if "test" in env.GetBuildType():
|
||||||
project.env.ConfigureTestTarget()
|
project.env.ConfigureTestTarget()
|
||||||
|
Reference in New Issue
Block a user