Only SDK_ARCH is captured in the PN of the crosssdk recipes, so changes to SDK_OS result in conflicts due to rebuilding them while providing the same thing. I think we should include all of SDK_SYS as the recipe name suffix instead, unless we don't want to support this use case. Specifically, changing from linux to mingw will hit this.
Sounds about right. Can you send a patch?
To implement/test the changes, I initially used jethro version. meta-mingw layer needs several modifications for krogoth/master, which would complicate the design at an early stage. I created two patches that allow me to execute: $ bitbake meta-toolchain while changing SDKMACHINE in local.conf. SDKMACHINE ?= "i686-mingw32" SDKMACHINE ?= "x86_64-mingw32" SDKMACHINE ?= "i686" SDKMACHINE ?= "x86_64" Without the patches, I would get several errors: ERROR: The recipe binutils-crosssdk-i686 is trying to install files into a shared area.... ... The build has stopped as continuing in this scenario WILL break things, if not now, possibly in the future (we've seen builds fail several months later). ... ERROR: Function failed: sstate_task_postfunc ... Then I would be forced to delete the "tmp" folder. The patches allow co-existance builds of various SDKMACHINES. The next step is to actually test the generated SDKs (so far only a visual check) and move on to krogoth/master.
Created attachment 3339 [details] patch for jethro/poky Patch for several poky files (jethro)
Created attachment 3340 [details] patch for jethro/meta-mingw meta-mingw patch needed to avoid name-clash.
Patchset sent to the mailing list: http://lists.openembedded.org/pipermail/openembedded-core/2016-September/126945.html
Merged with master: http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=cf882b6e3abbbc437fc61be58f1265ae3fd4e1b2