diff --git a/Custom_EasyBlocks/cpmd.py b/Custom_EasyBlocks/cpmd.py
index 25b38296877dd66301ef190bc1d46b1c8a5f3c3c..8885f4b26da9e8646fc4f11f6e61632d14724894 100644
--- a/Custom_EasyBlocks/cpmd.py
+++ b/Custom_EasyBlocks/cpmd.py
@@ -36,7 +36,8 @@ EasyBuild support for building and installing CPMD, implemented as an easyblock
 #the pseudo-fix is to remove installdir/obj as postinstallcmds from the easyconfig file
 #the documentation was missing and is now added in a somewhat weird procedure
 #to the builddir and subsequently copied to the installdir/doc via postinstallcmds from the easyconfig file
-#the hybrid MPI/OMP version can solely installed through the openmp toolchain option
+#the hybrid version is installed via prefix_opt = '-omp -DEST=' independent of toolchain options in easyconfig file
+# 
 #the cuda implementation is ignored
 #
 
@@ -68,6 +69,7 @@ class EB_CPMD(ConfigureMake):
         """Custom easyconfig parameters for CPMD."""
         extra_vars = {
             'base_configuration': [None, "Base configuration from which to start (file name)", CUSTOM],
+            'MIT' : [None, "Open-Source Version of CPMD (MIT licence)",CUSTOM],
         }
         return ConfigureMake.extra_options(extra_vars)
 
@@ -89,7 +91,12 @@ class EB_CPMD(ConfigureMake):
         config_file_candidates = []
 
         for confdirname in ["configure", "CONFIGURE"]:
-            config_file_prefix = os.path.join(self.builddir, "CPMD", confdirname)
+            if self.cfg['MIT']:
+                 cpmdname = 'CPMD-%s' % self.version
+            else:
+                 cpmdname = 'CPMD'
+
+            config_file_prefix = os.path.join(self.builddir, cpmdname , confdirname)
             if os.path.isdir(config_file_prefix):
                 break
         else:
@@ -149,6 +156,8 @@ class EB_CPMD(ConfigureMake):
                 (r"^(\s*CC=.*)", r"#\1"),
                 (r"^(\s*FC=.*)", r"#\1"),
                 (r"^(\s*LD)=.*", r"\1='$(FC)'"),
+                (r" -openmp ", r" -qopenmp "),
+                (r"-mkl=", r"-qmkl="),
             ])
         except IOError as err:
             raise EasyBuildError("Failed to patch %s: %s", selected_base_config, err)
@@ -174,8 +183,8 @@ class EB_CPMD(ConfigureMake):
         options = [self.cfg['configopts']]
 
         # enable OpenMP support if desired
-        if self.toolchain.options.get('openmp', None) and LooseVersion(self.version) >= LooseVersion('4.0'):
-            options.append("-omp")
+#       if self.toolchain.options.get('openmp', None) and LooseVersion(self.version) >= LooseVersion('4.0'):
+#           options.append("-omp")
 
         # This "option" has to come last as it's the chief argument, coming after
         # all flags and so forth.
@@ -240,11 +249,12 @@ class EB_CPMD(ConfigureMake):
             if preproc_flag is None:
                 preproc_flag = ''
 
+# do not use default='None' for CPPFLAGS
             apply_regex_substitutions(makefile, [
-                (r"^(\s*CPPFLAGS\s*=.*)", r"\1 {0}".format(os.getenv('CPPFLAGS'))),
-                (r"^(\s*CFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('CFLAGS'))),
-                (r"^(\s*FFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('FFLAGS'))),
-                (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('LDFLAGS'))),
+                (r"^(\s*CPPFLAGS\s*=.*)", r"\1 {0}".format(os.getenv('CPPFLAGS','  '))),
+                (r"^(\s*CFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('CFLAGS','  '))),
+                (r"^(\s*FFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('FFLAGS','  '))),
+                (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('LDFLAGS','  '))),
 
                 # Allow to define own XFLAGS
                 (r"# CPPFLAGS =", r"CPPFLAGS +="),
@@ -259,14 +269,14 @@ class EB_CPMD(ConfigureMake):
             ])
             if self.toolchain.options.get('openmp', None):
                 apply_regex_substitutions(makefile, [
-                    (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0} {1}".format(os.getenv('LIBLAPACK_MT'), os.getenv('LIBBLAS_MT')))
+                    (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0} {1}".format(os.getenv('LIBLAPACK_MT',' '), os.getenv('LIBBLAS_MT',' ')))
                 ])
             else:
                 apply_regex_substitutions(makefile, [
-                    (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0} {1}".format(os.getenv('LIBLAPACK'), os.getenv('LIBBLAS')))
+                    (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0} {1}".format(os.getenv('LIBLAPACK',' '), os.getenv('LIBBLAS',' ')))
                 ])
             apply_regex_substitutions(makefile, [
-                (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('LIBFFT'))),
+                (r"^(\s*LFLAGS\s*=.*)",   r"\1 {0}".format(os.getenv('LIBFFT',' '))),
             ])
 
             if get_software_root('imkl'):
diff --git a/Golden_Repo/c/CPMD/CPMD-4.3-intel-para-2022a_MIT.eb b/Golden_Repo/c/CPMD/CPMD-4.3-intel-para-2022a_MIT.eb
new file mode 100644
index 0000000000000000000000000000000000000000..3085814b6d28470fcfc7ead35a9a0db02212c346
--- /dev/null
+++ b/Golden_Repo/c/CPMD/CPMD-4.3-intel-para-2022a_MIT.eb
@@ -0,0 +1,58 @@
+name = 'CPMD'
+version = '4.3'
+versionsuffix = '_MIT'
+
+homepage = 'https://github.com/CPMD-code'
+description = """The CPMD code is a parallelized plane wave / pseudopotential
+implementation of Density Functional Theory, particularly designed for
+ab-initio molecular dynamics. This is version 4.3 released under MIT licence in January 2023.
+"""
+
+toolchain = {'name': 'intel-para', 'version': '2022a'}
+toolchainopts = {'usempi': True}
+
+sources = [
+    {'download_filename': 'archive/refs/tags/%(version)s.tar.gz', 'filename': 'cpmd-4.3MIT.tar.gz'},
+    'cpmd4.3_manual.pdf',
+]
+
+source_urls = [
+    'https://github.com/CPMD-code/CPMD',
+]
+
+patches = [
+    'cppflags.patch',
+    '%(namelower)s-v%(version)s-config.patch'
+]
+
+checksums = [
+    'e0290f9da0d255f90a612e60662b14a97ca53003f89073c6af84fa7bc8739f65',
+    '2bfe01db05df1cb21cc8eae500da92b7744c786beeef25e6b2c86116ffc2e135',
+    '36c57801d5643c5e07f81ce7d4e973ae2e3100fb61220bccbbe4de3629c20d8c',
+    '45719bf7ca0c567c9c78b3f23201976fceda565d47fea2d1bc998b72fdc53caa',
+]
+
+# the cpmd.py post-cleanup of the results of the configure step 
+# is rather error-prone
+
+preconfigopts = 'pwd && chmod u+x scripts/configure.sh && '
+
+prefix_opt = '-DEST='
+
+MIT = True
+
+postinstallcmds = [
+    'rm -rf %(installdir)s/obj',
+    'mkdir %(installdir)s/doc',
+    'cp %(builddir)s/cpmd4.3_manual.pdf %(installdir)s/doc'
+]
+
+
+sanity_check_paths = {
+    'files': ['bin/cpmd.x', 'lib/libcpmd.a'],
+    'dirs': ['bin', 'lib'],
+}
+
+modloadmsg = 'MPI-Version: cpmd.x \n'
+
+moduleclass = 'chem'