Python/xenia-build/xb fixes

Use variable for Python version to make upgrading easier.
xb.bat:
 Update copyright date.
 Add candidate paths.
xb.ps1
 Properly use found python executable.
 More consistency with .bat.
 Don't spew unnecessary errors, etc.
 EOF newline.
This commit is contained in:
Margen67
2022-03-09 07:07:46 -08:00
committed by Rick Gibbed
parent 6ff312afb1
commit 74d83e4af8
3 changed files with 28 additions and 20 deletions

19
xb.bat
View File

@@ -1,5 +1,5 @@
@ECHO OFF
REM Copyright 2015 Ben Vanik. All Rights Reserved.
REM Copyright 2022 Ben Vanik. All Rights Reserved.
SET "DIR=%~dp0"
@@ -7,10 +7,12 @@ REM ============================================================================
REM Environment Validation
REM ============================================================================
SET "PYTHON_MINIMUM_VERSION[0]=3"
SET "PYTHON_MINIMUM_VERSION[1]=6"
CALL :check_python
IF %_RESULT% NEQ 0 (
ECHO.
ECHO Python 3.6+ must be installed and on PATH:
ECHO Python %PYTHON_MINIMUM_VERSION[0]%.%PYTHON_MINIMUM_VERSION[1]%+ must be installed and on PATH:
ECHO https://www.python.org/
GOTO :eof
)
@@ -33,9 +35,12 @@ SETLOCAL ENABLEDELAYEDEXPANSION
SET FOUND_PATH=""
SET "CANDIDATE_PATHS[0]=C:\python37\python.exe"
SET "CANDIDATE_PATHS[1]=C:\python36\python.exe"
SET OUTPUT_INDEX=2
SET "CANDIDATE_PATHS[0]=C:\python310\python.exe"
SET "CANDIDATE_PATHS[1]=C:\python39\python.exe"
SET "CANDIDATE_PATHS[2]=C:\python38\python.exe"
SET "CANDIDATE_PATHS[3]=C:\python37\python.exe"
SET "CANDIDATE_PATHS[4]=C:\python%PYTHON_MINIMUM_VERSION[0]%%PYTHON_MINIMUM_VERSION[1]%\python.exe"
SET OUTPUT_INDEX=5
FOR /F "usebackq delims=" %%L IN (`2^>NUL where python3`) DO (
IF %%~zL NEQ 0 (
@@ -70,9 +75,9 @@ IF "%FOUND_PATH%"=="" (
GOTO :eof
)
CMD /C ""%FOUND_PATH%" -c "import sys; sys.exit(1 if not sys.version_info[:2] ^>= (3, 6) else 0)"
CMD /C ""%FOUND_PATH%" -c "import sys; sys.exit(1 if not sys.version_info[:2] ^>= (%PYTHON_MINIMUM_VERSION[0]%, %PYTHON_MINIMUM_VERSION[1]%) else 0)"
IF %ERRORLEVEL% NEQ 0 (
ECHO ERROR: Python version mismatch, not at least 3.6.
ECHO ERROR: Python version mismatch, not at least %PYTHON_MINIMUM_VERSION[0]%.%PYTHON_MINIMUM_VERSION[1]%.
ECHO Found Python executable was "%FOUND_PATH%".
ENDLOCAL & SET _RESULT=1
GOTO :eof