Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

find folly using its installed cmake config file #875

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

simpkins
Copy link
Contributor

Summary:
Find folly using its installed CMake configuration file, and delete the custom
FindFolly.cmake file that was being used previously. The FindFolly.cmake file
did not list all dependent libraries necessary to link statically against
folly. Linking against folly as a shared library is not recommended, as
folly provides no binary compatibility guarantees between changes. folly's
current CMake-based build only builds it as a static library by default.

This also changes the build process to build folly with CMake rather than its
deprecated autotools-based build when RSOCKET_INSTALL_DEPS or INSTALL_FOLLY is
set. Note that the build now happens as part of the cmake step, since folly
must be installed before we call find_package() to find folly.

Test Plan:
Tested building rsocket-cpp on an Ubuntu 18.04 host. Confirmed it worked both
with an existing folly installation, as well as when using INSTALL_FOLLY to
have rsocket download and build folly as part of its build steps.

Summary:
Find folly using its installed CMake configuration file, and delete the custom
FindFolly.cmake file that was being used previously.  The FindFolly.cmake file
did not list all dependent libraries necessary to link statically against
folly.  Linking against folly as a shared library is not recommended, as
folly provides no binary compatibility guarantees between changes.  folly's
current CMake-based build only builds it as a static library by default.

This also changes the build process to build folly with CMake rather than its
deprecated autotools-based build when RSOCKET_INSTALL_DEPS or INSTALL_FOLLY is
set.  Note that the build now happens as part of the `cmake` step, since folly
must be installed before we call `find_package()` to find folly.

This also updates the code to always use the current folly master branch,
rather than being pinned to v2018.06.25.00.  This should hopefully help catch
breakage's in the open source rsocket-cpp build much sooner.

Test Plan:
Tested building rsocket-cpp on an Ubuntu 18.04 host with the latest version of
folly.

Reviewers: blom,geleri,yfeldblum,#rsocket
Differential Revision: https://phabricator.intern.facebook.com/D10380763
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants