I continued checking for a solution.
I found this older post Library Development HowTo
I have now the following files:
platformio.ini
[platformio]
description = PIO Example
[common]
includes = -IFooLib
cpu_flags = -Os -g --specs=nosys.specs -flto -ffreestanding -nostdlib -L. -T./flash.lds -Xlinker
defines = -DFW_VERSION=v0.0.1
[env:MyBoard]
platform = atmelsam
board = MyBoard
build_flags = ${common.cpu_flags} ${common.includes} ${common.defines}
#lib_deps = file://./FooLib
lib_extra_dirs = ./FooLib
FooLib\library.json
{
"name": "FooLib",
"keywords": "foo fooFast",
"description": "fullblown FOO implementation without BAR",
"version" : "0.0.1",
"platforms": "atmelsam",
"build": {
"flags" : ["-DLIB_WITH_FOO_A"]
}
}
With just lib_extra_dirs
it use modified files from ./FooLib/src but it ignores the “-D-values” set in library.json
.
If lib_deps = file://./FooLib
is enabled, it copies the sources into .piolibdeps
once but ignores any further updates in FooLib/src
What can I do, that values in FooLib/library.json
are used without lib_deps
?