diff --git a/var/spack/repos/builtin/packages/ceed/package.py b/var/spack/repos/builtin/packages/ceed/package.py
index f6569a324c1b43b110310403ff6fdab75dd50aaa..a5e2c73da3bb36125beeaf428b9f6943ef9ac2a6 100644
--- a/var/spack/repos/builtin/packages/ceed/package.py
+++ b/var/spack/repos/builtin/packages/ceed/package.py
@@ -73,10 +73,10 @@ class Ceed(Package):
     depends_on('nekcem@0b8bedd', when='@1.0.0+nek')
 
     # PETSc, HPGMG
-    # For a +quickbuild we disable boost, hdf5, and superlu-dist in PETSc.
+    # For a +quickbuild we disable hdf5, and superlu-dist in PETSc.
     # Ideally, these can be turned into recommendations to Spack for
     # concretizing the PETSc spec, if Spack ever supports recommendations.
-    depends_on('petsc@3.8.3~boost~hdf5~superlu-dist',
+    depends_on('petsc@3.8.3~hdf5~superlu-dist',
                when='@1.0.0+petsc+quickbuild')
     depends_on('petsc@3.8.3+mpi+double~int64', when='@1.0.0+petsc~mfem')
     # The mfem petsc examples need the petsc variants +hypre, +suite-sparse,
diff --git a/var/spack/repos/builtin/packages/mfem/test_builds.sh b/var/spack/repos/builtin/packages/mfem/test_builds.sh
index b7d3d881b3565a21eba8a5cf1c701e9c48b7c623..125fa0055c12bbed0f0ea8accebc670348eb5edb 100755
--- a/var/spack/repos/builtin/packages/mfem/test_builds.sh
+++ b/var/spack/repos/builtin/packages/mfem/test_builds.sh
@@ -6,7 +6,7 @@ builds=(
     'mfem~mpi~metis~gzstream'
     'mfem+mpi+superlu-dist+suite-sparse+petsc \
         +sundials+pumi+mpfr+netcdf+gzstream+gnutls+libunwind \
-        ^hypre~internal-superlu ^petsc~boost+suite-sparse+mumps'
+        ^hypre~internal-superlu ^petsc+suite-sparse+mumps'
     'mfem~mpi+suite-sparse+sundials+mpfr+netcdf \
         +gzstream+gnutls+libunwind'
     # develop version:
@@ -18,7 +18,7 @@ builds=(
     'mfem@develop+shared~static+mpi \
         +superlu-dist+suite-sparse+petsc+sundials+mpfr+netcdf+gzstream \
         +gnutls+libunwind+conduit ^hypre~internal-superlu \
-        ^petsc~boost+suite-sparse+mumps ^conduit~python~hdf5'
+        ^petsc+suite-sparse+mumps ^conduit~python~hdf5'
     # TODO: The options '^netcdf~mpi ^hdf5@1.8.19~mpi' are added just to make
     # conduit happy.
     'mfem@develop+shared~static~mpi \
@@ -38,7 +38,7 @@ builds2=(
     'mfem+netcdf'
     'mfem+mpfr'
     'mfem+gnutls'
-    'mfem+petsc+mpi ^hypre~internal-superlu ^petsc~boost+suite-sparse+mumps'
+    'mfem+petsc+mpi ^hypre~internal-superlu ^petsc+suite-sparse+mumps'
     # develop version
     'mfem@develop+superlu-dist'
     'mfem@develop+suite-sparse~mpi'
@@ -53,7 +53,7 @@ builds2=(
     'mfem@develop+conduit~mpi ^conduit~python'
     'mfem@develop+conduit ^conduit~python'
     'mfem@develop+petsc+mpi ^hypre~internal-superlu \
-        ^petsc~boost+suite-sparse+mumps'
+        ^petsc+suite-sparse+mumps'
 )
 
 trap 'printf "\nScript interrupted.\n"; exit 33' INT
diff --git a/var/spack/repos/builtin/packages/petsc/package.py b/var/spack/repos/builtin/packages/petsc/package.py
index 80dbdbfc84c8227b902bfeb802ca4d19fa66718a..552baa4ad63054f402a8a02f0617d9319a55170f 100644
--- a/var/spack/repos/builtin/packages/petsc/package.py
+++ b/var/spack/repos/builtin/packages/petsc/package.py
@@ -74,7 +74,6 @@ class Petsc(Package):
             description='Activates support for metis and parmetis')
     variant('hdf5',    default=True,
             description='Activates support for HDF5 (only parallel)')
-    variant('boost',   default=True,  description='Activates support for Boost')
     variant('hypre',   default=True,
             description='Activates support for Hypre (only parallel)')
     # Mumps is disabled by default, because it depends on Scalapack
@@ -121,7 +120,6 @@ class Petsc(Package):
     depends_on('python@2.6:2.8', type='build')
 
     # Other dependencies
-    depends_on('boost', when='@:3.5+boost')
     depends_on('metis@5:~int64+real64', when='@:3.7.99+metis~int64+double')
     depends_on('metis@5:~int64', when='@:3.7.99+metis~int64~double')
     depends_on('metis@5:+int64+real64', when='@:3.7.99+metis+int64+double')
@@ -197,7 +195,10 @@ def install(self, spec, prefix):
                    '--with-x=0',
                    '--download-c2html=0',
                    '--download-sowing=0',
-                   '--download-hwloc=0']
+                   '--download-hwloc=0',
+                   'COPTFLAGS=',
+                   'FOPTFLAGS=',
+                   'CXXOPTFLAGS=']
         options.extend(self.mpi_dependent_options())
         options.extend([
             '--with-precision=%s' % (
@@ -217,6 +218,8 @@ def install(self, spec, prefix):
 
         if 'trilinos' in spec:
             options.append('--with-cxx-dialect=C++11')
+            if spec.satisfies('^trilinos+boost'):
+                options.append('--with-boost=1')
 
         if self.spec.satisfies('clanguage=C++'):
             options.append('--with-clanguage=C++')
@@ -236,7 +239,7 @@ def install(self, spec, prefix):
             ])
 
         # Activates library support if needed
-        for library in ('metis', 'boost', 'hdf5', 'hypre', 'parmetis',
+        for library in ('metis', 'hdf5', 'hypre', 'parmetis',
                         'mumps', 'trilinos'):
             options.append(
                 '--with-{library}={value}'.format(
diff --git a/var/spack/repos/builtin/packages/xsdk/package.py b/var/spack/repos/builtin/packages/xsdk/package.py
index 7414c12c49e9acb006775591bada0b92ebdfac40..9b20a7e37462a739324ff078aa5d2b07c341427b 100644
--- a/var/spack/repos/builtin/packages/xsdk/package.py
+++ b/var/spack/repos/builtin/packages/xsdk/package.py
@@ -64,11 +64,11 @@ class Xsdk(Package):
     depends_on('trilinos@12.12.1+hypre+superlu-dist+metis+hdf5~mumps+boost~suite-sparse~tpetra+nox~ifpack2~zoltan2~amesos2~exodus',
                when='@develop')
 
-    depends_on('petsc@3.8.2+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64',
+    depends_on('petsc@3.8.2+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
                when='@0.3.0')
-    depends_on('petsc@xsdk-0.2.0+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64',
+    depends_on('petsc@xsdk-0.2.0+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
                when='@xsdk-0.2.0')
-    depends_on('petsc@develop+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps~boost+double~int64',
+    depends_on('petsc@develop+trilinos+mpi+hypre+superlu-dist+metis+hdf5~mumps+double~int64',
                when='@develop')
 
     depends_on('pflotran@xsdk-0.3.0', when='@0.3.0')