diff --git a/build_files/windows/find_dependencies.cmd b/build_files/windows/find_dependencies.cmd index 9fa3b156a4f03965596556f074e011b691c75042..fec2bd2e75235cd00793515513d85a7c2c3e6e7b 100644 --- a/build_files/windows/find_dependencies.cmd +++ b/build_files/windows/find_dependencies.cmd @@ -3,7 +3,32 @@ for %%X in (svn.exe) do (set SVN=%%~$PATH:X) for %%X in (cmake.exe) do (set CMAKE=%%~$PATH:X) for %%X in (ctest.exe) do (set CTEST=%%~$PATH:X) for %%X in (git.exe) do (set GIT=%%~$PATH:X) +REM For python, default on 39 but if that does not exist also check +REM the 310,311 and 312 folders to see if those are there, it checks +REM this far ahead to ensure good lib folder compatiblity in the future. set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe +if EXIST %PYTHON% ( + goto detect_python_done +) +set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\310\bin\python.exe +if EXIST %PYTHON% ( + goto detect_python_done +) +set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\311\bin\python.exe +if EXIST %PYTHON% ( + goto detect_python_done +) +set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\312\bin\python.exe +if EXIST %PYTHON% ( + goto detect_python_done +) + +if NOT EXIST %PYTHON% ( + echo Warning: Python not found, there is likely an issue with the library folder + set PYTHON="" +) + +:detect_python_done if NOT "%verbose%" == "" ( echo svn : "%SVN%" echo cmake : "%CMAKE%" @@ -11,7 +36,3 @@ if NOT "%verbose%" == "" ( echo git : "%GIT%" echo python : "%PYTHON%" ) -if "%CMAKE%" == "" ( - echo Cmake not found in path, required for building, exiting... - exit /b 1 -) diff --git a/build_files/windows/format.cmd b/build_files/windows/format.cmd index d5003c9f8d85211a33ebe6599e707138a5500ed4..95440cb18188c8e910786e0da142549580cabead 100644 --- a/build_files/windows/format.cmd +++ b/build_files/windows/format.cmd @@ -9,17 +9,11 @@ exit /b 1 :detect_done echo found clang-format in %CF_PATH% -if EXIST %PYTHON% ( - set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe - goto detect_python_done +if NOT EXIST %PYTHON% ( + echo python not found, required for this operation + exit /b 1 ) -echo python not found in lib folder -exit /b 1 - -:detect_python_done -echo found python (%PYTHON%) - set FORMAT_PATHS=%BLENDER_DIR%\source\tools\utils_maintenance\clang_format_paths.py REM The formatting script expects clang-format to be in the current PATH. diff --git a/build_files/windows/icons.cmd b/build_files/windows/icons.cmd index d51b27d895380937e4cc52a77a84db9f0a19ef46..9390ccf827c7fdcca532d6fb0c24826095707fb6 100644 --- a/build_files/windows/icons.cmd +++ b/build_files/windows/icons.cmd @@ -1,18 +1,8 @@ -if EXIST "%PYTHON%" ( - goto detect_python_done +if NOT EXIST %PYTHON% ( + echo python not found, required for this operation + exit /b 1 ) -set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe -if EXIST %PYTHON% ( - goto detect_python_done -) - -echo python not found at %PYTHON% -exit /b 1 - -:detect_python_done -echo found python (%PYTHON%) - call "%~dp0\find_inkscape.cmd" if EXIST "%INKSCAPE_BIN%" ( diff --git a/build_files/windows/icons_geom.cmd b/build_files/windows/icons_geom.cmd index 18312daf35bcb81615f57c1579d131b8c931853e..4cb3bf5b4df91bd2b95a627ebfa835075119be44 100644 --- a/build_files/windows/icons_geom.cmd +++ b/build_files/windows/icons_geom.cmd @@ -1,18 +1,8 @@ -if EXIST %PYTHON% ( - goto detect_python_done +if NOT EXIST %PYTHON% ( + echo python not found, required for this operation + exit /b 1 ) -set PYTHON=%BLENDER_DIR%\..\lib\win64_vc15\python\39\bin\python.exe -if EXIST %PYTHON% ( - goto detect_python_done -) - -echo python not found at %PYTHON% -exit /b 1 - -:detect_python_done -echo found python (%PYTHON%) - call "%~dp0\find_blender.cmd" if EXIST "%BLENDER_BIN%" ( diff --git a/build_files/windows/update_sources.cmd b/build_files/windows/update_sources.cmd index f8fbd3830901dca73e80881169a7b59481625ad0..f99ce43f40f7312ef2c974a2f90a3f9c4e439d1a 100644 --- a/build_files/windows/update_sources.cmd +++ b/build_files/windows/update_sources.cmd @@ -1,10 +1,7 @@ -if EXIST %PYTHON% ( - goto detect_python_done +if NOT EXIST %PYTHON% ( + echo python not found, required for this operation + exit /b 1 ) - -echo python not found in lib folder -exit /b 1 - :detect_python_done REM Use -B to avoid writing __pycache__ in lib directory and causing update conflicts. diff --git a/make.bat b/make.bat index d55b2cfd1b341e11545ea28c3522843f8022b98c..ff8059b07546f1631ec1ab1eeb1c899ca8a87f31 100644 --- a/make.bat +++ b/make.bat @@ -13,6 +13,9 @@ if errorlevel 1 goto EOF call "%BLENDER_DIR%\build_files\windows\parse_arguments.cmd" %* if errorlevel 1 goto EOF +call "%BLENDER_DIR%\build_files\windows\find_dependencies.cmd" +if errorlevel 1 goto EOF + REM if it is one of the convenience targets and BLENDER_BIN is set REM skip compiler detection if "%ICONS%%ICONS_GEOM%%DOC_PY%" == "1" ( @@ -21,9 +24,6 @@ if "%ICONS%%ICONS_GEOM%%DOC_PY%" == "1" ( ) ) -call "%BLENDER_DIR%\build_files\windows\find_dependencies.cmd" -if errorlevel 1 goto EOF - if "%BUILD_SHOW_HASHES%" == "1" ( call "%BLENDER_DIR%\build_files\windows\show_hashes.cmd" goto EOF @@ -88,6 +88,11 @@ if "%DOC_PY%" == "1" ( goto EOF ) +if "%CMAKE%" == "" ( + echo Cmake not found in path, required for building, exiting... + exit /b 1 +) + echo Building blender with VS%BUILD_VS_YEAR% for %BUILD_ARCH% in %BUILD_DIR% call "%BLENDER_DIR%\build_files\windows\check_libraries.cmd"