PVM package: fix missing install files and runtime env (#28851)

This commit is contained in:
Bryan Herman 2022-02-11 02:03:11 +00:00 committed by GitHub
parent b547819c40
commit 37728900e6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -26,10 +26,11 @@ class Pvm(MakefilePackage):
parallel = False
@property
def pvm_arch(self):
@staticmethod
def pvm_arch(root):
"""Returns the appropriate PVM_ARCH."""
process = subprocess.Popen(['lib/pvmgetarch'], stdout=subprocess.PIPE)
process = subprocess.Popen([
join_path(root, 'lib', 'pvmgetarch')], stdout=subprocess.PIPE)
return process.communicate()[0].strip().decode()
def edit(self, spec, prefix):
@ -39,7 +40,7 @@ def edit(self, spec, prefix):
def patch(self):
pvm_arch = self.pvm_arch
pvm_arch = self.pvm_arch(self.stage.source_path)
if '+fpic' in self.spec:
filter_file(
@ -57,14 +58,17 @@ def setup_build_environment(self, env):
env.set('SPACK_LDLIBS', '-ltirpc')
def install(self, spec, prefix):
pvm_arch = self.pvm_arch
install_tree(join_path('bin', pvm_arch), prefix.bin)
install_tree('bin', prefix.bin)
install_tree('include', prefix.include)
install_tree(join_path('lib', pvm_arch), prefix.lib)
install_tree('lib', prefix.lib)
install_tree('man', prefix.man)
def setup_run_environment(self, env):
# Before running PVM, you must set the environment
# variable "PVM_ROOT" to the path where PVM resides
pvm_arch = self.pvm_arch(self.prefix)
env.set('PVM_ROOT', self.prefix)
env.set('PVM_ARCH', pvm_arch)
env.prepend_path('PATH', join_path(self.prefix, 'lib'))
env.prepend_path('PATH', join_path(self.prefix, 'lib', pvm_arch))