summaryrefslogtreecommitdiff
path: root/var
diff options
context:
space:
mode:
authorketsubouchi <67359246+ketsubouchi@users.noreply.github.com>2020-08-03 12:53:14 +0900
committerGitHub <noreply@github.com>2020-08-02 22:53:14 -0500
commita480507a9264d9f4f082d3f70de0de005b71b1d5 (patch)
tree39afcd81c3a02287a826384923a02f1b35661a05 /var
parentac433134e57c519a30a6776eebc95db664dfa31a (diff)
downloadspack-a480507a9264d9f4f082d3f70de0de005b71b1d5.tar.gz
spack-a480507a9264d9f4f082d3f70de0de005b71b1d5.tar.bz2
spack-a480507a9264d9f4f082d3f70de0de005b71b1d5.tar.xz
spack-a480507a9264d9f4f082d3f70de0de005b71b1d5.zip
python: RPATH on fj (#17783)
* python: RPATH on fj * python: patch _is_gcc
Diffstat (limited to 'var')
-rw-r--r--var/spack/repos/builtin/packages/python/fj-rpath-2.3.patch12
-rw-r--r--var/spack/repos/builtin/packages/python/fj-rpath-3.1.patch13
-rw-r--r--var/spack/repos/builtin/packages/python/package.py4
3 files changed, 29 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/python/fj-rpath-2.3.patch b/var/spack/repos/builtin/packages/python/fj-rpath-2.3.patch
new file mode 100644
index 0000000000..2ebda4cc12
--- /dev/null
+++ b/var/spack/repos/builtin/packages/python/fj-rpath-2.3.patch
@@ -0,0 +1,12 @@
+--- a/Lib/distutils/unixccompiler.py 2003-06-02 05:27:40.000000000 +1000
++++ b/Lib/distutils/unixccompiler.py 2017-05-13 13:52:45.554213616 +1000
+@@ -208,7 +208,8 @@
+ elif compiler[:3] == "gcc" or compiler[:3] == "g++":
+ return "-Wl,-R" + dir
+ else:
+- return "-R" + dir
++ # Patched by spack to use GNU ld syntax by default:
++ return "-Wl,--enable-new-dtags,-R" + dir
+
+ def library_option(self, lib):
+ return "-l" + lib
diff --git a/var/spack/repos/builtin/packages/python/fj-rpath-3.1.patch b/var/spack/repos/builtin/packages/python/fj-rpath-3.1.patch
new file mode 100644
index 0000000000..d25b58da77
--- /dev/null
+++ b/var/spack/repos/builtin/packages/python/fj-rpath-3.1.patch
@@ -0,0 +1,13 @@
+--- a/Lib/distutils/unixccompiler.py 2009-05-09 21:55:12.000000000 +1000
++++ b/Lib/distutils/unixccompiler.py 2017-05-13 14:30:18.077518999 +1000
+@@ -215,7 +211,8 @@
+ return "-L" + dir
+
+ def _is_gcc(self, compiler_name):
+- return "gcc" in compiler_name or "g++" in compiler_name
++ return "gcc" in compiler_name or "g++" in compiler_name \
++ or "fcc" in compiler_name or "FCC" in compiler_name
+
+ def runtime_library_dir_option(self, dir):
+ # XXX Hackish, at the very least. See Python bug #445902:
+
diff --git a/var/spack/repos/builtin/packages/python/package.py b/var/spack/repos/builtin/packages/python/package.py
index be79b266bd..16bd621504 100644
--- a/var/spack/repos/builtin/packages/python/package.py
+++ b/var/spack/repos/builtin/packages/python/package.py
@@ -186,6 +186,10 @@ class Python(AutotoolsPackage):
patch('cray-rpath-2.3.patch', when='@2.3:3.0.1 platform=cray')
patch('cray-rpath-3.1.patch', when='@3.1:3.99 platform=cray')
+ # Ensure that distutils chooses correct compiler option for RPATH on fj:
+ patch('fj-rpath-2.3.patch', when='@2.3:3.0.1 %fj')
+ patch('fj-rpath-3.1.patch', when='@3.1:3.99 %fj')
+
# Fixes an alignment problem with more aggressive optimization in gcc8
# https://github.com/python/cpython/commit/0b91f8a668201fc58fa732b8acc496caedfdbae0
patch('gcc-8-2.7.14.patch', when='@2.7.14 %gcc@8:')