diff --git a/var/spack/repos/builtin/packages/samtools/package.py b/var/spack/repos/builtin/packages/samtools/package.py
index 0793f8d9a1e863897e602b1748a00cc73c284537..a61672506868ccbe6a454873b3cb8d8393a32b87 100644
--- a/var/spack/repos/builtin/packages/samtools/package.py
+++ b/var/spack/repos/builtin/packages/samtools/package.py
@@ -38,7 +38,9 @@ class Samtools(Package):
     version('1.2', '988ec4c3058a6ceda36503eebecd4122')
 
     depends_on("ncurses")
-    depends_on("htslib", when='@1.3.1:')  # htslib became standalone
+    # htslib became standalone @1.3.1, must use corresponding version
+    depends_on("htslib@1.4",   when='@1.4')
+    depends_on("htslib@1.3.1", when='@1.3.1')
     depends_on('zlib', when='@1.2')       # needed for builtin htslib
 
     def install(self, spec, prefix):