mirror of
https://github.com/python/cpython.git
synced 2025-12-08 06:10:17 +00:00
bpo-45866: pegen strips directory of "generated from" header (GH-29777) (GH-29792)
"make regen-all" now produces the same output when run from a
directory other than the source tree: when building Python out of the
source tree.
(cherry picked from commit 253b7a0a9f)
This commit is contained in:
parent
3f024e27c2
commit
b6defde2af
5 changed files with 12 additions and 4 deletions
|
|
@ -0,0 +1,4 @@
|
||||||
|
``make regen-all`` now produces the same output when run from a directory
|
||||||
|
other than the source tree: when building Python out of the source tree.
|
||||||
|
pegen now strips directory of the "generated by pygen from <FILENAME" header
|
||||||
|
Patch by Victor Stinner.
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
// @generated by pegen.py from ./Grammar/python.gram
|
// @generated by pegen.py from python.gram
|
||||||
#include "pegen.h"
|
#include "pegen.h"
|
||||||
|
|
||||||
#if defined(Py_DEBUG) && defined(Py_BUILD_CORE)
|
#if defined(Py_DEBUG) && defined(Py_BUILD_CORE)
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
import ast
|
import ast
|
||||||
from dataclasses import field, dataclass
|
from dataclasses import field, dataclass
|
||||||
|
import os.path
|
||||||
import re
|
import re
|
||||||
from typing import Any, Dict, IO, Optional, List, Text, Tuple, Set
|
from typing import Any, Dict, IO, Optional, List, Text, Tuple, Set
|
||||||
from enum import Enum
|
from enum import Enum
|
||||||
|
|
@ -405,7 +406,8 @@ def out_of_memory_goto(self, expr: str, goto_target: str) -> None:
|
||||||
|
|
||||||
def generate(self, filename: str) -> None:
|
def generate(self, filename: str) -> None:
|
||||||
self.collect_todo()
|
self.collect_todo()
|
||||||
self.print(f"// @generated by pegen.py from {filename}")
|
basename = os.path.basename(filename)
|
||||||
|
self.print(f"// @generated by pegen.py from {basename}")
|
||||||
header = self.grammar.metas.get("header", EXTENSION_PREFIX)
|
header = self.grammar.metas.get("header", EXTENSION_PREFIX)
|
||||||
if header:
|
if header:
|
||||||
self.print(header.rstrip("\n"))
|
self.print(header.rstrip("\n"))
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
#!/usr/bin/env python3.8
|
#!/usr/bin/env python3.8
|
||||||
# @generated by pegen from ./Tools/peg_generator/pegen/metagrammar.gram
|
# @generated by pegen from metagrammar.gram
|
||||||
|
|
||||||
import ast
|
import ast
|
||||||
from typing import Optional, Any
|
from typing import Optional, Any
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
import os.path
|
||||||
import token
|
import token
|
||||||
from typing import Any, Dict, Optional, IO, Text, Tuple
|
from typing import Any, Dict, Optional, IO, Text, Tuple
|
||||||
|
|
||||||
|
|
@ -139,7 +140,8 @@ def __init__(
|
||||||
def generate(self, filename: str) -> None:
|
def generate(self, filename: str) -> None:
|
||||||
header = self.grammar.metas.get("header", MODULE_PREFIX)
|
header = self.grammar.metas.get("header", MODULE_PREFIX)
|
||||||
if header is not None:
|
if header is not None:
|
||||||
self.print(header.rstrip("\n").format(filename=filename))
|
basename = os.path.basename(filename)
|
||||||
|
self.print(header.rstrip("\n").format(filename=basename))
|
||||||
subheader = self.grammar.metas.get("subheader", "")
|
subheader = self.grammar.metas.get("subheader", "")
|
||||||
if subheader:
|
if subheader:
|
||||||
self.print(subheader.format(filename=filename))
|
self.print(subheader.format(filename=filename))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue