diff options
author | Ryan O'Malley <rd.omalley@comcast.net> | 2021-07-12 16:13:31 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-12 14:13:31 -0700 |
commit | 9d6d2f0f9b71e6436e01a70830d7e42616859d75 (patch) | |
tree | 96eab7311ae1b96635fcf09131a6a59cf29bba44 /var | |
parent | 6d22e9cd7b427f2d3d24bf1246215e0b9ba248e2 (diff) | |
download | spack-9d6d2f0f9b71e6436e01a70830d7e42616859d75.tar.gz spack-9d6d2f0f9b71e6436e01a70830d7e42616859d75.tar.bz2 spack-9d6d2f0f9b71e6436e01a70830d7e42616859d75.tar.xz spack-9d6d2f0f9b71e6436e01a70830d7e42616859d75.zip |
folly: added latest version and switched to CMakePackage (#23938)
* added latest version and switched to CMakePackage
* Added optional dependencies and cxxstd variant
* Added cxxstd variant and optional dependencies
* Added lib. that Boost doesn't install by default
* BUG: Removed previous broken versions of Folly
* BUG: refactored comments
* BUG: Fixed styling errors
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/folly/package.py | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/var/spack/repos/builtin/packages/folly/package.py b/var/spack/repos/builtin/packages/folly/package.py index 86e8d54332..c76a5f3901 100644 --- a/var/spack/repos/builtin/packages/folly/package.py +++ b/var/spack/repos/builtin/packages/folly/package.py @@ -7,7 +7,7 @@ from spack import * -class Folly(AutotoolsPackage): +class Folly(CMakePackage): """Folly (acronymed loosely after Facebook Open Source Library) is a library of C++11 components designed with practicality and efficiency in mind. @@ -18,29 +18,31 @@ class Folly(AutotoolsPackage): """ homepage = "https://github.com/facebook/folly" - url = "https://github.com/facebook/folly/archive/v2017.06.05.00.tar.gz" - - version('2017.06.05.00', sha256='d22ceda4dfe33583828be1193fa3929d70c51998f0797236e293c44ef828c6d0') - version('2016.11.14.00', sha256='cde5b3e1a38d181f7c4e52d590de1c1aca58da7b27b3020d08e9aa45b4c3ed74') - version('2016.11.07.00', sha256='4400d7f0fead90d88ce4caee9f0e9aeb8008c9954ea9034e19ae7226175206ba') - version('2016.10.31.00', sha256='7bef9ee956248f68f1c4e96be67561842ee6cc030a58e132b93b9be57b6b29ea') - version('2016.10.24.00', sha256='d54b609d3750a6a1cfbda7c62e1457af60cf5efc48d7a8e6552d67909e064757') - version('2016.10.17.00', sha256='0f83685016d020111ba54ddc48c0cf33e1e0b9b35cee5ae82d5f2cbc5f6b0e82') - - depends_on('m4', type='build') - depends_on('autoconf', type='build') - depends_on('automake', type='build') - depends_on('libtool', type='build') + url = "https://github.com/facebook/folly/releases/download/v2021.05.24.00/folly-v2021.05.24.00.tar.gz" + version('2021.05.24.00', sha256='9d308adefe4670637f5c7d96309b3b394ac3fa129bc954f5dfbdd8b741c02aad') + + # CMakePackage Dependency depends_on('pkgconfig', type='build') - # TODO: folly requires gcc 4.9+ and a version of boost compiled with - # TODO: C++14 support (but there's no neat way to check that these - # TODO: constraints are met right now) - depends_on('boost') + # folly requires gcc 4.9+ and a version of boost compiled with >= C++14 + # TODO: Specify the boost components + variant('cxxstd', default='14', values=('14', '17'), multi=False, description='Use the specified C++ standard when building.') + depends_on('boost+context+container cxxstd=14', when='cxxstd=14') + depends_on('boost+context+container cxxstd=17', when='cxxstd=17') + # required dependencies depends_on('gflags') depends_on('glog') depends_on('double-conversion') depends_on('libevent') + depends_on('fmt') + + # optional dependencies + variant('libdwarf', default=False, description="Optional Dependency") + variant('elfutils', default=False, description="Optional Dependency") + variant('libunwind', default=False, description="Optional Dependency") + depends_on('libdwarf', when='+libdwarf') + depends_on('elfutils', when='+elfutils') + depends_on('libunwind', when='+libunwind') configure_directory = 'folly' |