Mass conversion of setup_(dependent_)?environment (#13924)
* Mass conversion of setup_(dependent_)?environment * prefix -> self.prefix
This commit is contained in:
parent
92ca639905
commit
ab98ef1765
@ -942,7 +942,7 @@ def mpi_setup_dependent_build_environment(
|
||||
for key, value in wrapper_vars.items():
|
||||
env.set(key, value)
|
||||
|
||||
debug_print("adding to spack_env:", wrapper_vars)
|
||||
debug_print("adding to build env:", wrapper_vars)
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
# General support for child packages
|
||||
@ -1054,7 +1054,7 @@ def _setup_dependent_env_callback(
|
||||
env.append_path('SPACK_COMPILER_EXTRA_RPATHS',
|
||||
env_mods['SPACK_COMPILER_EXTRA_RPATHS'])
|
||||
|
||||
debug_print("adding/modifying spack_env:", env_mods)
|
||||
debug_print("adding/modifying build env:", env_mods)
|
||||
|
||||
if '+mpi' in self.spec or self.provides('mpi'):
|
||||
if compilers_of_client:
|
||||
|
@ -29,12 +29,11 @@ class OctavePackage(PackageBase):
|
||||
extends('octave')
|
||||
depends_on('octave', type=('build', 'run'))
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
"""Set up the compile and runtime environments for a package."""
|
||||
def setup_build_environment(self, env):
|
||||
# octave does not like those environment variables to be set:
|
||||
spack_env.unset('CC')
|
||||
spack_env.unset('CXX')
|
||||
spack_env.unset('FC')
|
||||
env.unset('CC')
|
||||
env.unset('CXX')
|
||||
env.unset('FC')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
"""Install the package from the archive file"""
|
||||
|
@ -141,7 +141,6 @@ def invalid_sha256_digest(fetcher):
|
||||
assert [] == errors
|
||||
|
||||
|
||||
@pytest.mark.xfail
|
||||
def test_api_for_build_and_run_environment():
|
||||
"""Ensure that every package uses the correct API to set build and
|
||||
run environment, and not the old one.
|
||||
@ -154,7 +153,7 @@ def test_api_for_build_and_run_environment():
|
||||
failing.append(pkg)
|
||||
|
||||
msg = ('there are {0} packages using the old API to set build '
|
||||
'and run environment [{1}], for further information see'
|
||||
'and run environment [{1}], for further information see '
|
||||
'https://github.com/spack/spack/pull/11115')
|
||||
assert not failing, msg.format(
|
||||
len(failing), ','.join(x.name for x in failing)
|
||||
@ -182,7 +181,9 @@ def test_prs_update_old_api():
|
||||
if failed:
|
||||
failing.append(name)
|
||||
|
||||
msg = 'there are {0} packages still using old APIs in this PR [{1}]'
|
||||
msg = ('there are {0} packages using the old API to set build '
|
||||
'and run environment [{1}], for further information see '
|
||||
'https://github.com/spack/spack/pull/11115')
|
||||
assert not failing, msg.format(
|
||||
len(failing), ','.join(failing)
|
||||
)
|
||||
|
@ -40,11 +40,11 @@ class Amber(Package, CudaPackage):
|
||||
depends_on('py-matplotlib@:2.9', type=('build', 'run'))
|
||||
depends_on('zlib')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
sp_dir = join_path(self.prefix, 'python2.7/site-packages')
|
||||
|
||||
run_env.set('AMBERHOME', self.prefix)
|
||||
run_env.prepend_path('PYTHONPATH', sp_dir)
|
||||
env.set('AMBERHOME', self.prefix)
|
||||
env.prepend_path('PYTHONPATH', sp_dir)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# install AmberTools where it should be
|
||||
|
@ -173,16 +173,16 @@ def edit(self, spec, prefix):
|
||||
with open('GNUmakefile', 'w') as file:
|
||||
file.writelines(contents)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# We don't want an AMREX_HOME the user may have set already
|
||||
spack_env.unset('AMREX_HOME')
|
||||
env.unset('AMREX_HOME')
|
||||
# Help force Amrvis to not pick up random system compilers
|
||||
if '+mpi' in self.spec:
|
||||
spack_env.set('MPI_HOME', self.spec['mpi'].prefix)
|
||||
spack_env.set('CC', self.spec['mpi'].mpicc)
|
||||
spack_env.set('CXX', self.spec['mpi'].mpicxx)
|
||||
spack_env.set('F77', self.spec['mpi'].mpif77)
|
||||
spack_env.set('FC', self.spec['mpi'].mpifc)
|
||||
env.set('MPI_HOME', self.spec['mpi'].prefix)
|
||||
env.set('CC', self.spec['mpi'].mpicc)
|
||||
env.set('CXX', self.spec['mpi'].mpicxx)
|
||||
env.set('F77', self.spec['mpi'].mpif77)
|
||||
env.set('FC', self.spec['mpi'].mpifc)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Install exe manually
|
||||
|
@ -22,8 +22,8 @@ class Angsd(MakefilePackage):
|
||||
depends_on('htslib')
|
||||
conflicts('^htslib@1.6:', when='@0.919')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('R_LIBS', prefix.R)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('R_LIBS', self.prefix.R)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(prefix.bin)
|
||||
|
@ -30,5 +30,5 @@ def install(self, spec, prefix):
|
||||
make("install")
|
||||
install_tree('Scripts', prefix.bin)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('ANTSPATH', self.prefix.bin)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('ANTSPATH', self.prefix.bin)
|
||||
|
@ -17,8 +17,8 @@ class AsperaCli(Package):
|
||||
url='https://download.asperasoft.com/download/sw/cli/3.7.7/aspera-cli-3.7.7.608.927cce8-linux-64-release.sh',
|
||||
expand=False)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix.cli.bin)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix.cli.bin)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
runfile = glob(join_path(self.stage.source_path, 'aspera-cli*.sh'))[0]
|
||||
|
@ -44,5 +44,5 @@ def install(self, spec, prefix):
|
||||
filter_file('astral.jar', join_path(prefix.tools, jar_file),
|
||||
script, **kwargs)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('ASTRAL_HOME', self.prefix.tools)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('ASTRAL_HOME', self.prefix.tools)
|
||||
|
@ -35,6 +35,6 @@ def url_for_version(self, version):
|
||||
url = 'http://ftp.gnome.org/pub/gnome/sources/at-spi2-core'
|
||||
return url + '/%s/at-spi2-core-%s.tar.xz' % (version.up_to(2), version)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# this avoids an "import site" error in the build
|
||||
spack_env.unset('PYTHONHOME')
|
||||
env.unset('PYTHONHOME')
|
||||
|
@ -35,11 +35,11 @@ def url_for_version(self, version):
|
||||
url = 'http://ftp.gnome.org/pub/gnome/sources/atk'
|
||||
return url + '/%s/atk-%s.tar.xz' % (version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
|
@ -20,6 +20,6 @@ class Bbmap(Package):
|
||||
def install(self, spec, prefix):
|
||||
install_tree('.', prefix.bin)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('BBMAP_CONFIG', self.prefix.bin.config)
|
||||
run_env.set('BBMAP_RESOURCES', self.prefix.bin.resources)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('BBMAP_CONFIG', self.prefix.bin.config)
|
||||
env.set('BBMAP_RESOURCES', self.prefix.bin.resources)
|
||||
|
@ -22,8 +22,8 @@ class Beast2(Package):
|
||||
|
||||
depends_on('java')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('BEAST', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('BEAST', self.prefix)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
install_tree('bin', prefix.bin)
|
||||
|
@ -45,10 +45,7 @@ def install(self, spec, prefix):
|
||||
install_tree('hdf', prefix.hdf)
|
||||
install_tree('pbdata', prefix.pbdata)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path('LD_LIBRARY_PATH',
|
||||
self.spec.prefix.hdf)
|
||||
spack_env.prepend_path('LD_LIBRARY_PATH',
|
||||
self.spec.prefix.alignment)
|
||||
spack_env.prepend_path('LD_LIBRARY_PATH',
|
||||
self.spec.prefix.pbdata)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.spec.prefix.hdf)
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.spec.prefix.alignment)
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.spec.prefix.pbdata)
|
||||
|
@ -26,19 +26,19 @@ class Blasr(Package):
|
||||
|
||||
phases = ['configure', 'build', 'install']
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.spec.prefix.utils)
|
||||
spack_env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix)
|
||||
spack_env.prepend_path('CPATH', self.spec[
|
||||
'blasr-libcpp'].prefix.pbdata)
|
||||
spack_env.prepend_path('CPATH', self.spec[
|
||||
'blasr-libcpp'].prefix.alignment)
|
||||
spack_env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix.hdf)
|
||||
def setup_build_environment(self, env):
|
||||
env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix)
|
||||
env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix.pbdata)
|
||||
env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix.alignment)
|
||||
env.prepend_path('CPATH', self.spec['blasr-libcpp'].prefix.hdf)
|
||||
|
||||
# hdf has +mpi by default, so handle that possibility
|
||||
if ('+mpi' in self.spec['hdf5']):
|
||||
spack_env.set('CC', self.spec['mpi'].mpicc)
|
||||
spack_env.set('CXX', self.spec['mpi'].mpicxx)
|
||||
env.set('CC', self.spec['mpi'].mpicc)
|
||||
env.set('CXX', self.spec['mpi'].mpicxx)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.spec.prefix.utils)
|
||||
|
||||
def configure(self, spec, prefix):
|
||||
configure_args = [
|
||||
|
@ -17,8 +17,8 @@ class Blat(Package):
|
||||
|
||||
depends_on('libpng')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('MACHTYPE', 'x86_64')
|
||||
def setup_build_environment(self, env):
|
||||
env.set('MACHTYPE', 'x86_64')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(prefix.bin)
|
||||
|
@ -201,11 +201,11 @@ def cmake_args(self):
|
||||
#
|
||||
# Environment setup
|
||||
#
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# Bohrium needs an extra include dir apart from
|
||||
# the self.prefix.include dir
|
||||
run_env.prepend_path("CPATH", self.prefix.include.bohrium)
|
||||
run_env.set("BH_CONFIG", self.config_file)
|
||||
env.prepend_path("CPATH", self.prefix.include.bohrium)
|
||||
env.set("BH_CONFIG", self.config_file)
|
||||
|
||||
#
|
||||
# Quick tests
|
||||
|
@ -62,5 +62,5 @@ def filter_sbang(self):
|
||||
for file in files:
|
||||
filter_file(pattern, repl, *files, backup=False)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PERL5LIB', prefix.lib)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PERL5LIB', self.prefix.lib)
|
||||
|
@ -30,8 +30,6 @@ class Breseq(AutotoolsPackage):
|
||||
conflicts('%gcc@:4.8')
|
||||
conflicts('%clang@:3.3')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('LDFLAGS',
|
||||
"-L{0}".format(self.spec['zlib'].prefix.lib))
|
||||
spack_env.set('CFLAGS',
|
||||
"-I{0}".format(self.spec['zlib'].prefix.include))
|
||||
def setup_build_environment(self, env):
|
||||
env.set('LDFLAGS', "-L{0}".format(self.spec['zlib'].prefix.lib))
|
||||
env.set('CFLAGS', "-I{0}".format(self.spec['zlib'].prefix.include))
|
||||
|
@ -25,5 +25,5 @@ class Casper(MakefilePackage):
|
||||
def install(self, spec, prefix):
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.spec.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.spec.prefix)
|
||||
|
@ -148,7 +148,7 @@ def do_stage(self, mirror_only=False):
|
||||
tty.msg("Already generated %s in %s" % (self.name,
|
||||
self.stage.source_path))
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# paraview 5.5 and later
|
||||
# - cmake under lib/cmake/paraview-5.5
|
||||
# - libs under lib
|
||||
@ -160,18 +160,18 @@ def setup_environment(self, spack_env, run_env):
|
||||
|
||||
if self.spec.version <= Version('5.4.1'):
|
||||
lib_dir = join_path(lib_dir, paraview_subdir)
|
||||
run_env.set('ParaView_DIR', self.prefix)
|
||||
run_env.prepend_path('LIBRARY_PATH', lib_dir)
|
||||
run_env.prepend_path('LD_LIBRARY_PATH', lib_dir)
|
||||
env.set('ParaView_DIR', self.prefix)
|
||||
env.prepend_path('LIBRARY_PATH', lib_dir)
|
||||
env.prepend_path('LD_LIBRARY_PATH', lib_dir)
|
||||
|
||||
if '+python' in self.spec or '+python3' in self.spec:
|
||||
python_version = self.spec['python'].version.up_to(2)
|
||||
run_env.prepend_path('PYTHONPATH', join_path(lib_dir,
|
||||
'python{0}'.format(python_version),
|
||||
'site-packages'))
|
||||
env.prepend_path('PYTHONPATH', join_path(lib_dir,
|
||||
'python{0}'.format(python_version),
|
||||
'site-packages'))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('ParaView_DIR', self.prefix)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('ParaView_DIR', self.prefix)
|
||||
|
||||
@property
|
||||
def root_cmakelists_dir(self):
|
||||
|
@ -31,27 +31,27 @@ class Cbench(MakefilePackage):
|
||||
conflicts('%xl')
|
||||
conflicts('%xl_r')
|
||||
|
||||
def setup_environment(self, build_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# The location of the Cbench source tree
|
||||
build_env.set('CBENCHOME', self.stage.source_path)
|
||||
env.set('CBENCHOME', self.stage.source_path)
|
||||
|
||||
# The location that will contain all of your tests and their results
|
||||
build_env.set('CBENCHTEST', self.prefix)
|
||||
env.set('CBENCHTEST', self.prefix)
|
||||
|
||||
# The location of the system MPI tree
|
||||
build_env.set('MPIHOME', self.spec['mpi'].prefix)
|
||||
env.set('MPIHOME', self.spec['mpi'].prefix)
|
||||
|
||||
# Pick the compiler collection/chain you want to compile with.
|
||||
# Examples include: intel, gcc, pgi.
|
||||
build_env.set('COMPILERCOLLECTION', self.compiler.name)
|
||||
env.set('COMPILERCOLLECTION', self.compiler.name)
|
||||
|
||||
# Linking flags for BLAS/LAPACK and FFTW
|
||||
build_env.set('BLASLIB', self.spec['blas'].libs.ld_flags)
|
||||
build_env.set('LAPACKLIB', self.spec['lapack'].libs.ld_flags)
|
||||
build_env.set('FFTWLIB', self.spec['fftw'].libs.ld_flags)
|
||||
env.set('BLASLIB', self.spec['blas'].libs.ld_flags)
|
||||
env.set('LAPACKLIB', self.spec['lapack'].libs.ld_flags)
|
||||
env.set('FFTWLIB', self.spec['fftw'].libs.ld_flags)
|
||||
|
||||
# The number of make jobs (commands) to run simultaneously
|
||||
build_env.set('JOBS', str(make_jobs))
|
||||
env.set('JOBS', str(make_jobs))
|
||||
|
||||
@run_before('build')
|
||||
@on_package_attributes(run_tests=True)
|
||||
|
@ -31,5 +31,5 @@ def build(self, spec, prefix):
|
||||
make_args.append('zlib=no')
|
||||
make(*make_args)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('PREFIX', prefix.bin)
|
||||
def setup_build_environment(self, env):
|
||||
env.set('PREFIX', self.prefix.bin)
|
||||
|
@ -82,17 +82,17 @@ class Charmpp(Package):
|
||||
provides('mpi@2', when='@6.7.1: build-target=AMPI backend={0}'.format(b))
|
||||
provides('mpi@2', when='@6.7.1: build-target=LIBS backend={0}'.format(b))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('MPICC', join_path(self.prefix.bin, 'ampicc'))
|
||||
spack_env.set('MPICXX', join_path(self.prefix.bin, 'ampicxx'))
|
||||
spack_env.set('MPIF77', join_path(self.prefix.bin, 'ampif77'))
|
||||
spack_env.set('MPIF90', join_path(self.prefix.bin, 'ampif90'))
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('MPICC', self.prefix.bin.ampicc)
|
||||
env.set('MPICXX', self.prefix.bin.ampicxx)
|
||||
env.set('MPIF77', self.prefix.bin.ampif77)
|
||||
env.set('MPIF90', self.prefix.bin.ampif90)
|
||||
|
||||
def setup_dependent_package(self, module, dependent_spec):
|
||||
self.spec.mpicc = join_path(self.prefix.bin, 'ampicc')
|
||||
self.spec.mpicxx = join_path(self.prefix.bin, 'ampicxx')
|
||||
self.spec.mpifc = join_path(self.prefix.bin, 'ampif90')
|
||||
self.spec.mpif77 = join_path(self.prefix.bin, 'ampif77')
|
||||
self.spec.mpicc = self.prefix.bin.ampicc
|
||||
self.spec.mpicxx = self.prefix.bin.ampicxx
|
||||
self.spec.mpifc = self.prefix.bin.ampif90
|
||||
self.spec.mpif77 = self.prefix.bin.ampif77
|
||||
|
||||
depends_on("mpi", when="backend=mpi")
|
||||
depends_on("papi", when="+papi")
|
||||
|
@ -35,22 +35,27 @@ def autoreconf(self, spec, prefix):
|
||||
bash = which('bash')
|
||||
bash('./bootstrap')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
rose_home = self.spec['rose'].prefix
|
||||
boost_home = self.spec['boost'].prefix
|
||||
iegen_home = self.spec['iegenlib'].prefix
|
||||
|
||||
spack_env.append_path('LD_LIBRARY_PATH', rose_home.lib)
|
||||
spack_env.append_path('LD_LIBRARY_PATH', boost_home.lib)
|
||||
spack_env.append_path('LD_LIBRARY_PATH', iegen_home.lib)
|
||||
env.set('ROSEHOME', rose_home)
|
||||
env.set('BOOSTHOME', boost_home)
|
||||
env.set('IEGENHOME', iegen_home)
|
||||
|
||||
run_env.append_path('LD_LIBRARY_PATH', rose_home.lib)
|
||||
run_env.append_path('LD_LIBRARY_PATH', boost_home.lib)
|
||||
run_env.append_path('LD_LIBRARY_PATH', iegen_home.lib)
|
||||
env.append_path('LD_LIBRARY_PATH', rose_home.lib)
|
||||
env.append_path('LD_LIBRARY_PATH', boost_home.lib)
|
||||
env.append_path('LD_LIBRARY_PATH', iegen_home.lib)
|
||||
|
||||
spack_env.set('ROSEHOME', rose_home)
|
||||
spack_env.set('BOOSTHOME', boost_home)
|
||||
spack_env.set('IEGENHOME', iegen_home)
|
||||
def setup_run_environment(self, env):
|
||||
rose_home = self.spec['rose'].prefix
|
||||
boost_home = self.spec['boost'].prefix
|
||||
iegen_home = self.spec['iegenlib'].prefix
|
||||
|
||||
env.append_path('LD_LIBRARY_PATH', rose_home.lib)
|
||||
env.append_path('LD_LIBRARY_PATH', boost_home.lib)
|
||||
env.append_path('LD_LIBRARY_PATH', iegen_home.lib)
|
||||
|
||||
def configure_args(self):
|
||||
args = ['--with-rose={0}'.format(self.spec['rose'].prefix),
|
||||
|
@ -29,5 +29,5 @@ def install(self, spec, prefix):
|
||||
os.rename('chlorop', 'bin/chlorop')
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('CHLOROP', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('CHLOROP', self.prefix)
|
||||
|
@ -23,6 +23,6 @@ def install(self, spec, prefix):
|
||||
# (CMake) Header Only library so just copy
|
||||
install_tree(self.stage.source_path, prefix)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path('CMAKE_PREFIX_PATH', self.prefix)
|
||||
spack_env.set('CINCH_SOURCE_DIR', self.prefix)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path('CMAKE_PREFIX_PATH', self.prefix)
|
||||
env.set('CINCH_SOURCE_DIR', self.prefix)
|
||||
|
@ -36,9 +36,9 @@ class Citcoms(AutotoolsPackage):
|
||||
conflicts('+pyre', when='@3.3:', msg='Pyre support was removed from 3.3+')
|
||||
conflicts('+exchanger', when='@3.3:', msg='Exchanger support was removed from 3.3+')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if '+ggrd' in self.spec:
|
||||
spack_env.set('HC_HOME', self.spec['hc'].prefix)
|
||||
env.set('HC_HOME', self.spec['hc'].prefix)
|
||||
|
||||
def configure_args(self):
|
||||
args = ['CC={0}'.format(self.spec['mpi'].mpicc)]
|
||||
|
@ -215,7 +215,7 @@ def install(self, spec, prefix):
|
||||
if not os.path.exists('make_surface'):
|
||||
os.symlink(make_surface, 'make_surface')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# CONVERGE searches for a valid license file in:
|
||||
# $CONVERGE_ROOT/license/license.lic
|
||||
run_env.set('CONVERGE_ROOT', self.prefix)
|
||||
env.set('CONVERGE_ROOT', self.prefix)
|
||||
|
@ -21,8 +21,8 @@ class Cppunit(AutotoolsPackage):
|
||||
multi=False,
|
||||
description='Use the specified C++ standard when building.')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
cxxstd = self.spec.variants['cxxstd'].value
|
||||
cxxstdflag = '' if cxxstd == 'default' else \
|
||||
getattr(self.compiler, 'cxx{0}_flag'.format(cxxstd))
|
||||
spack_env.append_flags('CXXFLAGS', cxxstdflag)
|
||||
env.append_flags('CXXFLAGS', cxxstdflag)
|
||||
|
@ -47,7 +47,10 @@ def configure_args(self):
|
||||
]
|
||||
return args
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
"""Prepend the sbin directory to PATH."""
|
||||
spack_env.prepend_path('PATH', self.prefix.sbin)
|
||||
run_env.prepend_path('PATH', self.prefix.sbin)
|
||||
env.prepend_path('PATH', self.prefix.sbin)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
"""Prepend the sbin directory to PATH."""
|
||||
env.prepend_path('PATH', self.prefix.sbin)
|
||||
|
@ -54,7 +54,7 @@ def install(self, spec, prefix):
|
||||
make()
|
||||
make('install')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# default path for log file, could be user or site specific setting
|
||||
darshan_log_dir = '%s' % os.environ['HOME']
|
||||
run_env.set('DARSHAN_LOG_DIR_PATH', darshan_log_dir)
|
||||
darshan_log_dir = os.environ['HOME']
|
||||
env.set('DARSHAN_LOG_DIR_PATH', darshan_log_dir)
|
||||
|
@ -17,5 +17,5 @@ class DealiiParameterGui(CMakePackage):
|
||||
|
||||
depends_on('qt')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('PARAMETER_GUI_DIR', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('PARAMETER_GUI_DIR', self.prefix)
|
||||
|
@ -37,5 +37,5 @@ def install(self, spec, prefix):
|
||||
chmod('+x', join_path(prefix.bin, 'deconseq.pl'))
|
||||
chmod('+x', join_path(prefix.bin, 'splitFasta.pl'))
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PERL5LIB', prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PERL5LIB', self.prefix)
|
||||
|
@ -24,5 +24,5 @@ def install(self, spec, prefix):
|
||||
mkdirp(prefix.share)
|
||||
install_tree('dialign2_dir', prefix.share)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('DIALIGN2_DIR', self.prefix.share)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('DIALIGN2_DIR', self.prefix.share)
|
||||
|
@ -32,10 +32,10 @@ class Dmd(MakefilePackage):
|
||||
sha256='71fa249dbfd278eec2b95ce577af32e623e44caf0d993905ddc189e3beec21d0',
|
||||
placement='tools')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix.linux.bin64)
|
||||
run_env.prepend_path('LIBRARY_PATH', self.prefix.linux.lib64)
|
||||
run_env.prepend_path('LD_LIBRARY_PATH', self.prefix.linux.lib64)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix.linux.bin64)
|
||||
env.prepend_path('LIBRARY_PATH', self.prefix.linux.lib64)
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.prefix.linux.lib64)
|
||||
|
||||
def edit(self, spec, prefix):
|
||||
# Move contents to dmd/
|
||||
|
@ -26,10 +26,10 @@ def install(self, spec, prefix):
|
||||
def catalog(self):
|
||||
return os.path.join(self.prefix, 'catalog.xml')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
catalog = self.catalog
|
||||
run_env.set('XML_CATALOG_FILES', catalog, separator=' ')
|
||||
env.set('XML_CATALOG_FILES', catalog, separator=' ')
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
catalog = self.catalog
|
||||
spack_env.prepend_path("XML_CATALOG_FILES", catalog)
|
||||
env.prepend_path("XML_CATALOG_FILES", catalog)
|
||||
|
@ -45,6 +45,3 @@ def build(self, spec, prefix):
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(spec.prefix.bin)
|
||||
install('ecj1', spec.prefix.bin)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix.bin)
|
||||
|
@ -48,9 +48,8 @@ class Eigen(CMakePackage):
|
||||
|
||||
patch('find-ptscotch.patch', when='@3.3.4')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('CPATH',
|
||||
join_path(self.prefix, 'include', 'eigen3'))
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('CPATH', self.prefix.include.eigen3)
|
||||
|
||||
@property
|
||||
def headers(self):
|
||||
|
@ -18,6 +18,3 @@ class EverytraceExample(CMakePackage):
|
||||
|
||||
# Currently the only MPI this everytrace works with.
|
||||
depends_on('openmpi')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', join_path(self.prefix, 'bin'))
|
||||
|
@ -31,6 +31,3 @@ def cmake_args(self):
|
||||
'-DUSE_MPI=%s' % ('YES' if '+mpi' in spec else 'NO'),
|
||||
'-DUSE_FORTRAN=%s' % ('YES' if '+fortran' in spec else 'NO'),
|
||||
'-DUSE_CXX=%s' % ('YES' if '+cxx' in spec else 'NO')]
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', join_path(self.prefix, 'bin'))
|
||||
|
@ -40,6 +40,6 @@ def patch(self):
|
||||
edit.filter(r'\${CMAKE_CURRENT_SOURCE_DIR}/../bamtools/lib/'
|
||||
'libbamtools.a', '%s' % self.spec['bamtools'].libs)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.prepend_path('CPATH', self.spec[
|
||||
'bamtools'].prefix.include.bamtools)
|
||||
def setup_build_environment(self, env):
|
||||
env.prepend_path('CPATH',
|
||||
self.spec['bamtools'].prefix.include.bamtools)
|
||||
|
@ -101,10 +101,10 @@ def install(self, spec, prefix):
|
||||
else:
|
||||
make('install', parallel=False)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# set EXTRAE_HOME in the module file
|
||||
run_env.set('EXTRAE_HOME', self.prefix)
|
||||
env.set('EXTRAE_HOME', self.prefix)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
# set EXTRAE_HOME for everyone using the Extrae package
|
||||
spack_env.set('EXTRAE_HOME', self.prefix)
|
||||
env.set('EXTRAE_HOME', self.prefix)
|
||||
|
@ -34,8 +34,8 @@ def install(self, spec, prefix):
|
||||
|
||||
# In theory the 'run' dependency on 'jdk' above should take
|
||||
# care of this for me. In practice, it does not.
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
"""Add <prefix> to the path; the package has a script at the
|
||||
top level.
|
||||
"""
|
||||
run_env.prepend_path('PATH', self.spec['java'].prefix.bin)
|
||||
env.prepend_path('PATH', self.spec['java'].prefix.bin)
|
||||
|
@ -34,6 +34,6 @@ class Fgsl(AutotoolsPackage):
|
||||
def create_m4_dir(self):
|
||||
mkdir('m4')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if self.compiler.name == 'gcc':
|
||||
spack_env.append_flags('FCFLAGS', "-ffree-line-length-none")
|
||||
env.append_flags('FCFLAGS', "-ffree-line-length-none")
|
||||
|
@ -71,9 +71,11 @@ def post_install(self):
|
||||
chmod = which('chmod')
|
||||
chmod('+x', flang)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# to find llvm's libc++.so
|
||||
spack_env.set('LD_LIBRARY_PATH', self.spec['llvm'].prefix.lib)
|
||||
run_env.set('FC', join_path(self.spec.prefix.bin, 'flang'))
|
||||
run_env.set('F77', join_path(self.spec.prefix.bin, 'flang'))
|
||||
run_env.set('F90', join_path(self.spec.prefix.bin, 'flang'))
|
||||
env.set('LD_LIBRARY_PATH', self.spec['llvm'].prefix.lib)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.set('FC', self.spec.prefix.bin.flang)
|
||||
env.set('F77', self.spec.prefix.bin.flang)
|
||||
env.set('F90', self.spec.prefix.bin.flang)
|
||||
|
@ -118,7 +118,7 @@ class FoamExtend(Package):
|
||||
# - End of definitions / setup -
|
||||
#
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
"""Add environment variables to the generated module file.
|
||||
These environment variables come from running:
|
||||
|
||||
@ -126,13 +126,6 @@ def setup_environment(self, spack_env, run_env):
|
||||
|
||||
$ . $WM_PROJECT_DIR/etc/bashrc
|
||||
"""
|
||||
|
||||
# NOTE: Spack runs setup_environment twice.
|
||||
# 1) pre-build to set up the build environment
|
||||
# 2) post-install to determine runtime environment variables
|
||||
# The etc/bashrc is only available (with corrrect content)
|
||||
# post-installation.
|
||||
|
||||
bashrc = join_path(self.projectdir, 'etc', 'bashrc')
|
||||
minimal = True
|
||||
if os.path.isfile(bashrc):
|
||||
@ -173,7 +166,7 @@ def setup_environment(self, spack_env, run_env):
|
||||
'PYTHON_BIN_DIR',
|
||||
])
|
||||
|
||||
run_env.extend(mods)
|
||||
env.extend(mods)
|
||||
minimal = False
|
||||
tty.info('foam-extend env: {0}'.format(bashrc))
|
||||
except Exception:
|
||||
@ -182,19 +175,19 @@ def setup_environment(self, spack_env, run_env):
|
||||
if minimal:
|
||||
# pre-build or minimal environment
|
||||
tty.info('foam-extend minimal env {0}'.format(self.prefix))
|
||||
run_env.set('FOAM_INST_DIR', os.path.dirname(self.projectdir)),
|
||||
run_env.set('FOAM_PROJECT_DIR', self.projectdir)
|
||||
run_env.set('WM_PROJECT_DIR', self.projectdir)
|
||||
env.set('FOAM_INST_DIR', os.path.dirname(self.projectdir)),
|
||||
env.set('FOAM_PROJECT_DIR', self.projectdir)
|
||||
env.set('WM_PROJECT_DIR', self.projectdir)
|
||||
for d in ['wmake', self.archbin]: # bin added automatically
|
||||
run_env.prepend_path('PATH', join_path(self.projectdir, d))
|
||||
env.prepend_path('PATH', join_path(self.projectdir, d))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
"""Location of the OpenFOAM project.
|
||||
This is identical to the WM_PROJECT_DIR value, but we avoid that
|
||||
variable since it would mask the normal OpenFOAM cleanup of
|
||||
previous versions.
|
||||
"""
|
||||
spack_env.set('FOAM_PROJECT_DIR', self.projectdir)
|
||||
env.set('FOAM_PROJECT_DIR', self.projectdir)
|
||||
|
||||
@property
|
||||
def projectdir(self):
|
||||
|
@ -77,10 +77,9 @@ class FontUtil(AutotoolsPackage):
|
||||
default=','.join(fonts),
|
||||
multi=True)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.prepend_path('PATH', self.prefix.bin)
|
||||
spack_env.prepend_path('PKG_CONFIG_PATH',
|
||||
join_path(self.prefix.lib, 'pkgconfig'))
|
||||
def setup_build_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix.bin)
|
||||
env.prepend_path('PKG_CONFIG_PATH', self.prefix.lib.pkgconfig)
|
||||
|
||||
@run_after('install')
|
||||
def font_install(self):
|
||||
|
@ -51,33 +51,33 @@ def install(self, spec, prefix):
|
||||
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if not self.stage.source_path:
|
||||
self.stage.fetch()
|
||||
self.stage.expand_archive()
|
||||
|
||||
spack_env.set('FSLDIR', self.stage.source_path)
|
||||
|
||||
# Here, run-time environment variables are being set manually.
|
||||
# Normally these would be added to the modulefile at build-time
|
||||
# by sourcing fsl.sh, but incorrect paths were being set, pointing to
|
||||
# the staging directory rather than the install directory.
|
||||
run_env.set('FSLDIR', self.prefix)
|
||||
run_env.set('FSLOUTPUTTYPE', 'NIFTI_GZ')
|
||||
run_env.set('FSLMULTIFILEQUIT', 'TRUE')
|
||||
run_env.set('FSLTCLSH', self.prefix.bin.fsltclsh)
|
||||
run_env.set('FSLWISH', self.prefix.bin.fslwish)
|
||||
run_env.set('FSLLOCKDIR', '')
|
||||
run_env.set('FSLMACHINELIST', '')
|
||||
run_env.set('FSLREMOTECALL', '')
|
||||
run_env.set('FSLGECUDAQ', 'cuda.q')
|
||||
|
||||
run_env.prepend_path('PATH', self.prefix)
|
||||
env.set('FSLDIR', self.stage.source_path)
|
||||
|
||||
# Below is for sourcing purposes during building
|
||||
fslsetup = join_path(self.stage.source_path, 'etc', 'fslconf',
|
||||
'fsl.sh')
|
||||
|
||||
if os.path.isfile(fslsetup):
|
||||
spack_env.extend(EnvironmentModifications.from_sourcing_file(
|
||||
fslsetup))
|
||||
env.extend(EnvironmentModifications.from_sourcing_file(fslsetup))
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
# Here, run-time environment variables are being set manually.
|
||||
# Normally these would be added to the modulefile at build-time
|
||||
# by sourcing fsl.sh, but incorrect paths were being set, pointing to
|
||||
# the staging directory rather than the install directory.
|
||||
env.set('FSLDIR', self.prefix)
|
||||
env.set('FSLOUTPUTTYPE', 'NIFTI_GZ')
|
||||
env.set('FSLMULTIFILEQUIT', 'TRUE')
|
||||
env.set('FSLTCLSH', self.prefix.bin.fsltclsh)
|
||||
env.set('FSLWISH', self.prefix.bin.fslwish)
|
||||
env.set('FSLLOCKDIR', '')
|
||||
env.set('FSLMACHINELIST', '')
|
||||
env.set('FSLREMOTECALL', '')
|
||||
env.set('FSLGECUDAQ', 'cuda.q')
|
||||
|
||||
env.prepend_path('PATH', self.prefix)
|
||||
|
@ -33,8 +33,8 @@ def setup_dependent_package(self, module, dependent_spec):
|
||||
self.spec.mpif77 = self.prefix.bin.mpifrt
|
||||
self.spec.mpifc = self.prefix.bin.mpifrt
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('MPICC', self.prefix.bin.mpifcc)
|
||||
spack_env.set('MPICXX', self.prefix.bin.mpiFCC)
|
||||
spack_env.set('MPIF77', self.prefix.bin.mpifrt)
|
||||
spack_env.set('MPIF90', self.prefix.bin.mpifrt)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('MPICC', self.prefix.bin.mpifcc)
|
||||
env.set('MPICXX', self.prefix.bin.mpiFCC)
|
||||
env.set('MPIF77', self.prefix.bin.mpifrt)
|
||||
env.set('MPIF90', self.prefix.bin.mpifrt)
|
||||
|
@ -21,8 +21,8 @@ def install(self, spec, prefix):
|
||||
.format(self.version))
|
||||
install_tree(self.stage.source_path, install_path)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
run_env.set('G4ENSDFSTATEDATA', join_path(prefix.share, 'data'))
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.set('G4ENSDFSTATEDATA', self.prefix.share.data)
|
||||
|
||||
def url_for_version(self, version):
|
||||
"""Handle version string."""
|
||||
|
@ -20,10 +20,9 @@ class Gams(Package):
|
||||
def url_for_version(self, version):
|
||||
return "file://{0}/linux_x64_64_sfx.exe".format(os.getcwd())
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path("PATH", join_path(self.prefix,
|
||||
'gams{0}_linux_x64_64_sfx'
|
||||
.format(self.version)))
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path("PATH", join_path(
|
||||
self.prefix, 'gams{0}_linux_x64_64_sfx'.format(self.version)))
|
||||
|
||||
def install(self, spec, prefix):
|
||||
os.chmod(join_path(self.stage.source_path,
|
||||
|
@ -87,7 +87,7 @@ def install(self, spec, prefix):
|
||||
**kwargs
|
||||
)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path(
|
||||
"GATK", join_path(self.prefix, "bin", "GenomeAnalysisTK.jar")
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path(
|
||||
"GATK", join_path(self.prefix.bin, "GenomeAnalysisTK.jar")
|
||||
)
|
||||
|
@ -38,15 +38,14 @@ def install(self, spec, prefix):
|
||||
filter_file('/usr/bin/linda', prefix.bin, join_path(prefix.bin,
|
||||
filename), string='True')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('g09root', self.prefix)
|
||||
run_env.set('GAUSSIANHOME', self.prefix)
|
||||
run_env.set('GAUSS_EXEDIR', self.prefix.bin)
|
||||
run_env.set('G09_BASIS', join_path(self.prefix.bin, 'basis'))
|
||||
run_env.set('GAUSS_LEXEDIR', join_path(self.prefix.bin,
|
||||
'linda-exe'))
|
||||
run_env.set('GAUSS_ARCHDIR', join_path(self.prefix.bin, 'arch'))
|
||||
run_env.set('GAUSS_BSDDIR', join_path(self.prefix.bin, 'bsd'))
|
||||
run_env.prepend_path('LD_LIBRARY_PATH', join_path(self.prefix.bin,
|
||||
'linda8.2/opteron-linux/lib'))
|
||||
run_env.prepend_path('LD_LIBRARY_PATH', self.prefix.bin)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('g09root', self.prefix)
|
||||
env.set('GAUSSIANHOME', self.prefix)
|
||||
env.set('GAUSS_EXEDIR', self.prefix.bin)
|
||||
env.set('G09_BASIS', self.prefix.bin.basis)
|
||||
env.set('GAUSS_LEXEDIR', join_path(self.prefix.bin, 'linda-exe'))
|
||||
env.set('GAUSS_ARCHDIR', self.prefix.bin.arch)
|
||||
env.set('GAUSS_BSDDIR', self.prefix.bin.bsd)
|
||||
env.prepend_path('LD_LIBRARY_PATH', join_path(self.prefix.bin,
|
||||
'linda8.2', 'opteron-linux', 'lib'))
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.prefix.bin)
|
||||
|
@ -46,11 +46,11 @@ def url_for_version(self, version):
|
||||
url = "https://ftp.acc.umu.se/pub/gnome/sources/gdk-pixbuf/{0}/gdk-pixbuf-{1}.tar.xz"
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
@ -81,7 +81,7 @@ def install(self, spec, prefix):
|
||||
if self.run_tests:
|
||||
make('installcheck')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# The "post-install.sh" script uses gdk-pixbuf-query-loaders,
|
||||
# which was installed earlier.
|
||||
spack_env.prepend_path('PATH', self.prefix.bin)
|
||||
env.prepend_path('PATH', self.prefix.bin)
|
||||
|
@ -145,7 +145,7 @@ def make_data_links(self):
|
||||
target = os.readlink(d)
|
||||
os.symlink(target, os.path.basename(target))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dep_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
version = self.version
|
||||
major = version[0]
|
||||
minor = version[1]
|
||||
@ -154,6 +154,5 @@ def setup_dependent_environment(self, spack_env, run_env, dep_spec):
|
||||
else:
|
||||
patch = 0
|
||||
datadir = 'Geant4-%s.%s.%s' % (major, minor, patch)
|
||||
spack_env.append_path('CMAKE_MODULE_PATH',
|
||||
'{0}/{1}/Modules'.format(
|
||||
self.prefix.lib64, datadir))
|
||||
env.append_path('CMAKE_MODULE_PATH', join_path(
|
||||
self.prefix.lib64, datadir, 'Modules'))
|
||||
|
@ -55,5 +55,5 @@ def filter_sbang(self):
|
||||
for file in files:
|
||||
filter_file(pattern, repl, *files, backup=False)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PERL5LIB', prefix.lib)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PERL5LIB', self.prefix.lib)
|
||||
|
@ -25,5 +25,5 @@ class Genometools(MakefilePackage):
|
||||
def install(self, spec, prefix):
|
||||
make('install', 'prefix=%s' % prefix)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('CPATH', self.prefix.include.genometools)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('CPATH', self.prefix.include.genometools)
|
||||
|
@ -185,13 +185,13 @@ class Git(AutotoolsPackage):
|
||||
depends_on('m4', type='build')
|
||||
depends_on('tk', type=('build', 'link'), when='+tcltk')
|
||||
|
||||
# See the comment in setup_environment re EXTLIBS.
|
||||
# See the comment in setup_build_environment re EXTLIBS.
|
||||
def patch(self):
|
||||
filter_file(r'^EXTLIBS =$',
|
||||
'#EXTLIBS =',
|
||||
'Makefile')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# We use EXTLIBS rather than LDFLAGS so that git's Makefile
|
||||
# inserts the information into the proper place in the link commands
|
||||
# (alongside the # other libraries/paths that configure discovers).
|
||||
@ -204,9 +204,9 @@ def setup_environment(self, spack_env, run_env):
|
||||
# In that case the node in the DAG gets truncated and git DOES NOT
|
||||
# have a gettext dependency.
|
||||
if 'gettext' in self.spec:
|
||||
spack_env.append_flags('EXTLIBS', '-L{0} -lintl'.format(
|
||||
env.append_flags('EXTLIBS', '-L{0} -lintl'.format(
|
||||
self.spec['gettext'].prefix.lib))
|
||||
spack_env.append_flags('CFLAGS', '-I{0}'.format(
|
||||
env.append_flags('CFLAGS', '-I{0}'.format(
|
||||
self.spec['gettext'].prefix.include))
|
||||
|
||||
def configure_args(self):
|
||||
|
@ -4,7 +4,6 @@
|
||||
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
|
||||
class Gnutls(AutotoolsPackage):
|
||||
@ -49,11 +48,10 @@ def url_for_version(self, version):
|
||||
url = "https://www.gnupg.org/ftp/gcrypt/gnutls/v{0}/gnutls-{1}.tar.xz"
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_environment(self, build_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
spec = self.spec
|
||||
if '+guile' in spec:
|
||||
build_env.set('GUILE', os.path.join(spec["guile"].prefix.bin,
|
||||
'guile'))
|
||||
env.set('GUILE', spec["guile"].prefix.bin.guile)
|
||||
|
||||
def configure_args(self):
|
||||
spec = self.spec
|
||||
|
@ -55,8 +55,8 @@ def install(self, spec, prefix):
|
||||
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('GOROOT_BOOTSTRAP', self.spec.prefix)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('GOROOT_BOOTSTRAP', self.spec.prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('GOROOT_FINAL', self.spec.prefix)
|
||||
def setup_build_environment(self, env):
|
||||
env.set('GOROOT_FINAL', self.spec.prefix)
|
||||
|
@ -57,9 +57,11 @@ def url_for_version(self, version):
|
||||
url = 'http://ftp.gnome.org/pub/gnome/sources/gobject-introspection/{0}/gobject-introspection-{1}.tar.xz'
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
@ -69,5 +71,5 @@ def install(self, spec, prefix):
|
||||
make()
|
||||
make("install")
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('SPACK_SBANG', "%s/bin/sbang" % spack_root)
|
||||
def setup_build_environment(self, env):
|
||||
env.set('SPACK_SBANG', "%s/bin/sbang" % spack_root)
|
||||
|
@ -51,5 +51,5 @@ def install(self, spec, prefix):
|
||||
# The gpu_burn program looks for the compare.ptx file in the current
|
||||
# working directory. Create an environment variable that can be pointed to
|
||||
# so that it can be copied or linked.
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('COMPARE_PTX', join_path(self.prefix.share, 'compare.ptx'))
|
||||
def setup_run_environment(self, env):
|
||||
env.set('COMPARE_PTX', join_path(self.prefix.share, 'compare.ptx'))
|
||||
|
@ -25,16 +25,16 @@ class Grnboost(Package):
|
||||
depends_on('xgboost+jvm-packages', type='run')
|
||||
depends_on('spark+hadoop', type='run')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
grnboost_jar = join_path(self.prefix, 'target',
|
||||
'scala-2.11', 'GRNBoost.jar')
|
||||
xgboost_version = self.spec['xgboost'].version.string
|
||||
xgboost_jar = join_path(self.spec['xgboost'].prefix,
|
||||
'xgboost4j-' + xgboost_version + '.jar')
|
||||
run_env.set('GRNBOOST_JAR', grnboost_jar)
|
||||
run_env.set('JAVA_HOME', self.spec['java'].prefix)
|
||||
run_env.set('CLASSPATH', xgboost_jar)
|
||||
run_env.set('XGBOOST_JAR', xgboost_jar)
|
||||
env.set('GRNBOOST_JAR', grnboost_jar)
|
||||
env.set('JAVA_HOME', self.spec['java'].prefix)
|
||||
env.set('CLASSPATH', xgboost_jar)
|
||||
env.set('XGBOOST_JAR', xgboost_jar)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
sbt = which('sbt')
|
||||
|
@ -48,11 +48,11 @@ def patch(self):
|
||||
filter_file(r'CFLAGS="-DGDK_PIXBUF_DISABLE_DEPRECATED $CFLAGS"',
|
||||
'', 'configure', string=True)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS",
|
||||
self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def configure_args(self):
|
||||
args = []
|
||||
|
@ -42,13 +42,17 @@ def url_for_version(self, version):
|
||||
url += '{0}/gtksourceview-{1}.tar.xz'
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
|
||||
# TODO: If https://github.com/spack/spack/pull/12344 is merged, this
|
||||
# method is unnecessary.
|
||||
|
@ -35,8 +35,8 @@ class Gurobi(Package):
|
||||
def url_for_version(self, version):
|
||||
return "file://{0}/gurobi{1}_linux64.tar.gz".format(os.getcwd(), version)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('GUROBI_HOME', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('GUROBI_HOME', self.prefix)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
install_tree('linux64', prefix)
|
||||
|
@ -183,10 +183,14 @@ def check_install(self, spec):
|
||||
raise RuntimeError("HDF5 Blosc plugin check failed")
|
||||
shutil.rmtree(checkdir)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
run_env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
def setup_build_environment(self, env):
|
||||
env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
run_env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
def setup_run_environment(self, env):
|
||||
env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.append_path("HDF5_PLUGIN_PATH", self.spec.prefix.lib)
|
||||
|
@ -40,5 +40,5 @@ def install(self, spec, prefix):
|
||||
if os.path.isfile(file):
|
||||
install(file, prefix.bin)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.spec.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.spec.prefix)
|
||||
|
@ -31,8 +31,8 @@ class Hybpiper(Package):
|
||||
depends_on('bwa')
|
||||
depends_on('samtools')
|
||||
|
||||
def setup_envionment(self, spack_env, run_env):
|
||||
run_env.set('HYBPIPER_HOME', prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('HYBPIPER_HOME', self.prefix)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
mkdirp(prefix.bin)
|
||||
|
@ -48,11 +48,11 @@ def home(self):
|
||||
def libs(self):
|
||||
return find_libraries(['libjvm'], root=self.home, recursive=True)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('JAVA_HOME', self.home)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('JAVA_HOME', self.home)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.set('JAVA_HOME', self.home)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.set('JAVA_HOME', self.home)
|
||||
|
||||
def setup_dependent_package(self, module, dependent_spec):
|
||||
self.spec.home = self.home
|
||||
|
@ -153,18 +153,18 @@ def configure_args(self):
|
||||
]
|
||||
return args
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
"""Set JAVA_HOME."""
|
||||
|
||||
run_env.set('JAVA_HOME', self.home)
|
||||
env.set('JAVA_HOME', self.home)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
"""Set JAVA_HOME and CLASSPATH.
|
||||
|
||||
CLASSPATH contains the installation prefix for the extension and any
|
||||
other Java extensions it depends on."""
|
||||
|
||||
spack_env.set('JAVA_HOME', self.home)
|
||||
env.set('JAVA_HOME', self.home)
|
||||
|
||||
class_paths = []
|
||||
for d in dependent_spec.traverse(deptype=('build', 'run', 'test')):
|
||||
@ -172,14 +172,19 @@ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
class_paths.extend(find(d.prefix, '*.jar'))
|
||||
|
||||
classpath = os.pathsep.join(class_paths)
|
||||
spack_env.set('CLASSPATH', classpath)
|
||||
env.set('CLASSPATH', classpath)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
"""Set CLASSPATH.
|
||||
|
||||
CLASSPATH contains the installation prefix for the extension and any
|
||||
other Java extensions it depends on."""
|
||||
# For runtime environment set only the path for
|
||||
# dependent_spec and prepend it to CLASSPATH
|
||||
if dependent_spec.package.extends(self.spec):
|
||||
class_paths = find(dependent_spec.prefix, '*.jar')
|
||||
classpath = os.pathsep.join(class_paths)
|
||||
run_env.prepend_path('CLASSPATH', classpath)
|
||||
env.prepend_path('CLASSPATH', classpath)
|
||||
|
||||
def setup_dependent_package(self, module, dependent_spec):
|
||||
"""Allows spec['java'].home to work."""
|
||||
|
@ -22,6 +22,6 @@ class Icet(CMakePackage):
|
||||
def cmake_args(self):
|
||||
return ['-DICET_USE_OPENGL:BOOL=OFF']
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
"""Work-around for ill-placed CMake modules"""
|
||||
spack_env.prepend_path('CMAKE_PREFIX_PATH', self.prefix.lib)
|
||||
env.prepend_path('CMAKE_PREFIX_PATH', self.prefix.lib)
|
||||
|
@ -20,6 +20,6 @@ class Jmol(Package):
|
||||
def install(self, spec, prefix):
|
||||
install_tree('jmol-{0}'.format(self.version), prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix)
|
||||
run_env.set('JMOL_HOME', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix)
|
||||
env.set('JMOL_HOME', self.prefix)
|
||||
|
@ -33,10 +33,8 @@ class Jube(PythonPackage):
|
||||
|
||||
depends_on('py-setuptools', type='build')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
if not self.spec.variants['resource_manager'].value == 'none':
|
||||
run_env.prepend_path(
|
||||
'JUBE_INCLUDE_PATH',
|
||||
prefix + "/platform/" +
|
||||
self.spec.variants['resource_manager'].value
|
||||
)
|
||||
env.prepend_path('JUBE_INCLUDE_PATH', join_path(
|
||||
self.prefix.platform,
|
||||
self.spec.variants['resource_manager'].value))
|
||||
|
@ -24,15 +24,11 @@ class Karma(Package):
|
||||
phases = ['install']
|
||||
|
||||
resource(
|
||||
name='karma-linux',
|
||||
url='ftp://ftp.atnf.csiro.au/pub/software/karma/karma-1.7.25-amd64_Linux_libc6.3.tar.bz2',
|
||||
sha256='effc3ed61c28b966b357147d90357d03c22d743c6af6edb49a863c6eb625a441',
|
||||
destination='./'
|
||||
)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('LIBRARY_PATH', self.prefix.lib)
|
||||
run_env.prepend_path('LD_LIBRARY_PATH', self.prefix.lib)
|
||||
name='karma-linux',
|
||||
url='ftp://ftp.atnf.csiro.au/pub/software/karma/karma-1.7.25-amd64_Linux_libc6.3.tar.bz2',
|
||||
sha256='effc3ed61c28b966b357147d90357d03c22d743c6af6edb49a863c6eb625a441',
|
||||
destination='./'
|
||||
)
|
||||
|
||||
def install(self, spec, prefix):
|
||||
install_tree('./karma-1.7.25/amd64_Linux_libc6.3/bin', prefix.bin)
|
||||
|
@ -28,9 +28,9 @@ class Launchmon(AutotoolsPackage):
|
||||
|
||||
patch('launchmon-char-conv.patch', when='@1.0.2')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if self.spec.satisfies('@master'):
|
||||
# automake for launchmon requires the AM_PATH_LIBGCRYPT macro
|
||||
# which is defined in libgcrypt.m4
|
||||
spack_env.prepend_path('ACLOCAL_PATH',
|
||||
self.spec['libgcrypt'].prefix.share.aclocal)
|
||||
env.prepend_path('ACLOCAL_PATH',
|
||||
self.spec['libgcrypt'].prefix.share.aclocal)
|
||||
|
@ -31,14 +31,14 @@ class LdcBootstrap(CMakePackage):
|
||||
depends_on('libedit')
|
||||
depends_on('binutils')
|
||||
|
||||
def setup_dependent_environment(self, build_env, run_env, dep_spec):
|
||||
def setup_dependent_build_environment(self, env, dep_spec):
|
||||
|
||||
# The code below relies on this function being executed after the
|
||||
# environment has been sanitized (because LD_LIBRARY_PATH is among
|
||||
# the variables that get unset)
|
||||
|
||||
# We need libphobos in LD_LIBRARY_PATH
|
||||
build_env.prepend_path('LD_LIBRARY_PATH', self.prefix.lib)
|
||||
env.prepend_path('LD_LIBRARY_PATH', self.prefix.lib)
|
||||
|
||||
def cmake_args(self):
|
||||
return [
|
||||
|
@ -90,9 +90,9 @@ class Libfabric(AutotoolsPackage):
|
||||
sha256='3b78d0ca1b223ff21b7f5b3627e67e358e3c18b700f86b017e2233fee7e88c2e',
|
||||
placement='fabtests', when='@1.5.0')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if self.run_tests:
|
||||
spack_env.prepend_path('PATH', self.prefix.bin)
|
||||
env.prepend_path('PATH', self.prefix.bin)
|
||||
|
||||
@when('@develop')
|
||||
def autoreconf(self, spec, prefix):
|
||||
|
@ -81,15 +81,15 @@ def optflags(self):
|
||||
|
||||
return flags
|
||||
|
||||
def setup_environment(self, build_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# Set optimization flags
|
||||
build_env.set('CFLAGS', self.optflags)
|
||||
build_env.set('CXXFLAGS', self.optflags)
|
||||
env.set('CFLAGS', self.optflags)
|
||||
env.set('CXXFLAGS', self.optflags)
|
||||
|
||||
# Change AR to xiar if we compile with Intel and we
|
||||
# find the executable
|
||||
if '%intel' in self.spec and which('xiar'):
|
||||
build_env.set('AR', 'xiar')
|
||||
env.set('AR', 'xiar')
|
||||
|
||||
def configure_args(self):
|
||||
|
||||
|
@ -245,5 +245,5 @@ def configure_args(self):
|
||||
|
||||
return options
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.append_flags('PERL', self.spec['perl'].command.path)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.append_flags('PERL', self.spec['perl'].command.path)
|
||||
|
@ -44,11 +44,13 @@ def url_for_version(self, version):
|
||||
url += '{0}/libpeas-{1}.tar.xz'
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
# Let
|
||||
#
|
||||
# python = self.spec['python']
|
||||
@ -76,10 +78,11 @@ def setup_environment(self, spack_env, run_env):
|
||||
python_pc_file = os.path.join(python_prefix, 'python3.pc')
|
||||
python_ldflags = pkg_config('--libs', python_pc_file, output=str)
|
||||
|
||||
spack_env.append_path('LDFLAGS',
|
||||
python_ldflags)
|
||||
spack_env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
run_env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
env.append_path('LDFLAGS', python_ldflags)
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def autoreconf(self, spec, prefix):
|
||||
autoreconf_args = ['-ivf']
|
||||
|
@ -30,10 +30,14 @@ def url_for_version(self, version):
|
||||
url += "{0}/librsvg-{1}.tar.xz"
|
||||
return url.format(version.up_to(2), version)
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
run_env.prepend_path("XDG_DATA_DIRS", self.prefix.share)
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_build_environment(self, env):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('XDG_DATA_DIRS', self.prefix.share)
|
||||
|
@ -37,9 +37,8 @@ def autoreconf(self, spec, prefix):
|
||||
def _make_executable(self, name):
|
||||
return Executable(join_path(self.prefix.bin, name))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.append_path('ACLOCAL_PATH',
|
||||
join_path(self.prefix.share, 'aclocal'))
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.append_path('ACLOCAL_PATH', self.prefix.share.aclocal)
|
||||
|
||||
def setup_dependent_package(self, module, dependent_spec):
|
||||
# Automake is very likely to be a build dependency, so we add
|
||||
|
@ -27,9 +27,11 @@ class Libx11(AutotoolsPackage):
|
||||
depends_on('util-macros', type='build')
|
||||
depends_on('perl', type='build')
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
spack_env.prepend_path('XLOCALEDIR', self.prefix.share.X11.locale)
|
||||
run_env.prepend_path('XLOCALEDIR', self.prefix.share.X11.locale)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XLOCALEDIR', self.prefix.share.X11.locale)
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
env.prepend_path('XLOCALEDIR', self.prefix.share.X11.locale)
|
||||
|
||||
@property
|
||||
def libs(self):
|
||||
|
@ -49,7 +49,7 @@ def libs(self):
|
||||
libraries, root=self.prefix, shared=shared, recursive=True
|
||||
)
|
||||
|
||||
def setup_build_environment(self, spack_env):
|
||||
def setup_build_environment(self, env):
|
||||
optflags = '-O2'
|
||||
if self.compiler.name == 'intel':
|
||||
# Optimizations for the Intel compiler, suggested by CP2K
|
||||
@ -76,10 +76,10 @@ def setup_build_environment(self, spack_env):
|
||||
#
|
||||
optflags += ' -xSSE4.2 -axAVX,CORE-AVX2 -ipo'
|
||||
if which('xiar'):
|
||||
spack_env.set('AR', 'xiar')
|
||||
env.set('AR', 'xiar')
|
||||
|
||||
spack_env.append_flags('CFLAGS', optflags)
|
||||
spack_env.append_flags('FCFLAGS', optflags)
|
||||
env.append_flags('CFLAGS', optflags)
|
||||
env.append_flags('FCFLAGS', optflags)
|
||||
|
||||
def configure_args(self):
|
||||
args = ['--enable-shared']
|
||||
|
@ -26,10 +26,10 @@ class Libxpm(AutotoolsPackage):
|
||||
depends_on('pkgconfig', type='build')
|
||||
depends_on('util-macros', type='build')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# If libxpm is installed as an external package, gettext won't
|
||||
# be available in the spec. See
|
||||
# https://github.com/spack/spack/issues/9149 for details.
|
||||
if 'gettext' in self.spec:
|
||||
spack_env.append_flags('LDFLAGS', '-L{0} -lintl'.format(
|
||||
env.append_flags('LDFLAGS', '-L{0} -lintl'.format(
|
||||
self.spec['gettext'].prefix.lib))
|
||||
|
@ -16,11 +16,11 @@ class LinuxHeaders(Package):
|
||||
|
||||
version('4.9.10', sha256='bd6e05476fd8d9ea4945e11598d87bc97806bbc8d03556abbaaf809707661525')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# This variable is used in the Makefile. If it is defined on the
|
||||
# system, it can break the build if there is no build recipe for
|
||||
# that specific ARCH
|
||||
spack_env.unset('ARCH')
|
||||
env.unset('ARCH')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
make('headers_install', 'INSTALL_HDR_PATH={0}'.format(prefix))
|
||||
|
@ -48,10 +48,10 @@ class Lmod(AutotoolsPackage):
|
||||
|
||||
parallel = False
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
stage_lua_path = join_path(
|
||||
self.stage.source_path, 'src', '?.lua')
|
||||
spack_env.append_path('LUA_PATH', stage_lua_path.format(
|
||||
env.append_path('LUA_PATH', stage_lua_path.format(
|
||||
version=self.version), separator=';')
|
||||
|
||||
def patch(self):
|
||||
|
@ -94,7 +94,7 @@ def append_paths(self, paths, cpaths, path):
|
||||
paths.append(os.path.join(path, '?', 'init.lua'))
|
||||
cpaths.append(os.path.join(path, '?.so'))
|
||||
|
||||
def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
def _setup_dependent_env_helper(self, env, dependent_spec):
|
||||
lua_paths = []
|
||||
for d in dependent_spec.traverse(
|
||||
deptypes=('build', 'run'), deptype_query='run'):
|
||||
@ -115,38 +115,44 @@ def setup_dependent_environment(self, spack_env, run_env, dependent_spec):
|
||||
os.path.join(self.spec.prefix, self.lua_share_dir)):
|
||||
self.append_paths(lua_patterns, lua_cpatterns, p)
|
||||
|
||||
spack_env.set('LUA_PATH', ';'.join(lua_patterns), separator=';')
|
||||
spack_env.set('LUA_CPATH', ';'.join(lua_cpatterns), separator=';')
|
||||
return lua_patterns, lua_cpatterns
|
||||
|
||||
# Add LUA to PATH for dependent packages
|
||||
spack_env.prepend_path('PATH', self.prefix.bin)
|
||||
def setup_dependent_build_environment(self, env, dependent_spec):
|
||||
lua_patterns, lua_cpatterns = _setup_dependent_env_helper(
|
||||
self, env, dependent_spec)
|
||||
|
||||
env.set('LUA_PATH', ';'.join(lua_patterns), separator=';')
|
||||
env.set('LUA_CPATH', ';'.join(lua_cpatterns), separator=';')
|
||||
|
||||
def setup_dependent_run_environment(self, env, dependent_spec):
|
||||
# For run time environment set only the path for dependent_spec and
|
||||
# prepend it to LUAPATH
|
||||
if dependent_spec.package.extends(self.spec):
|
||||
run_env.prepend_path('LUA_PATH', ';'.join(lua_patterns),
|
||||
separator=';')
|
||||
run_env.prepend_path('LUA_CPATH', ';'.join(lua_cpatterns),
|
||||
separator=';')
|
||||
lua_patterns, lua_cpatterns = _setup_dependent_env_helper(
|
||||
self, env, dependent_spec)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path(
|
||||
if dependent_spec.package.extends(self.spec):
|
||||
env.prepend_path('LUA_PATH', ';'.join(lua_patterns), separator=';')
|
||||
env.prepend_path('LUA_CPATH', ';'.join(lua_cpatterns),
|
||||
separator=';')
|
||||
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path(
|
||||
'LUA_PATH',
|
||||
os.path.join(self.spec.prefix, self.lua_share_dir, '?.lua'),
|
||||
separator=';')
|
||||
run_env.prepend_path(
|
||||
env.prepend_path(
|
||||
'LUA_PATH', os.path.join(self.spec.prefix, self.lua_share_dir, '?',
|
||||
'init.lua'),
|
||||
separator=';')
|
||||
run_env.prepend_path(
|
||||
env.prepend_path(
|
||||
'LUA_PATH',
|
||||
os.path.join(self.spec.prefix, self.lua_lib_dir, '?.lua'),
|
||||
separator=';')
|
||||
run_env.prepend_path(
|
||||
env.prepend_path(
|
||||
'LUA_PATH',
|
||||
os.path.join(self.spec.prefix, self.lua_lib_dir, '?', 'init.lua'),
|
||||
separator=';')
|
||||
run_env.prepend_path(
|
||||
env.prepend_path(
|
||||
'LUA_CPATH',
|
||||
os.path.join(self.spec.prefix, self.lua_lib_dir, '?.so'),
|
||||
separator=';')
|
||||
|
@ -21,11 +21,11 @@ class Mc(AutotoolsPackage):
|
||||
depends_on('glib@2.14:')
|
||||
depends_on('libssh2@1.2.5:')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# Fix compilation bug on macOS by pretending we don't have utimensat()
|
||||
# https://github.com/MidnightCommander/mc/pull/130
|
||||
if 'darwin' in self.spec.architecture:
|
||||
env['ac_cv_func_utimensat'] = 'no'
|
||||
env.set('ac_cv_func_utimensat', 'no')
|
||||
|
||||
def configure_args(self):
|
||||
args = [
|
||||
|
@ -23,5 +23,5 @@ class Mefit(Package):
|
||||
def install(self, spec, prefix):
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix)
|
||||
|
@ -41,8 +41,8 @@ class Memsurfer(PythonPackage):
|
||||
depends_on('hdf5 +hl')
|
||||
|
||||
# memsurfer's setup needs path to these deps to build extension modules
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('VTK_ROOT', self.spec['vtk'].prefix)
|
||||
spack_env.set('CGAL_ROOT', self.spec['cgal'].prefix)
|
||||
spack_env.set('BOOST_ROOT', self.spec['boost'].prefix)
|
||||
spack_env.set('EIGEN_ROOT', self.spec['eigen'].prefix)
|
||||
def setup_build_environment(self, env):
|
||||
env.set('VTK_ROOT', self.spec['vtk'].prefix)
|
||||
env.set('CGAL_ROOT', self.spec['cgal'].prefix)
|
||||
env.set('BOOST_ROOT', self.spec['boost'].prefix)
|
||||
env.set('EIGEN_ROOT', self.spec['eigen'].prefix)
|
||||
|
@ -28,6 +28,6 @@ def patch(self):
|
||||
edit = FileFilter('CMakeLists.txt')
|
||||
edit.filter(r"-static-libstdc\+\+", "")
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.set('MERACULOUS_ROOT', self.prefix)
|
||||
run_env.prepend_path('PERL5LIB', self.prefix.lib)
|
||||
def setup_run_environment(self, env):
|
||||
env.set('MERACULOUS_ROOT', self.prefix)
|
||||
env.prepend_path('PERL5LIB', self.prefix.lib)
|
||||
|
@ -39,12 +39,12 @@ class Mercurial(PythonPackage):
|
||||
depends_on('py-pygments', type=('build', 'run'))
|
||||
depends_on('py-certifi', type=('build', 'run'))
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
# Python 3 support is still experimental, explicitly allow
|
||||
spack_env.set('HGALLOWPYTHON3', True)
|
||||
spack_env.set('HGPYTHON3', True)
|
||||
env.set('HGALLOWPYTHON3', True)
|
||||
env.set('HGPYTHON3', True)
|
||||
# Setuptools is still opt-in, explicitly enable
|
||||
spack_env.set('FORCE_SETUPTOOLS', True)
|
||||
env.set('FORCE_SETUPTOOLS', True)
|
||||
|
||||
@run_after('install')
|
||||
def post_install(self):
|
||||
|
@ -27,8 +27,8 @@ def install(self, spec, prefix):
|
||||
install_tree('RESOURCES', prefix.resources)
|
||||
install_tree('AmosCmp16Spipeline', prefix.AmosCmp16Spipeline)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix.ChimeraSlayer)
|
||||
run_env.prepend_path('PATH', join_path(self.prefix, 'NAST-iEr'))
|
||||
run_env.prepend_path('PATH', self.prefix.TreeChopper)
|
||||
run_env.prepend_path('PATH', self.prefix.WigeoN)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix.ChimeraSlayer)
|
||||
env.prepend_path('PATH', join_path(self.prefix, 'NAST-iEr'))
|
||||
env.prepend_path('PATH', self.prefix.TreeChopper)
|
||||
env.prepend_path('PATH', self.prefix.WigeoN)
|
||||
|
@ -21,5 +21,5 @@ class Mii(MakefilePackage):
|
||||
version('1.0.3', sha256='9b5a0e4e0961cf848677ed61b4f6c03e6a443f8592ed668d1afea302314b47a8')
|
||||
version('1.0.2', sha256='1c2c86ec37779ecd3821c30ce5b6dd19be4ec1813da41832d49ff3dcf615e22d')
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
spack_env.set('PREFIX', self.prefix)
|
||||
def setup_build_environment(self, env):
|
||||
env.set('PREFIX', self.prefix)
|
||||
|
@ -44,6 +44,6 @@ def install(self, spec, prefix):
|
||||
chmod = which('chmod')
|
||||
chmod('+x', join_path(prefix, 'MitoFates.pl'))
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_run_environment(self, env):
|
||||
# We want the main MitoFates.pl script in the path
|
||||
run_env.prepend_path('PATH', self.prefix)
|
||||
env.prepend_path('PATH', self.prefix)
|
||||
|
@ -25,5 +25,5 @@ class Mixcr(Package):
|
||||
def install(self, spec, prefix):
|
||||
install_tree('.', prefix)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
run_env.prepend_path('PATH', self.prefix)
|
||||
def setup_run_environment(self, env):
|
||||
env.prepend_path('PATH', self.prefix)
|
||||
|
@ -24,8 +24,8 @@ def install(self, spec, prefix):
|
||||
mkdirp(prefix.bin)
|
||||
install('mpest', prefix.bin)
|
||||
|
||||
def setup_environment(self, spack_env, run_env):
|
||||
def setup_build_environment(self, env):
|
||||
if self.spec.satisfies('platform=darwin'):
|
||||
spack_env.set('ARCHITECTURE', 'mac')
|
||||
env.set('ARCHITECTURE', 'mac')
|
||||
else:
|
||||
spack_env.set('ARCHITECTURE', 'unix')
|
||||
env.set('ARCHITECTURE', 'unix')
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user