<div dir="ltr"><div><div>What is the recommended way to structure installation folders for a relocatable installation for multiple platforms?</div><div><br></div><div>I'm looking for a structure that works with find_package module mode and config mode; something like this:</div><div><br></div><div>    <install_prefix>/</div><div>      include/</div><div>        foo/</div><div>          foo.h</div><div>      lib/</div><div>        <PLAT x ARCH x CONFIG>/</div><div>          cmake/</div><div>            foo/</div><div>              FooConfig.cmake</div><div>          libFoo.a</div><div><br></div><div>Goal is:</div><div><br></div><div> * libs can be co-installed for different platforms, architectures and configs</div><div> * includes can be shared</div><div> * finding the includes should work in typical module mode searches</div><div> * should just work with vanilla find_package(Foo REQUIRED), but for the appropriate platform and arch.</div><div><br></div><div>Considering I'd be installing mostly 3rd party libraries here, if this can be done by overriding the vars from GNUInstallDirs, it'd probably work for many libraries. The rest I guess would either have to be edited or I just give up and use separate installation dirs that include platform and arch.</div></div><div><br></div><div>I also cross posted on Stack Overflow: <a href="https://stackoverflow.com/questions/51112173/whats-the-ideal-cmake-installation-directory-structure-for-a-relocatable-multip">https://stackoverflow.com/questions/51112173/whats-the-ideal-cmake-installation-directory-structure-for-a-relocatable-multip</a></div></div>