diff --git a/platformio.ini b/platformio.ini
index 08f37a185dd72f688eeabf1d8652605847b54da1..2da7e046764f462fbbd88db22cbd698f9bd912c4 100644
--- a/platformio.ini
+++ b/platformio.ini
@@ -15,7 +15,9 @@ extends = fun_base
 ; for examples that use ch32v003fun as their base
 [fun_base]
 board_build.ldscript = ch32v003fun/ch32v003fun.ld
-build_flags = -flto -Ich32v003fun -I/usr/include/newlib -lgcc -Iextralibs -I"examples/$PIOENV"
+build_flags = -flto -Ich32v003fun -I/usr/include/newlib -lgcc -Iextralibs
+; dynamically add "examples/$PIOENV" to the include path
+extra_scripts = add_include.py
 build_src_filter = +<ch32v003fun>
 extra_libs_srcs = +<extralibs>