<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div>Hello,<br class=""><br class="">The product is a cross-platform API that relies on CMake for the config part. We ship static and dynamic libraries for Linux, Windows and macOS. Additionally on macOS we want to provide frameworks to ease integration (headers and a few dependencies in the bundle framework, etc). In addition to the libraries, with also ship documentation, sample codes, etc.<br class=""><br class="">When we ship we do a manual packaging of the files for now. We also have install rules if a user executes the install target from his own build of the product.<br class=""><br class="">And by default as CMake also installs frameworks relatively to CMAKE_INSTALL_PREFIX, they get installed in /usr/local or one of its subdirectories. This might be ok for all the other files to install but not for frameworks, as documented on <a href="https://developer.apple.com/library/content/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/InstallingFrameworks.html" class="">https://developer.apple.com/library/content/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/InstallingFrameworks.html</a></div><div><br class=""></div><div>Also I don't want to specify an absolute path in the install rule of the frameworks, because we generate a <Project>Config.cmake file and giving an absolute path to install() command makes the generated config non-relocatable. It doesn't look to be documented in <a href="https://cmake.org/cmake/help/latest/manual/cmake-packages.7.html#creating-relocatable-packages" class="">https://cmake.org/cmake/help/latest/manual/cmake-packages.7.html#creating-relocatable-packages</a> but that's what I noticed.</div><div><br class=""></div><div>Finally as we don't ship a .app bundle, we can't install our stuff in it. I hope it's clearer, please tell me if you still miss information.</div><div><br class=""></div><div>Best regards,</div><div>Lucas<br class=""><br class=""><blockquote type="cite" class="">Le 22 janv. 2018 à 17:33, Sean McBride <<a href="mailto:sean@rogue-research.com" class="">sean@rogue-research.com</a>> a écrit :<br class=""><br class="">On macOS, the most usual thing is for your code to be self-contained in your .app bundle.  Perhaps if you described more what kind of thing you are building and why you don't want to do the usual thing, people will have more advice...<br class=""><br class=""><br class="">On Fri, 19 Jan 2018 19:44:03 +0100, Lucas Soltic said:<br class=""><br class=""><blockquote type="cite" class="">Hello,<br class="">Should I conclude that there are no recommendations?<br class=""><br class="">Best regards,<br class="">Lucas<br class=""><br class=""><blockquote type="cite" class="">Le 17 janv. 2018 à 23:49, Lucas Soltic <<a href="mailto:lucas.soltic@orange.fr" class="">lucas.soltic@orange.fr</a>> a écrit :<br class=""><br class="">Hello,<br class=""><br class="">By default library install() command uses CMAKE_INSTALL_PREFIX (/usr/<br class=""></blockquote>local by default) as a base for relative install paths. But when you<br class="">define install rules for macOS frameworks, it doesn't make much sense to<br class="">install them there. I'd rather expect something like /Library/Frameworks.<br class=""><blockquote type="cite" class=""><br class="">On the other side, if you have more things to install like a "readme"<br class=""></blockquote>or documentation that should go into /usr/local/share, it doesn't make<br class="">sense to have them installed in /Library/Frameworks. So you can't just<br class="">change CMAKE_INSTALL_PREFIX to be /Library/Frameworks.<br class=""><blockquote type="cite" class=""><br class="">What do you recommend to keep installation rules simple (ie. remain<br class=""></blockquote>relative) and yet support installation of both frameworks and other things?<br class=""></blockquote><br class=""><br class=""></blockquote></div></body></html>