diff --git a/platformio.ini b/platformio.ini index cb1cbced5b92421ebb6cbf96928183e64713488c..c49439586e038e2e35810c2a6e68533fd88b206c 100644 --- a/platformio.ini +++ b/platformio.ini @@ -8,19 +8,33 @@ platform = https://github.com/Community-PIO-CH32V/platform-ch32v.git ; or genericCH32V003A4M6 or whatever, see platform link board = ch32v003f4p6_evt_r0 monitor_speed = 115200 +; use a source filter to only build certain folders / files + +; for examples that use ch32v003evt as their base +[evt_base] board_build.ldscript = ch32v003evt/ch32v003.ld build_flags = -flto -Ich32v003evt -lgcc -; use a source filter to only build certain folders / files +build_src_filter = +<ch32v003evt> + +; 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 +build_src_filter = +<ch32v003fun> [env:blink] -build_src_filter = +<ch32v003evt> +<examples/blink> +extends = fun_base +build_src_filter = ${fun_base.build_src_filter} +<examples/blink> [env:fulldemo] -build_src_filter = +<ch32v003evt> +<examples/fulldemo> +extends = evt_base +build_src_filter = ${evt_base.build_src_filter} +<examples/fulldemo> ; sandbox demo does currently not compile (undefined reference to `__get_dscratch0') ;[env:sandbox] -;build_src_filter = +<ch32v003evt> +<examples/sandbox> +;extends = evt_base +;build_src_filter = ${evt_base.build_src_filter} +<examples/sandbox> [env:ws2812demo] -build_src_filter = +<ch32v003evt> +<examples/ws2812demo> +extends = evt_base +build_src_filter = ${evt_base.build_src_filter} +<examples/ws2812demo>