summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam J. Stewart <ajstewart426@gmail.com>2016-07-20 12:57:43 -0500
committerAdam J. Stewart <ajstewart426@gmail.com>2016-08-01 13:35:22 -0500
commit5cac0a528cd39d082d53af9e241763f24ddf0cd3 (patch)
tree55ab7aa9b2613fead2a01a2d97c94bac2d75cdc7
parentbdb64c2e390c4d2295f6d037201da2f5961512f8 (diff)
downloadspack-5cac0a528cd39d082d53af9e241763f24ddf0cd3.tar.gz
spack-5cac0a528cd39d082d53af9e241763f24ddf0cd3.tar.bz2
spack-5cac0a528cd39d082d53af9e241763f24ddf0cd3.tar.xz
spack-5cac0a528cd39d082d53af9e241763f24ddf0cd3.zip
Fix undefined symbols by building shared libraries
-rw-r--r--var/spack/repos/builtin/packages/harminv/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libatomic-ops/package.py3
-rw-r--r--var/spack/repos/builtin/packages/libctl/package.py1
-rw-r--r--var/spack/repos/builtin/packages/meep/package.py30
-rw-r--r--var/spack/repos/builtin/packages/py-meep/package.py4
5 files changed, 21 insertions, 20 deletions
diff --git a/var/spack/repos/builtin/packages/harminv/package.py b/var/spack/repos/builtin/packages/harminv/package.py
index 4b07d6687c..184535ebb0 100644
--- a/var/spack/repos/builtin/packages/harminv/package.py
+++ b/var/spack/repos/builtin/packages/harminv/package.py
@@ -44,7 +44,8 @@ class Harminv(Package):
config_args = [
'--prefix={0}'.format(prefix),
'--with-blas={0}'.format(spec['blas'].prefix.lib),
- '--with-lapack={0}'.format(spec['lapack'].prefix.lib)
+ '--with-lapack={0}'.format(spec['lapack'].prefix.lib),
+ '--enable-shared'
]
configure(*config_args)
diff --git a/var/spack/repos/builtin/packages/libatomic-ops/package.py b/var/spack/repos/builtin/packages/libatomic-ops/package.py
index bc9be5cc64..0167fbcb33 100644
--- a/var/spack/repos/builtin/packages/libatomic-ops/package.py
+++ b/var/spack/repos/builtin/packages/libatomic-ops/package.py
@@ -35,7 +35,8 @@ class LibatomicOps(Package):
version('7.4.4', '426d804baae12c372967a6d183e25af2')
def install(self, spec, prefix):
- configure('--prefix={0}'.format(prefix))
+ configure('--prefix={0}'.format(prefix),
+ '--enable-shared')
make()
make('install')
diff --git a/var/spack/repos/builtin/packages/libctl/package.py b/var/spack/repos/builtin/packages/libctl/package.py
index 946fc11271..53d30ce5c3 100644
--- a/var/spack/repos/builtin/packages/libctl/package.py
+++ b/var/spack/repos/builtin/packages/libctl/package.py
@@ -38,6 +38,7 @@ class Libctl(Package):
def install(self, spec, prefix):
configure('--prefix={0}'.format(prefix),
+ '--enable-shared',
'GUILE={0}'.format(join_path(
spec['guile'].prefix.bin, 'guile')),
'GUILE_CONFIG={0}'.format(join_path(
diff --git a/var/spack/repos/builtin/packages/meep/package.py b/var/spack/repos/builtin/packages/meep/package.py
index 603b916da4..2c1018e711 100644
--- a/var/spack/repos/builtin/packages/meep/package.py
+++ b/var/spack/repos/builtin/packages/meep/package.py
@@ -35,14 +35,14 @@ class Meep(Package):
version('1.2.1', '9be2e743c3a832ae922de9d955d016c5')
version('1.1.1', '415e0cd312b6caa22b5dd612490e1ccf')
- variant('blas', default=True, description='Enable BLAS support')
- variant('lapack', default=True, description='Enable LAPACK support')
- variant('harminv', default=True, description='Enable Harminv support')
- variant('guile', default=True, description='Enable Guilde support')
- variant('libctl', default=True, description='Enable libctl support')
- variant('mpi', default=True, description='Enable MPI support')
- variant('hdf5', default=True, description='Enable HDF5 support')
- variant('gsl', default=False, description='Build with GSL (only necessary for testing)')
+ variant('blas', default=True, description='Enable BLAS support')
+ variant('lapack', default=True, description='Enable LAPACK support')
+ variant('harminv', default=True, description='Enable Harminv support')
+ variant('guile', default=True, description='Enable Guilde support')
+ variant('libctl', default=True, description='Enable libctl support')
+ variant('mpi', default=True, description='Enable MPI support')
+ variant('hdf5', default=True, description='Enable HDF5 support')
+ variant('gsl', default=True, description='Enable GSL support')
depends_on('blas', when='+blas')
depends_on('lapack', when='+lapack')
@@ -50,7 +50,7 @@ class Meep(Package):
depends_on('guile', when='+guile')
depends_on('libctl@3.2:', when='+libctl')
depends_on('mpi', when='+mpi')
- depends_on('hdf5', when='+hdf5')
+ depends_on('hdf5~mpi', when='+hdf5~mpi')
depends_on('hdf5+mpi', when='+hdf5+mpi')
depends_on('gsl', when='+gsl')
@@ -62,12 +62,10 @@ class Meep(Package):
return "{0}/old/meep-{1}.tar.gz".format(base_url, version)
def install(self, spec, prefix):
- # Must be compiled with -fPIC for py-meep
- env['CFLAGS'] = '-fPIC'
- env['CXXFLAGS'] = '-fPIC'
- env['FFLAGS'] = '-fPIC'
-
- config_args = ['--prefix={0}'.format(prefix)]
+ config_args = [
+ '--prefix={0}'.format(prefix),
+ '--enable-shared'
+ ]
if '+blas' in spec:
config_args.append('--with-blas={0}'.format(
@@ -103,7 +101,7 @@ class Meep(Package):
# aniso_disp test fails unless installed with harminv
# near2far test fails unless installed with gsl
- if '+harminv' in spec and '+gsl' in spec:
+ if self.run_tests and '+harminv' in spec and '+gsl' in spec:
# Most tests fail when run in parallel
# 2D_convergence tests still fails to converge for unknown reasons
make('check', parallel=False)
diff --git a/var/spack/repos/builtin/packages/py-meep/package.py b/var/spack/repos/builtin/packages/py-meep/package.py
index a8e11a12ff..5170111e1f 100644
--- a/var/spack/repos/builtin/packages/py-meep/package.py
+++ b/var/spack/repos/builtin/packages/py-meep/package.py
@@ -41,8 +41,8 @@ class PyMeep(Package):
depends_on('py-scipy')
depends_on('py-matplotlib')
- depends_on('mpi', when='+mpi') # OpenMPI 1.3.3 is recommended
- depends_on('meep') # must be compiled with -fPIC
+ depends_on('mpi', when='+mpi')
+ depends_on('meep~mpi', when='~mpi')
depends_on('meep+mpi', when='+mpi')
# As of SWIG 3.0.3, Python-style comments are now treated as