diff --git a/lib/spack/spack/package.py b/lib/spack/spack/package.py index d1c36d067044bcf910ab8355bd738f68332ab0aa..2e7d8a7709911e362a12d08c5e9df19d0f8ed79e 100644 --- a/lib/spack/spack/package.py +++ b/lib/spack/spack/package.py @@ -888,6 +888,11 @@ def do_install(self, # Ensure package is not already installed if spack.install_layout.check_installed(self.spec): tty.msg("%s is already installed in %s" % (self.name, self.prefix)) + rec = spack.installed_db.get_record(self.spec) + if (not rec.explicit) and explicit: + with spack.installed_db.write_transaction(): + rec = spack.installed_db.get_record(self.spec) + rec.explicit = True return tty.msg("Installing %s" % self.name)