• Adam Simpkins's avatar
    fix how folly and its downstream projects find boost · 6e85117e
    Adam Simpkins authored
    Summary:
    Folly links explicitly links against boost statically on Windows.  However,
    many downstream projects that use folly independently performed their own
    discovery of boost and normally used the default option of linking against it
    dynamically.  This resulted in boost being listed twice on the link line on
    Windows for some downstream projects: both its static libraries and dynamic
    libraries would be present.  This ends up causing linking failures due to
    duplicate definitions.
    
    This updates folly's installed CMake file to correctly call
    `find_dependency(Boost)` so that downstream projects don't need to perform
    their own independent discovery.  This ensures that all downstream projects
    use a consistent method of linking against Boost.  I updated many downstream
    projects to remove their explicit separate discovery, and rely only on this
    behavior from folly.
    
    I also added a configuration setting to allow explicitly selecting whether to
    link against boost statically at folly configure time.
    
    Reviewed By: wez
    
    Differential Revision: D21232164
    
    fbshipit-source-id: 9ecc3ce988add48905252297e979403c42e7e148
    6e85117e
folly-deps.cmake 7.54 KB