docstr: Compute the list of all modules that will be built, whether
  they are specified one-module-at-a-time ('self.py_modules') or
  by whole packages ('self.packages').  Return a list of tuples
  (package, module, module_file), just like 'find_modules()' and
  'find_package_modules()' do.
docstr_tok: ["Compute","the","list","of","all","modules","that","will","be","built",",","whether","they","are","specified","one-module-at-a-time","(","'self.py_modules","'",")","or","by","whole","packages","(","'self.packages","'",")",".","Return","a","list","of","tuples","(","package",",","module",",","module_file",")",",","just","like","'find_modules","(",")","'","and","'find_package_modules","(",")","'","do","."]
code: def find_all_modules(self):
      """Compute the list of all modules that will be built, whether
      they are specified one-module-at-a-time ('self.py_modules') or
      by whole packages ('self.packages').  Return a list of tuples
      (package, module, module_file), just like 'find_modules()' and
      'find_package_modules()' do."""
      modules = []
      if self.py_modules:
          modules.extend(self.find_modules())
      if self.packages:
          for package in self.packages:
              package_dir = self.get_package_dir(package)
              m = self.find_package_modules(package, package_dir)
              modules.extend(m)
      return modules
  
imports: import os
  import importlib.util
  import sys
  import glob
  from ..core import Command
  from ..errors import DistutilsOptionError, DistutilsFileError
  from ..util import convert_path
  from distutils._log import log
label_desc: Use image node_id 12 for calling the build_py obj's underlying member method code with example usage: obj.find_all_modules() and returns: modules