Current build management with platformIO is quite opaque.
PlatformIO seems to be a moving target and not yet matured.
A closer-to-metal approach might be preferrable.
While the editing features of PIO are great, it is hard to achieve a fine control of the build process for non standard arduino constructions. Git control of the build process is limited.
There is a makefile available for the EspArduino framework
https://github.com/plerup/makeEspArduino
It still can manage builds automagically and use the same directory structure than ArduinoIDE or PlatformIO.
However, special needs can be control by overriding variables and/or including own makefiles.
It has to be tested whether platformIO is able to cope with elaborated build controls based on the arduino makefile. This would allow the goodies of both words.
As an alternative, we might consider writing an own makefile from bottom up., to gain full control.
This will require considerable work and test, however.
Current build management with platformIO is quite opaque.
PlatformIO seems to be a moving target and not yet matured.
A closer-to-metal approach might be preferrable.
While the editing features of PIO are great, it is hard to achieve a fine control of the build process for non standard arduino constructions. Git control of the build process is limited.
There is a makefile available for the EspArduino framework
https://github.com/plerup/makeEspArduino
It still can manage builds automagically and use the same directory structure than ArduinoIDE or PlatformIO.
However, special needs can be control by overriding variables and/or including own makefiles.
It has to be tested whether platformIO is able to cope with elaborated build controls based on the arduino makefile. This would allow the goodies of both words.
As an alternative, we might consider writing an own makefile from bottom up., to gain full control.
This will require considerable work and test, however.