diff --git a/var/spack/repos/builtin/packages/parmetis/package.py b/var/spack/repos/builtin/packages/parmetis/package.py
index a8456083b47cd2dd983a2dc1174e2b40e1412868..956a035f7be65d832f1093242f2ee85ca16ae901 100644
--- a/var/spack/repos/builtin/packages/parmetis/package.py
+++ b/var/spack/repos/builtin/packages/parmetis/package.py
@@ -65,12 +65,10 @@ def install(self, spec, prefix):
         source_directory = self.stage.source_path
         metis_source = join_path(source_directory, 'metis')
 
-        # FIXME : Once a contract is defined, MPI compilers should be retrieved indirectly via spec['mpi'] in case
-        # FIXME : they use a non-standard name
         options.extend(['-DGKLIB_PATH:PATH={metis_source}/GKlib'.format(metis_source=spec['metis'].prefix.include),
                         '-DMETIS_PATH:PATH={metis_source}'.format(metis_source=spec['metis'].prefix),
-                        '-DCMAKE_C_COMPILER:STRING=mpicc',
-                        '-DCMAKE_CXX_COMPILER:STRING=mpicxx'])
+                        '-DCMAKE_C_COMPILER:STRING={mpicc}'.format(mpicc=spec['mpi'].mpicc),
+                        '-DCMAKE_CXX_COMPILER:STRING={mpicxx}'.format(mpicxx=spec['mpi'].mpicxx)])
 
         if '+shared' in spec:
             options.append('-DSHARED:BOOL=ON')