Im not sure i understand your last question.
Some context, and hopefully this may give you the info maybe.
The addon system is made to be independent of kodi. There is only 1 binary addon that is considered required (peripheral.joystick), everything else is entirely optional.
I believe the system was built around dev for windows/linux. We do not use toolchains for those platforms for whatever reason (predates my involvement with the project).
If you look at the Makefile in tools/depends/target/binary-addons it ill point you to
https://github.com/xbmc/xbmc/blob/master...ns.include where you will see the make rules, of which they pretty much just spell out my notes from above, including the sed replacement and copy of the toolchain_binaddons.cmake file into the addons build dir for use. This Makefile is purely a helper. the actual cmake build is entirely separate, and the make system just has no idea about inputs/outputs of a cmake build. The only thing the makefile monitors (without diving into make specifics) is the file that is created .installed-$(PLATFORM) (eg .installed-aarch64-linux-android-21-debug). Hence why changing anything in the cmake based addon build has no effect when rerunning the make wrapper. Its just not smart enough for that.
So, touching back on the whole independent thing, there is no configured environment. It only knows what you provide it in your cmake stanza. You can provide CC, AR, CFLAGS, etc in your cmake command, and thats essentially all the toolchain file does for platforms that generate one (Android, Apple).
We generate a toolchain file because its easy when we configure core to dump the same configure options into a toolchain for binaddons, but the core configure has at no point an understanding of addons, and any paths associated with them, hence the sed replacements from the addon cmake system.
So to sum it all up, they are two independent cmake systems. There is/was work to pull out the Addon Dev headers to essentially make the requirement of a clone of core not required for an addon, which would then make it more obvious/clear about the distinction between the two systems, but that still doesnt change the fact that for addons you need to provide all the appropriate build arguments one way or another (stanza or toolchain)