From 8ae50ae8bbdd823c4ac3108c7bc835a543329eb3 Mon Sep 17 00:00:00 2001 From: Pramod S Kumbhar Date: Fri, 16 Feb 2018 02:26:37 +0100 Subject: Use abspath to avoid permission errors(#7241) Fixes #5189 When working with non-normalized paths containing ".." on some file systems, Spack was found to encounter a permission error when writing to the path. This normalizes a path written by the intel-parallel-studio package and also normalizes all paths written by the license install hook (for all packages) to avoid this issue for intel-parallel-studio. --- var/spack/repos/builtin/packages/intel-parallel-studio/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py index ccfac3c9a9..e8ac829757 100644 --- a/var/spack/repos/builtin/packages/intel-parallel-studio/package.py +++ b/var/spack/repos/builtin/packages/intel-parallel-studio/package.py @@ -433,6 +433,7 @@ class IntelParallelStudio(IntelPackage): for compiler in ['icc', 'icpc', 'ifort']: cfgfilename = os.path.join( self.prefix, self.bin_dir, '{0}.cfg'.format(compiler)) + cfgfilename = os.path.abspath(cfgfilename) with open(cfgfilename, 'w') as f: f.write('-Xlinker -rpath -Xlinker {0}\n'.format(lib_dir)) @@ -443,7 +444,7 @@ class IntelParallelStudio(IntelPackage): bindir = glob.glob(join_path( self.prefix, 'parallel_studio*', 'bin'))[0] - + bindir = os.path.abspath(bindir) if self.version[1] > 2016: filter_file('^SCRIPTPATH=.*', 'SCRIPTPATH={0}'.format(self.prefix), os.path.join(bindir, 'psxevars.sh'), -- cgit v1.2.3-70-g09d2