diff --git a/var/spack/repos/builtin/packages/hypre/package.py b/var/spack/repos/builtin/packages/hypre/package.py
index 286d7b20ad5319eeaba7edb70f0052ba0e0ab616..2085efefe5a50a22d645be47794153251a576e1d 100644
--- a/var/spack/repos/builtin/packages/hypre/package.py
+++ b/var/spack/repos/builtin/packages/hypre/package.py
@@ -52,7 +52,8 @@ class Hypre(Package):
     # Patch to build shared libraries on Darwin
     patch('darwin-shared-libs-for-hypre-2.13.0.patch', when='+shared@2.13.0 platform=darwin')
     patch('darwin-shared-libs-for-hypre-2.14.0.patch', when='+shared@2.14.0 platform=darwin')
-    patch('superlu-dist-link.patch')
+    patch('superlu-dist-link-2.15.0.patch', when='+superlu-dist @2.15:')
+    patch('superlu-dist-link-2.14.0.patch', when='+superlu-dist @:2.14.0')
 
     depends_on("mpi", when='+mpi')
     depends_on("blas")
diff --git a/var/spack/repos/builtin/packages/hypre/superlu-dist-link-2.14.0.patch b/var/spack/repos/builtin/packages/hypre/superlu-dist-link-2.14.0.patch
new file mode 100644
index 0000000000000000000000000000000000000000..4f024c138c16080926420fa1088d9a230bf8797c
--- /dev/null
+++ b/var/spack/repos/builtin/packages/hypre/superlu-dist-link-2.14.0.patch
@@ -0,0 +1,13 @@
+diff --git a/src/lib/Makefile b/src/lib/Makefile
+index 72875e2..3edc564 100644
+--- a/src/lib/Makefile
++++ b/src/lib/Makefile
+@@ -58,7 +58,7 @@ $(BLASFILES)\
+ $(LAPACKFILES)
+ 
+ SONAME = libHYPRE-${HYPRE_RELEASE_VERSION}.so
+-SOLIBS = ${MPILIBDIRS} ${MPILIBS} ${LAPACKLIBDIRS} ${LAPACKLIBS}\
++SOLIBS = ${DSUPERLU_LIBS} ${MPILIBDIRS} ${MPILIBS} ${LAPACKLIBDIRS} ${LAPACKLIBS}\
+  ${BLASLIBDIRS} ${BLASLIBS} ${LIBS} ${FLIBS}
+ 
+ 
diff --git a/var/spack/repos/builtin/packages/hypre/superlu-dist-link.patch b/var/spack/repos/builtin/packages/hypre/superlu-dist-link-2.15.0.patch
similarity index 100%
rename from var/spack/repos/builtin/packages/hypre/superlu-dist-link.patch
rename to var/spack/repos/builtin/packages/hypre/superlu-dist-link-2.15.0.patch