bpo-40334: Allow to run make regen-pegen without distutils (GH-19684)
This commit is contained in:
parent
3e89251ba8
commit
50f28dea32
|
@ -11,11 +11,6 @@ import time
|
|||
import token
|
||||
import traceback
|
||||
|
||||
from typing import Final
|
||||
|
||||
from pegen.build import build_parser_and_generator
|
||||
from pegen.testutil import print_memstats
|
||||
|
||||
|
||||
argparser = argparse.ArgumentParser(
|
||||
prog="pegen", description="Experimental PEG-like parser generator"
|
||||
|
@ -52,6 +47,9 @@ argparser.add_argument(
|
|||
|
||||
|
||||
def main() -> None:
|
||||
from pegen.build import build_parser_and_generator
|
||||
from pegen.testutil import print_memstats
|
||||
|
||||
args = argparser.parse_args()
|
||||
verbose = args.verbose
|
||||
verbose_tokenizer = verbose >= 3
|
||||
|
@ -133,4 +131,7 @@ def main() -> None:
|
|||
|
||||
|
||||
if __name__ == "__main__":
|
||||
if sys.version_info < (3, 8):
|
||||
print("ERROR: using pegen requires at least Python 3.8!", file=sys.stderr)
|
||||
sys.exit(1)
|
||||
main()
|
||||
|
|
|
@ -6,12 +6,6 @@ import sysconfig
|
|||
|
||||
from typing import Optional, Tuple
|
||||
|
||||
import distutils.log
|
||||
from distutils.core import Distribution, Extension
|
||||
from distutils.command.clean import clean # type: ignore
|
||||
from distutils.command.build_ext import build_ext # type: ignore
|
||||
from distutils.tests.support import fixup_build_ext
|
||||
|
||||
from pegen.c_generator import CParserGenerator
|
||||
from pegen.grammar import Grammar
|
||||
from pegen.grammar_parser import GeneratedParser as GrammarParser
|
||||
|
@ -47,6 +41,12 @@ def compile_c_extension(
|
|||
If *build_dir* is provided, that path will be used as the temporary build directory
|
||||
of distutils (this is useful in case you want to use a temporary directory).
|
||||
"""
|
||||
import distutils.log
|
||||
from distutils.core import Distribution, Extension
|
||||
from distutils.command.clean import clean # type: ignore
|
||||
from distutils.command.build_ext import build_ext # type: ignore
|
||||
from distutils.tests.support import fixup_build_ext
|
||||
|
||||
if verbose:
|
||||
distutils.log.set_verbosity(distutils.log.DEBUG)
|
||||
|
||||
|
|
Loading…
Reference in New Issue