def METHOD_NAME(self, ext):
    extdir = os.path.abspath(os.path.dirname(self.get_ext_fullpath(ext.name)))
    cmake_args = [
        '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir,
        '-DPYTHON_EXECUTABLE=' + sys.executable,
    ]
    cfg = 'Debug' if self.debug else 'Release'
    build_args = ['--config', cfg]
    if platform.system() == "Windows":
        cmake_args += ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_{}={}'.format(cfg.upper(), extdir)]
        if sys.maxsize > 2 ** 32:
            cmake_args += ['-A', 'x64']
        build_args += ['--', '/m']
    else:
        cmake_args += ['-DCMAKE_BUILD_TYPE=' + cfg]
        build_args += ['--', '-j2']
    env = os.environ.copy()
    env['CXXFLAGS'] = '{} -DVERSION_INFO=\\"{}\\"'.format(
        env.get('CXXFLAGS', ''), self.distribution.get_version()
    )
    if not os.path.exists(self.build_temp):
        os.makedirs(self.build_temp)
    subprocess.check_call(['cmake', ext.sourcedir] + cmake_args, cwd=self.build_temp, env=env)
    subprocess.check_call(['cmake', '--build', '.'] + build_args, cwd=self.build_temp)
    print()  # Add an empty line for cleaner output