diff --git a/tools/platformio-build-esp32.py b/tools/platformio-build-esp32.py index 3ee9d7bda99..3a93ed0715c 100644 --- a/tools/platformio-build-esp32.py +++ b/tools/platformio-build-esp32.py @@ -278,16 +278,20 @@ libs = [] +variants_dir = join(FRAMEWORK_DIR, "variants") + +if "build.variants_dir" in env.BoardConfig(): + variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir")) + if "build.variant" in env.BoardConfig(): env.Append( CPPPATH=[ - join(FRAMEWORK_DIR, "variants", - env.BoardConfig().get("build.variant")) + join(variants_dir, env.BoardConfig().get("build.variant")) ] ) libs.append(env.BuildLibrary( join("$BUILD_DIR", "FrameworkArduinoVariant"), - join(FRAMEWORK_DIR, "variants", env.BoardConfig().get("build.variant")) + join(variants_dir, env.BoardConfig().get("build.variant")) )) envsafe = env.Clone() diff --git a/tools/platformio-build-esp32s2.py b/tools/platformio-build-esp32s2.py index 33be0fd7d4c..b23e6b1f94e 100644 --- a/tools/platformio-build-esp32s2.py +++ b/tools/platformio-build-esp32s2.py @@ -264,16 +264,20 @@ libs = [] +variants_dir = join(FRAMEWORK_DIR, "variants") + +if "build.variants_dir" in env.BoardConfig(): + variants_dir = join("$PROJECT_DIR", env.BoardConfig().get("build.variants_dir")) + if "build.variant" in env.BoardConfig(): env.Append( CPPPATH=[ - join(FRAMEWORK_DIR, "variants", - env.BoardConfig().get("build.variant")) + join(variants_dir, env.BoardConfig().get("build.variant")) ] ) libs.append(env.BuildLibrary( join("$BUILD_DIR", "FrameworkArduinoVariant"), - join(FRAMEWORK_DIR, "variants", env.BoardConfig().get("build.variant")) + join(variants_dir, env.BoardConfig().get("build.variant")) )) envsafe = env.Clone()