diff --git a/var/spack/repos/builtin/packages/hdf5/package.py b/var/spack/repos/builtin/packages/hdf5/package.py
index 513a38ee8a49f931cd282a76109a1efd828b069f..f26e225b83eab20dc8a2b617e23d1c73833106a5 100644
--- a/var/spack/repos/builtin/packages/hdf5/package.py
+++ b/var/spack/repos/builtin/packages/hdf5/package.py
@@ -37,6 +37,7 @@ class Hdf5(Package):
     list_url = "http://www.hdfgroup.org/ftp/HDF5/releases"
     list_depth = 3
 
+    version('1.10.0', 'bdc935337ee8282579cd6bc4270ad199')
     version('1.8.16', 'b8ed9a36ae142317f88b0c7ef4b9c618')
     version('1.8.15', '03cccb5b33dbe975fdcd8ae9dc021f24')
     version('1.8.13', 'c03426e9e77d7766944654280b467289')
@@ -80,10 +81,16 @@ def install(self, spec, prefix):
         # sanity check in configure, so this doesn't merit a variant.
         extra_args.append("--enable-unsupported")
 
-        if '+debug' in spec:
-            extra_args.append('--enable-debug=all')
+        if spec.satisfies('@1.10:'):
+            if '+debug' in spec:
+                extra_args.append('--enable-build-mode=debug')
+            else:
+                extra_args.append('--enable-build-mode=production')
         else:
-            extra_args.append('--enable-production')
+            if '+debug' in spec:
+                extra_args.append('--enable-debug=all')
+            else:
+                extra_args.append('--enable-production')
 
         if '+shared' in spec:
             extra_args.append('--enable-shared')
@@ -139,5 +146,7 @@ def url_for_version(self, version):
             return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + v + ".tar.gz"
         elif version < Version("1.7"):
             return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + version.up_to(2) + "/hdf5-" + v + ".tar.gz"
-        else:
+        elif version < Version("1.10"):
             return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + v + "/src/hdf5-" + v + ".tar.gz"
+        else:
+            return "http://www.hdfgroup.org/ftp/HDF5/releases/hdf5-" + version.up_to(2) + "/hdf5-" + v + "/src/hdf5-" + v + ".tar.gz"