From cb8b9e5df249dc16809697a2d83ae3a1ae55ee21 Mon Sep 17 00:00:00 2001
From: Paul McCarthy <pauldmccarthy@gmail.com>
Date: Fri, 22 Jan 2021 13:46:05 +0000
Subject: [PATCH] ENH: Full compute capability compilation targets for CUDA
 11.0, added some newlines to make maintenance easier.

---
 config/buildSettings.mk     |   2 +-
 config/supportedGencodes.sh | 151 +++++++++++++++++++++++++++++++++---
 2 files changed, 140 insertions(+), 13 deletions(-)

diff --git a/config/buildSettings.mk b/config/buildSettings.mk
index 0642b4a..7946dae 100644
--- a/config/buildSettings.mk
+++ b/config/buildSettings.mk
@@ -141,7 +141,7 @@ ifneq ($(shell which nvcc), )
   # because the conda-forge nvcc wrapper checks for
   # -ccbin, and adds its own if not present.
   NVCCFLAGS   ?= -I${CUDA_HOME}/include \
-                 ${GENCODEFLAGS}     \
+                 ${GENCODEFLAGS}        \
                  -ccbin $(CXX)
   NVCCLDFLAGS ?= -L${CUDA_HOME}/lib         \
                  -L${CUDA_HOME}/lib64       \
diff --git a/config/supportedGencodes.sh b/config/supportedGencodes.sh
index cb068ff..7465274 100755
--- a/config/supportedGencodes.sh
+++ b/config/supportedGencodes.sh
@@ -5,53 +5,180 @@
 # can also return a "default" set of value pairs that
 # should give "something" for CUDA versions 5.5--8.0.
 
-default_arch="-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35"
+default_arch="-gencode arch=compute_20,code=sm_20 \
+              -gencode arch=compute_20,code=sm_21 \
+              -gencode arch=compute_30,code=sm_30 \
+              -gencode arch=compute_35,code=sm_35"
 
 vn=$1
 
 if [ "$vn" = 5.5 ]
 then
-    echo "-gencode arch=compute_10,code=sm_10 -gencode arch=compute_11,code=sm_11 -gencode arch=compute_12,code=sm_12 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_35,code=sm_35"
+    echo "-gencode arch=compute_10,code=sm_10 \
+          -gencode arch=compute_11,code=sm_11 \
+          -gencode arch=compute_12,code=sm_12 \
+          -gencode arch=compute_13,code=sm_13 \
+          -gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_35,code=sm_35"
     exit 0
 elif [ "$vn" = 6.0 ]
 then
-    echo "-gencode arch=compute_10,code=sm_10 -gencode arch=compute_11,code=sm_11 -gencode arch=compute_12,code=sm_12 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_50,code=sm_50"
+    echo "-gencode arch=compute_10,code=sm_10 \
+          -gencode arch=compute_11,code=sm_11 \
+          -gencode arch=compute_12,code=sm_12 \
+          -gencode arch=compute_13,code=sm_13 \
+          -gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_50,code=sm_50"
     exit 0
 elif [ "$vn" = 6.5 ]
 then
-    echo "-gencode arch=compute_11,code=sm_11 -gencode arch=compute_12,code=sm_12 -gencode arch=compute_13,code=sm_13 -gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50"
+    echo "-gencode arch=compute_11,code=sm_11 \
+          -gencode arch=compute_12,code=sm_12 \
+          -gencode arch=compute_13,code=sm_13 \
+          -gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50"
     exit 0
 elif [ "$vn" = 7.0 ]
 then
-    echo "-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53"
+    echo "-gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53"
     exit 0
 elif [ "$vn" = 7.5 ]
 then
-    echo "-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53"
+    echo "-gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53"
     exit 0
 elif [ "$vn" = 8.0 ]
 then
-    echo "-gencode arch=compute_20,code=sm_20 -gencode arch=compute_20,code=sm_21 -gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62"
+    echo "-gencode arch=compute_20,code=sm_20 \
+          -gencode arch=compute_20,code=sm_21 \
+          -gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62"
     exit 0
 elif [ "$vn" = 9.0 ]
 then
-    echo "-gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72"
+    echo "-gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72"
     exit 0
 elif [ "$vn" = 9.1 ]
 then
-    echo "-gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72"
+    echo "-gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72"
     exit 0
 elif [ "$vn" = 9.2 ]
 then
-    echo "-gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72"
+    echo "-gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72"
     exit 0
 elif [ "$vn" = 10.0 ]
 then
-    echo "-gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72 -gencode arch=compute_75,code=sm_75"
+    echo "-gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72 \
+          -gencode arch=compute_75,code=sm_75"
     exit 0
 elif [ "$vn" = 10.1 ]
 then
-    echo "-gencode arch=compute_30,code=sm_30 -gencode arch=compute_32,code=sm_32 -gencode arch=compute_35,code=sm_35 -gencode arch=compute_37,code=sm_37 -gencode arch=compute_50,code=sm_50 -gencode arch=compute_52,code=sm_52 -gencode arch=compute_53,code=sm_53 -gencode arch=compute_60,code=sm_60 -gencode arch=compute_61,code=sm_61 -gencode arch=compute_62,code=sm_62 -gencode arch=compute_70,code=sm_70 -gencode arch=compute_72,code=sm_72 -gencode arch=compute_75,code=sm_75"
+    echo "-gencode arch=compute_30,code=sm_30 \
+          -gencode arch=compute_32,code=sm_32 \
+          -gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72 \
+          -gencode arch=compute_75,code=sm_75"
+    exit 0
+elif [ "$vn" = 11.0 ]
+then
+    echo "-gencode arch=compute_35,code=sm_35 \
+          -gencode arch=compute_37,code=sm_37 \
+          -gencode arch=compute_50,code=sm_50 \
+          -gencode arch=compute_52,code=sm_52 \
+          -gencode arch=compute_53,code=sm_53 \
+          -gencode arch=compute_60,code=sm_60 \
+          -gencode arch=compute_61,code=sm_61 \
+          -gencode arch=compute_62,code=sm_62 \
+          -gencode arch=compute_70,code=sm_70 \
+          -gencode arch=compute_72,code=sm_72 \
+          -gencode arch=compute_75,code=sm_75 \
+          -gencode arch=compute_80,code=sm_80"
     exit 0
 else
     echo $default_arch
-- 
GitLab