diff --git a/External/Herwig7/CMakeLists.txt b/External/Herwig7/CMakeLists.txt
new file mode 100644
index 0000000000000000000000000000000000000000..88a9c7db31691e17633be50d51f85e6bb292eca7
--- /dev/null
+++ b/External/Herwig7/CMakeLists.txt
@@ -0,0 +1,37 @@
+# $Id$
+#
+# Package installing files from the Herwig 7 generator into the offline
+# release.
+#
+      
+# The name of the package:
+atlas_subdir( Herwig7 )
+
+# In release recompilation mode stop here:
+if( ATLAS_RELEASE_MODE )
+   return()
+endif()
+
+# Find the Herwig7 package. Note that LCG now calls the 7.0.1
+# version "herwig3". LCG should call the package "herwig7"
+# beginning with 7.0.3.
+find_package( Herwig3 )
+
+# Make sure that it was found:
+if( NOT HERWIG3_FOUND )
+   message( WARNING "Couldn't find the Herwig3 package" )
+   return()
+endif()
+
+# Install files from the package:
+set( herwig7_datadir "${HERWIG3_ROOT}/share/Herwig" )
+if( NOT IS_DIRECTORY ${herwig7_datadir} )
+   message( WARNING "Can't access directory ${herwig7_datadir}" )
+   return()
+endif()
+atlas_install_generic( ${herwig7_datadir}/*.rpo ${herwig7_datadir}/*.in
+   ${herwig7_datadir}/MSSM.model
+   DESTINATION share
+   TYPENAME Herwig7Data )
+
+
diff --git a/External/Herwig7/cmt/requirements b/External/Herwig7/cmt/requirements
new file mode 100644
index 0000000000000000000000000000000000000000..2d89b6d1cd431feb6f8a34ee3a6e7668234c3f69
--- /dev/null
+++ b/External/Herwig7/cmt/requirements
@@ -0,0 +1,41 @@
+package Herwig7
+author Daniel Rauch <daniel.rauch@desy.de>
+
+use AtlasPolicy       AtlasPolicy-*
+use LCG_Configuration
+use AtlasExternalArea AtlasExternalArea-* External
+use ThePEG            ThePEG-*            External
+use AtlasHepMC        AtlasHepMC-*        External
+
+## setup for release 19
+#macro my_LCG_config_version "67c"
+#macro Herwig7_home "$(LCG_ROOT)/external/MCGenerators_lcgcmt$(my_LCG_config_version)/herwig++"
+
+## setup for release 20
+macro Herwig7_home "$(LCG_external)/MCGenerators/herwig++"
+
+macro Herwig7_version "7.0.3"
+# note small modification of the native_version ("a" added) to be removed with version update
+macro Herwig7_native_version "$(Herwig7_version)a_lcgcmt$(my_LCG_config_version)"
+macro Herwig7_system "$(LCG_ext_system)"
+
+macro Herwig7_installdir "$(Herwig7_home)/$(Herwig7_version)/$(Herwig7_system)"
+
+macro Herwig7_inc "$(Herwig7_installdir)/include"
+macro Herwig7_lib "$(Herwig7_installdir)/lib/Herwig"
+macro Herwig7_moduledir "$(Herwig7_lib)"
+macro Herwig7_datadir "$(Herwig7_installdir)/share/Herwig"
+
+# Paths are specified separately so they get packed even if any is symlink
+macro Herwig7_export_paths "$(Herwig7_installdir)/include $(Herwig7_installdir)/lib $(Herwig7_installdir)/bin $(Herwig7_installdir)/share"
+
+apply_pattern declare_installed_libraries dir=$(Herwig7_lib)
+
+#apply_pattern declare_runtime files="$(Herwig7_datadir)/*.rpo $(Herwig7_datadir)/*.in"
+apply_pattern generic_declare_for_link kind=runtime prefix=$(tag)/share files="$(Herwig7_datadir)/*.rpo $(Herwig7_datadir)/*.in $(Herwig7_datadir)/MSSM.model "
+#path_prepend PATH "$(Herwig7_datadir)"
+
+include_path none
+include_dirs "$(Herwig7_inc)"
+
+