Fix git svn modules (#21169)

* added Git run env to support svn variant modules

* perl-alien-svn needs arp-util to be link

* Update var/spack/repos/builtin/packages/git/package.py
This commit is contained in:
bryanherman 2021-01-23 15:33:39 +00:00 committed by GitHub
parent dba6a26920
commit 5a2fe8add3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 4 deletions

View file

@ -305,3 +305,14 @@ def install_manpages(self):
install_tree('man1', prefix.share.man.man1) install_tree('man1', prefix.share.man.man1)
install_tree('man5', prefix.share.man.man5) install_tree('man5', prefix.share.man.man5)
install_tree('man7', prefix.share.man.man7) install_tree('man7', prefix.share.man.man7)
def setup_run_environment(self, env):
# Setup run environment if using SVN extension
# Libs from perl-alien-svn and apr-util are required in
# LD_LIBRARY_PATH
# TODO: extend to other platforms
if "+svn platform=linux" in self.spec:
perl_svn = self.spec['perl-alien-svn']
env.prepend_path('LD_LIBRARY_PATH', join_path(
perl_svn.prefix, 'lib', 'perl5', 'x86_64-linux-thread-multi',
'Alien', 'SVN'))

View file

@ -3,6 +3,7 @@
# #
# SPDX-License-Identifier: (Apache-2.0 OR MIT) # SPDX-License-Identifier: (Apache-2.0 OR MIT)
import sys
from spack import * from spack import *
@ -23,7 +24,7 @@ class PerlAlienSvn(PerlPackage):
depends_on('perl-module-build', type='build') depends_on('perl-module-build', type='build')
depends_on('apr@1.6.2', type='build') depends_on('apr@1.6.2', type='build')
depends_on('apr-util', type='build') depends_on('apr-util', type=('build', 'link'))
depends_on('sqlite', type='build') depends_on('sqlite', type='build')
depends_on('zlib') depends_on('zlib')
depends_on('libbsd') depends_on('libbsd')
@ -34,6 +35,8 @@ def setup_build_environment(self, env):
def setup_run_environment(self, env): def setup_run_environment(self, env):
# SVN libs are not RPATHed correctly... # SVN libs are not RPATHed correctly...
env.prepend_path('LD_LIBRARY_PATH', join_path( # TODO: extend to other plaforms
self.prefix, 'lib', 'perl5', 'x86_64-linux-thread-multi', if sys.platform.startswith('linux'):
'Alien', 'SVN')) env.prepend_path('LD_LIBRARY_PATH', join_path(
self.prefix, 'lib', 'perl4', 'x86_64-linux-thread-multi',
'Alien', 'SVN'))