From dc6dca3c365ee566062f5589b57bab9a66112d7e Mon Sep 17 00:00:00 2001
From: "Adam J. Stewart" <ajstewart426@gmail.com>
Date: Sat, 12 Jan 2019 19:37:20 -0600
Subject: [PATCH] cc: clean up cray compilers, fix issues with case-insensitive
 filesystems (#10323)

* Remove Cray CC compilers causing problems on case-insensitive filesystems
* cray -> cce
* Ensure that compiler-specific directory comes first in build-env
* Point to compiler-specific symlinks
---
 lib/spack/env/cce/case-insensitive/CC | 1 +
 lib/spack/env/{cray => cce}/cc        | 0
 lib/spack/env/{cray => cce}/ftn       | 0
 lib/spack/env/cray/CC                 | 1 -
 lib/spack/env/craype/CC               | 1 -
 lib/spack/env/craype/cc               | 1 -
 lib/spack/env/craype/ftn              | 1 -
 lib/spack/spack/build_environment.py  | 2 +-
 lib/spack/spack/compilers/cce.py      | 8 ++++----
 9 files changed, 6 insertions(+), 9 deletions(-)
 create mode 120000 lib/spack/env/cce/case-insensitive/CC
 rename lib/spack/env/{cray => cce}/cc (100%)
 rename lib/spack/env/{cray => cce}/ftn (100%)
 delete mode 120000 lib/spack/env/cray/CC
 delete mode 120000 lib/spack/env/craype/CC
 delete mode 120000 lib/spack/env/craype/cc
 delete mode 120000 lib/spack/env/craype/ftn

diff --git a/lib/spack/env/cce/case-insensitive/CC b/lib/spack/env/cce/case-insensitive/CC
new file mode 120000
index 0000000000..e2deb67f3b
--- /dev/null
+++ b/lib/spack/env/cce/case-insensitive/CC
@@ -0,0 +1 @@
+../../cc
\ No newline at end of file
diff --git a/lib/spack/env/cray/cc b/lib/spack/env/cce/cc
similarity index 100%
rename from lib/spack/env/cray/cc
rename to lib/spack/env/cce/cc
diff --git a/lib/spack/env/cray/ftn b/lib/spack/env/cce/ftn
similarity index 100%
rename from lib/spack/env/cray/ftn
rename to lib/spack/env/cce/ftn
diff --git a/lib/spack/env/cray/CC b/lib/spack/env/cray/CC
deleted file mode 120000
index 82c2b8e90a..0000000000
--- a/lib/spack/env/cray/CC
+++ /dev/null
@@ -1 +0,0 @@
-../cc
\ No newline at end of file
diff --git a/lib/spack/env/craype/CC b/lib/spack/env/craype/CC
deleted file mode 120000
index 82c2b8e90a..0000000000
--- a/lib/spack/env/craype/CC
+++ /dev/null
@@ -1 +0,0 @@
-../cc
\ No newline at end of file
diff --git a/lib/spack/env/craype/cc b/lib/spack/env/craype/cc
deleted file mode 120000
index 82c2b8e90a..0000000000
--- a/lib/spack/env/craype/cc
+++ /dev/null
@@ -1 +0,0 @@
-../cc
\ No newline at end of file
diff --git a/lib/spack/env/craype/ftn b/lib/spack/env/craype/ftn
deleted file mode 120000
index 82c2b8e90a..0000000000
--- a/lib/spack/env/craype/ftn
+++ /dev/null
@@ -1 +0,0 @@
-../cc
\ No newline at end of file
diff --git a/lib/spack/spack/build_environment.py b/lib/spack/spack/build_environment.py
index d3ef976917..103de3d6ce 100644
--- a/lib/spack/spack/build_environment.py
+++ b/lib/spack/spack/build_environment.py
@@ -342,7 +342,7 @@ def set_build_environment_variables(pkg, env, dirty):
         if os.path.isdir(ci):
             env_paths.append(ci)
 
-    for item in reversed(env_paths):
+    for item in env_paths:
         env.prepend_path('PATH', item)
     env.set_path(SPACK_ENV_PATH, env_paths)
 
diff --git a/lib/spack/spack/compilers/cce.py b/lib/spack/spack/compilers/cce.py
index 3d02122032..eb1c6ab7dc 100644
--- a/lib/spack/spack/compilers/cce.py
+++ b/lib/spack/spack/compilers/cce.py
@@ -26,10 +26,10 @@ class Cce(Compiler):
     PrgEnv = 'PrgEnv-cray'
     PrgEnv_compiler = 'cce'
 
-    link_paths = {'cc': 'cc',
-                  'cxx': 'c++',
-                  'f77': 'f77',
-                  'fc': 'fc'}
+    link_paths = {'cc': 'cce/cc',
+                  'cxx': 'cce/case-insensitive/CC',
+                  'f77': 'cce/ftn',
+                  'fc': 'cce/ftn'}
 
     @classmethod
     def default_version(cls, comp):
-- 
GitLab