summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTeodor Nikolov <teodor.nikolov22@gmail.com>2019-11-10 01:21:40 +0100
committerAdam J. Stewart <ajstewart426@gmail.com>2019-11-09 18:21:40 -0600
commit3db3395ed149685121a9d8a4469a4f02183fa56e (patch)
tree7d0a038df735ce95097be35232c99e6af7667a1f
parentd01a8f7cd69dd26797da3c637829943fa4efd910 (diff)
downloadspack-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`
-rw-r--r--var/spack/repos/builtin/packages/hpx/package.py11
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'