]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-139727: Add --enable-stackref-debug flag to build.bat to enable Py_STACKREF_DEBUG...
authorSergey Miryanov <sergey.miryanov@gmail.com>
Fri, 21 Nov 2025 11:03:32 +0000 (16:03 +0500)
committerGitHub <noreply@github.com>
Fri, 21 Nov 2025 11:03:32 +0000 (11:03 +0000)
PCbuild/build.bat
PCbuild/pythoncore.vcxproj

index 602357048867d682d07e06ce68817e6966cd173b..e4de9a80d76a9e7894a3f27d5e8a6243a621de5d 100644 (file)
@@ -41,6 +41,7 @@ echo.  --experimental-jit-off      Ditto but off by default (PYTHON_JIT=1 enable
 echo.  --experimental-jit-interpreter  Enable the experimental Tier 2 interpreter.
 echo.  --pystats      Enable PyStats collection.
 echo.  --tail-call-interp  Enable tail-calling interpreter (requires LLVM 19 or higher).
+echo.  --enable-stackref-debug  Enable stackref debugging mode.
 echo.
 echo.Available flags to avoid building certain modules.
 echo.These flags have no effect if '-e' is not given:
@@ -98,6 +99,7 @@ if "%~1"=="--experimental-jit-interpreter-off" (set UseTIER2=6) & shift & goto C
 if "%~1"=="--without-remote-debug" (set DisableRemoteDebug=true) & shift & goto CheckOpts
 if "%~1"=="--pystats" (set PyStats=1) & shift & goto CheckOpts
 if "%~1"=="--tail-call-interp" (set UseTailCallInterp=true) & shift & goto CheckOpts
+if "%~1"=="--enable-stackref-debug" (set StackRefDebug=true) & shift & goto CheckOpts
 rem These use the actual property names used by MSBuild.  We could just let
 rem them in through the environment, but we specify them on the command line
 rem anyway for visibility so set defaults after this
@@ -202,6 +204,7 @@ echo on
  /p:PyStats=%PyStats%^
  /p:UseTailCallInterp=%UseTailCallInterp%^
  /p:DisableRemoteDebug=%DisableRemoteDebug%^
+ /p:StackRefDebug=%StackRefDebug%^
  %1 %2 %3 %4 %5 %6 %7 %8 %9
 
 @echo off
index 359a47fbfc4fe2ed902636fffc9a8bbd3c2ed299..85363949c2344f106585692bade5d84ad04298ce 100644 (file)
       <PreprocessorDefinitions Condition="'$(UseTailCallInterp)' == 'true'">_Py_TAIL_CALL_INTERP=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(WITH_COMPUTED_GOTOS)' != ''">HAVE_COMPUTED_GOTOS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
       <PreprocessorDefinitions Condition="'$(DisableRemoteDebug)' != 'true'">Py_REMOTE_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+      <PreprocessorDefinitions Condition="'$(StackRefDebug)' == 'true'">Py_STACKREF_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
     </ClCompile>
     <Link>
       <AdditionalDependencies>version.lib;ws2_32.lib;pathcch.lib;bcrypt.lib;%(AdditionalDependencies)</AdditionalDependencies>