diff options
author | Teodor Nikolov <teodor.nikolov22@gmail.com> | 2019-11-10 01:21:40 +0100 |
---|---|---|
committer | Adam J. Stewart <ajstewart426@gmail.com> | 2019-11-09 18:21:40 -0600 |
commit | 3db3395ed149685121a9d8a4469a4f02183fa56e (patch) | |
tree | 7d0a038df735ce95097be35232c99e6af7667a1f /var | |
parent | d01a8f7cd69dd26797da3c637829943fa4efd910 (diff) | |
download | spack-3db3395ed149685121a9d8a4469a4f02183fa56e.tar.gz spack-3db3395ed149685121a9d8a4469a4f02183fa56e.tar.bz2 spack-3db3395ed149685121a9d8a4469a4f02183fa56e.tar.xz spack-3db3395ed149685121a9d8a4469a4f02183fa56e.zip |
hpx: fix incompatible cxxstd with boost and compiling tests (#13660)
* Add a variant for tests and parallelize builds
- Fix a bug with boost defaulting to cxxstd=98 when cxxstd=11 is the
minimum for hpx
- Disable tests by default and use a variant to enable them if requested
- Enable parallel builds: each process takes up to 1Gb when tests are
not enabled.
* Remove tests variant
- The variant doesn't change what gets installed. Testing can be
activated using `spack install --test=root hpx`
Diffstat (limited to 'var')
-rw-r--r-- | var/spack/repos/builtin/packages/hpx/package.py | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/var/spack/repos/builtin/packages/hpx/package.py b/var/spack/repos/builtin/packages/hpx/package.py index 6863689f23..d02ff24b09 100644 --- a/var/spack/repos/builtin/packages/hpx/package.py +++ b/var/spack/repos/builtin/packages/hpx/package.py @@ -43,7 +43,6 @@ class Hpx(CMakePackage, CudaPackage): variant('tools', default=False, description='Build HPX tools') variant('examples', default=False, description='Build examples') - depends_on('boost') depends_on('hwloc') depends_on('python', type=('build', 'test', 'run')) depends_on('pkgconfig', type='build') @@ -77,11 +76,6 @@ class Hpx(CMakePackage, CudaPackage): depends_on('papi', when='instrumentation=papi') depends_on('valgrind', when='instrumentation=valgrind') - # TODO: hpx can build perfectly fine in parallel, except that each - # TODO: process might need more than 2GB to compile. This is just the - # TODO: most conservative approach to ensure a sane build. - parallel = False - def cxx_standard(self): value = self.spec.variants['cxxstd'].value return '-DHPX_WITH_CXX{0}=ON'.format(value) @@ -125,6 +119,11 @@ class Hpx(CMakePackage, CudaPackage): 'ON' if '+cuda' in spec else 'OFF' )) + # Tests + args.append('-DHPX_WITH_TESTS={0}'.format( + 'ON' if self.run_tests else 'OFF' + )) + # Tools args.append('-DHPX_WITH_TOOLS={0}'.format( 'ON' if '+tools' in spec else 'OFF' |