def METHOD_NAME(self):
    """Custom sanity check for Eigen."""
    # both in Eigen 2.x an 3.x
    include_files = ['Cholesky', 'Core', 'Dense', 'Eigen', 'Geometry', 'LU',
                     'QR', 'QtAlignedMalloc', 'SVD', 'Sparse', 'StdVector']
    if LooseVersion(self.version) >= LooseVersion('3.0'):
        # only in 3.x
        include_files.extend(['CholmodSupport', 'Eigenvalues', 'Householder',
                              'IterativeLinearSolvers', 'Jacobi', 'OrderingMethods', 'PaStiXSupport',
                              'PardisoSupport', 'SparseCholesky', 'SparseCore', 'StdDeque', 'StdList',
                              'SuperLUSupport', 'UmfPackSupport'])
    custom_paths = {
        'files': ['include/Eigen/%s' % x for x in include_files],
        'dirs': []
    }
    custom_commands = []
    if LooseVersion(self.version) >= LooseVersion('3.0'):
        custom_paths['files'].append('include/signature_of_eigen3_matrix_library')
    if LooseVersion(self.version) >= LooseVersion('3.3.4'):
        custom_paths['files'].append(os.path.join('share', 'pkgconfig', 'eigen3.pc'))
        cmake_config_dir = os.path.join('share', 'eigen3', 'cmake')
        custom_paths['files'].append(os.path.join(cmake_config_dir, 'Eigen3Config.cmake'))
        # Check that CMake config files don't contain duplicated prefix
        custom_commands.append("! grep -q -r '${PACKAGE_PREFIX_DIR}/${PACKAGE_PREFIX_DIR}' %s"
                               % os.path.join(self.installdir, cmake_config_dir))
    super(EB_Eigen, self).METHOD_NAME(custom_paths=custom_paths, custom_commands=custom_commands)