|
| 1 | +diff -ruN spack-src/cmake/fc.cmake spack-src-patched/cmake/fc.cmake |
| 2 | +--- spack-src/cmake/fc.cmake 2022-02-20 16:35:05.000000000 -0500 |
| 3 | ++++ spack-src-patched/cmake/fc.cmake 2022-08-04 13:02:13.294697807 -0400 |
| 4 | +@@ -221,3 +221,14 @@ |
| 5 | + set(TIMER "NONE") |
| 6 | + endif () |
| 7 | + |
| 8 | ++if (${F_COMPILER} STREQUAL "CRAY") |
| 9 | ++ set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_INTEL") |
| 10 | ++ set(FCOMMON_OPT "${FCOMMON_OPT} -hnopattern") |
| 11 | ++ if (INTERFACE64) |
| 12 | ++ set (FCOMMON_OPT "${FCOMMON_OPT} -s integer64") |
| 13 | ++ endif () |
| 14 | ++ if (NOT USE_OPENMP) |
| 15 | ++ set(FCOMMON_OPT "${FCOMMON_OPT} -O noomp") |
| 16 | ++ endif () |
| 17 | ++endif () |
| 18 | ++ |
| 19 | +diff -ruN spack-src/cmake/system.cmake spack-src-patched/cmake/system.cmake |
| 20 | +--- spack-src/cmake/system.cmake 2022-02-20 16:35:05.000000000 -0500 |
| 21 | ++++ spack-src-patched/cmake/system.cmake 2022-08-04 13:03:15.173843680 -0400 |
| 22 | +@@ -552,6 +552,14 @@ |
| 23 | + endforeach () |
| 24 | + endif () |
| 25 | + |
| 26 | ++if ("${F_COMPILER}" STREQUAL "NAG" OR "${F_COMPILER}" STREQUAL "CRAY") |
| 27 | ++ set(FILTER_FLAGS "-msse3;-mssse3;-msse4.1;-mavx;-mavx2,-mskylake-avx512") |
| 28 | ++ foreach (FILTER_FLAG ${FILTER_FLAGS}) |
| 29 | ++ string(REPLACE ${FILTER_FLAG} "" LAPACK_FFLAGS ${LAPACK_FFLAGS}) |
| 30 | ++ string(REPLACE ${FILTER_FLAG} "" LAPACK_FPFLAGS ${LAPACK_FPFLAGS}) |
| 31 | ++ endforeach () |
| 32 | ++endif () |
| 33 | ++ |
| 34 | + if ("${F_COMPILER}" STREQUAL "GFORTRAN") |
| 35 | + # lapack-netlib is rife with uninitialized warnings -hpa |
| 36 | + set(LAPACK_FFLAGS "${LAPACK_FFLAGS} -Wno-maybe-uninitialized") |
| 37 | +diff -ruN spack-src/f_check spack-src-patched/f_check |
| 38 | +--- spack-src/f_check 2022-02-20 16:35:05.000000000 -0500 |
| 39 | ++++ spack-src-patched/f_check 2022-08-04 13:05:03.075337778 -0400 |
| 40 | +@@ -34,7 +34,7 @@ |
| 41 | + "pathf90", "pathf95", |
| 42 | + "pgf95", "pgf90", "pgf77", "pgfortran", "nvfortran", |
| 43 | + "flang", "egfortran", |
| 44 | +- "ifort", "nagfor"); |
| 45 | ++ "ifort", "nagfor", "ftn", "crayftn"); |
| 46 | + |
| 47 | + OUTER: |
| 48 | + foreach $lists (@lists) { |
| 49 | +@@ -76,6 +76,11 @@ |
| 50 | + $vendor = FUJITSU; |
| 51 | + $openmp = "-Kopenmp"; |
| 52 | + |
| 53 | ++ } elsif ($data =~ /Cray/) { |
| 54 | ++ |
| 55 | ++ $vendor = CRAY; |
| 56 | ++ $openmp = "-fopenmp"; |
| 57 | ++ |
| 58 | + } elsif ($data =~ /GNU/ || $data =~ /GCC/ ) { |
| 59 | + |
| 60 | + $data =~ s/\(+.*?\)+//g; |
| 61 | +@@ -306,6 +311,10 @@ |
| 62 | + if ( $vendor eq "NAG") { |
| 63 | + $link = `$compiler $openmp -dryrun ftest2.f 2>&1 && rm -f a.out a.exe`; |
| 64 | + } |
| 65 | ++ |
| 66 | ++if ( $vendor eq "CRAY") { |
| 67 | ++ $link = `$compiler $openmp -hnopattern ftest2.f 2>&1 && rm -f a.out a.exe`; |
| 68 | ++ } |
| 69 | + $linker_L = ""; |
| 70 | + $linker_l = ""; |
| 71 | + $linker_a = ""; |
| 72 | +diff -ruN spack-src/Makefile.system spack-src-patched/Makefile.system |
| 73 | +--- spack-src/Makefile.system 2022-02-20 16:35:05.000000000 -0500 |
| 74 | ++++ spack-src-patched/Makefile.system 2022-08-04 13:01:53.413702690 -0400 |
| 75 | +@@ -1271,6 +1271,19 @@ |
| 76 | + endif |
| 77 | + endif |
| 78 | + |
| 79 | ++ifeq ($(F_COMPILER), CRAY) |
| 80 | ++CCOMMON_OPT += -DF_INTERFACE_INTEL |
| 81 | ++FCOMMON_OPT += -hnopattern |
| 82 | ++ifdef INTERFACE64 |
| 83 | ++ifneq ($(INTERFACE64), 0) |
| 84 | ++FCOMMON_OPT += -s integer64 |
| 85 | ++endif |
| 86 | ++endif |
| 87 | ++ifneq ($(USE_OPENMP), 1) |
| 88 | ++FCOMMON_OPT += -O noomp |
| 89 | ++endif |
| 90 | ++endif |
| 91 | ++ |
| 92 | + ifdef BINARY64 |
| 93 | + ifdef INTERFACE64 |
| 94 | + ifneq ($(INTERFACE64), 0) |
| 95 | +@@ -1551,6 +1564,10 @@ |
| 96 | + ifeq ($(F_COMPILER),NAG) |
| 97 | + LAPACK_FFLAGS := $(filter-out -msse3 -mssse3 -msse4.1 -mavx -mavx2 -mskylake-avx512 ,$(FFLAGS)) |
| 98 | + endif |
| 99 | ++ifeq ($(F_COMPILER),CRAY) |
| 100 | ++LAPACK_FFLAGS := $(filter-out -msse3 -mssse3 -msse4.1 -mavx -mavx2 -mskylake-avx512 ,$(FFLAGS)) |
| 101 | ++FFLAGS := $(filter-out -msse3 -mssse3 -msse4.1 -mavx -mavx2 -mskylake-avx512 ,$(FFLAGS)) |
| 102 | ++endif |
| 103 | + |
| 104 | + LAPACK_CFLAGS = $(CFLAGS) |
| 105 | + LAPACK_CFLAGS += -DHAVE_LAPACK_CONFIG_H |
0 commit comments