docs: def getImports(pth):
      """Forwards to the correct getImports implementation for the platform.
      """
      if not os.path.isfile(pth):
          pth = check_extract_from_egg(pth)[0][0]
      if is_win or is_cygwin:
          if pth.lower().endswith(".manifest"):
              return []
          try:
              return _getImports_pe(pth)
          except Exception, exception:
              # Assemblies can pull in files which aren't necessarily PE,
              # but are still needed by the assembly. Any additional binary
              # dependencies should already have been handled by
              # selectAssemblies in that case, so just warn, return an empty
              # list and continue.
              if logger.isEnabledFor(logging.WARN):
                   # logg excaption only if level >= warn
                  logger.warn('Can not get binary dependencies for file: %s', pth)
                  logger.exception(exception)
              return []
      elif is_darwin:
          return _getImports_macholib(pth)
      else:
          return _getImports_ldd(pth)