To improve the build process and simplify project setup the build artefacts and binary output must be separated by architecture, compiler and build type (debug / release).
This is also a pre-requisite for the remote-os Docker build image with mapped project folders from the host. Otherwise different binary files will be mixed in the output if used on macOS or Windows.
See related issue: https://github.com/YIO-Remote/remote-os/issues/21
Goals:
[x] Aggregate all compiled binary output into common parent folder <main>/binaries.
This includes main application and all plugins.
[x] Store temporary build artefacts within project under <main>/<project>/build
[x] Separate build and binary folders for different compilers and architectures:
<Operating System>/<Compiler>/<Processor Architecture>/<Build Configuration>
[x] Automatically detect architecture and compiler
To improve the build process and simplify project setup the build artefacts and binary output must be separated by architecture, compiler and build type (debug / release).
This is also a pre-requisite for the remote-os Docker build image with mapped project folders from the host. Otherwise different binary files will be mixed in the output if used on macOS or Windows. See related issue: https://github.com/YIO-Remote/remote-os/issues/21
Goals:
<main>/binaries
. This includes main application and all plugins.<main>/<project>/build
<Operating System>/<Compiler>/<Processor Architecture>/<Build Configuration>
build-<project>-...
directoriesExample: