diff --git a/External/AtlasDSFMT/cmt/requirements b/External/AtlasDSFMT/cmt/requirements
new file mode 100644
index 0000000000000000000000000000000000000000..d6d503c0cdac1a207c35e34f12a2a2dd25e7c2f7
--- /dev/null
+++ b/External/AtlasDSFMT/cmt/requirements
@@ -0,0 +1,35 @@
+package AtlasDSFMT
+
+author Michael Duehrssen michael.duehrssen@cern
+author Paolo Calafiura pcalafiura@lbl
+
+use AtlasExternalArea AtlasExternalArea-* External
+use ExternalPolicy    ExternalPolicy-*    External
+
+macro AtlasDSFMT_home "${ATLAS_EXTERNAL}/dSFMT"
+macro AtlasDSFMT_native_version "2.1"
+macro AtlasDSFMT_lib "$(AtlasDSFMT_home)/dSFMT-$(AtlasDSFMT_native_version)/$(CMTCONFIG)"
+
+#macro AtlasDSFMT_linkopts " -L$(AtlasDSFMT_lib)  -ldSFMT-std "
+macro AtlasDSFMT_linkopts " -L$(AtlasDSFMT_lib)  -ldSFMT-sse2 "
+
+macro AtlasDSFMT_include "$(AtlasDSFMT_home)/dSFMT-$(AtlasDSFMT_native_version)/include"
+include_dirs "$(AtlasDSFMT_include)"
+
+## This is the new recommended pattern for external packages
+apply_pattern install_external_home "${ATLAS_EXTERNAL}/dSFMT/"
+
+macro AtlasDSFMT_export_paths "$(AtlasDSFMT_home)/dSFMT-$(AtlasDSFMT_native_version)/$(CMTCONFIG) \
+	$(AtlasDSFMT_home)/dSFMT-$(AtlasDSFMT_native_version)/include"
+
+# The code that uses dSFMT needs to make sure that dsfmt_t objects are alligned at 128bit/16byte in memory
+# See Simulation/Tools/AtlasCLHEP_RandomGenerators for an example
+# -> " -msse2 " no longer needed as public flag
+#macro_append cppflags ' -msse2 -DHAVE_SSE2 -DDSFMT_MEXP=19937 '
+
+# Set the precsision of the dSFMT engine. This is the parameter with which the external library is compiled
+macro_append cppflags ' -DDSFMT_MEXP=19937 '
+
+private
+#macro AtlasDSFMT_libraries "$(AtlasDSFMT_lib)/libdSFMT-std.a"
+macro AtlasDSFMT_libraries "$(AtlasDSFMT_lib)/libdSFMT-sse2.a"