def METHOD_NAME(self, name: str, paths: T.List[str]) -> None:
    if not paths:
        paths = self.system_framework_paths
    for p in paths:
        mlog.debug(f'Looking for framework {name} in {p}')
        # We need to know the exact framework path because it's used by the
        # Qt5 dependency class, and for setting the include path. We also
        # want to avoid searching in an invalid framework path which wastes
        # time and can cause a false positive.
        framework_path = self._get_framework_path(p, name)
        if framework_path is None:
            continue
        # We want to prefer the specified paths (in order) over the system
        # paths since these are "extra" frameworks.
        # For example, Python2's framework is in /System/Library/Frameworks and
        # Python3's framework is in /Library/Frameworks, but both are called
        # Python.framework. We need to know for sure that the framework was
        # found in the path we expect.
        allow_system = p in self.system_framework_paths
        args = self.clib_compiler.find_framework(name, self.env, [p], allow_system)
        if args is None:
            continue
        self.link_args = args
        self.framework_path = framework_path.as_posix()
        self.compile_args = ['-F' + self.framework_path]
        # We need to also add -I includes to the framework because all
        # cross-platform projects such as OpenGL, Python, Qt, GStreamer,
        # etc do not use "framework includes":
        # https://developer.apple.com/library/archive/documentation/MacOSX/Conceptual/BPFrameworks/Tasks/IncludingFrameworks.html
        incdir = self._get_framework_include_path(framework_path)
        if incdir:
            self.compile_args += ['-I' + incdir]
        self.is_found = True
        return