https://github.com/teeworlds/teeworlds/commit/6abe8420e6d44a7855bab9972133661954b3ab5d https://github.com/teeworlds/teeworlds/commit/ea0787e824c5348f9e63911962c639e4c1ff6335 --- CMakeLists.txt.orig 2026-10-09 13:27:55 UTC +++ CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.12...3.27.4) file(STRINGS src/game/version.h VERSION_LINE LIMIT_COUNT 1 @@ -110,9 +110,9 @@ set(CLIENT_EXECUTABLE teeworlds CACHE STRING "Name of # Download dependencies ######################################################################## -find_package(PythonInterp) +find_package(Python3) if(DOWNLOAD_DEPENDENCIES) - if(PYTHON_EXECUTABLE AND TARGET_OS STREQUAL "windows" AND TARGET_BITS) + if(Python3_EXECUTABLE AND TARGET_OS STREQUAL "windows" AND TARGET_BITS) set(DOWNLOADS) foreach(d freetype sdl) if(NOT EXISTS "${PROJECT_SOURCE_DIR}/other/${d}/${TARGET_OS}/lib${TARGET_BITS}") @@ -121,7 +121,7 @@ if(DOWNLOAD_DEPENDENCIES) endforeach() if(DOWNLOADS) message(STATUS "Downloading Freetype and SDL 2") - execute_process(COMMAND ${PYTHON_EXECUTABLE} scripts/download.py ${DOWNLOADS} + execute_process(COMMAND ${Python3_EXECUTABLE} scripts/download.py ${DOWNLOADS} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} ) endif() @@ -314,7 +314,6 @@ find_package(Freetype) find_package(ZLIB) find_package(Crypto) find_package(Freetype) -find_package(Git) find_package(GTest) find_package(Pnglite) find_package(SDL2) @@ -368,12 +367,12 @@ show_dependency_status("Pnglite" PNGLITE) endif() show_dependency_status("OpenSSL Crypto" CRYPTO) show_dependency_status("Pnglite" PNGLITE) -show_dependency_status("PythonInterp" PYTHONINTERP) +show_dependency_status("Python3" Python3) show_dependency_status("SDL2" SDL2) show_dependency_status("Wavpack" WAVPACK) show_dependency_status("Zlib" ZLIB) -if(NOT(PYTHONINTERP_FOUND)) +if(NOT(Python3_FOUND)) message(SEND_ERROR "You must install Python to compile Teeworlds") endif() @@ -1201,7 +1200,7 @@ function(chash output_file) function(chash output_file) add_custom_command(OUTPUT ${output_file} - COMMAND ${PYTHON_EXECUTABLE} scripts/cmd5.py ${ARGN} + COMMAND ${Python3_EXECUTABLE} scripts/cmd5.py ${ARGN} > "${PROJECT_BINARY_DIR}/${output_file}" DEPENDS scripts/cmd5.py ${ARGN} WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} @@ -1210,7 +1209,7 @@ function(generate_source output_file script_parameter) function(generate_source output_file script_parameter) add_custom_command(OUTPUT ${output_file} - COMMAND ${PYTHON_EXECUTABLE} datasrc/compile.py ${script_parameter} + COMMAND ${Python3_EXECUTABLE} datasrc/compile.py ${script_parameter} > "${PROJECT_BINARY_DIR}/${output_file}" DEPENDS datasrc/compile.py @@ -1237,7 +1236,7 @@ add_custom_command(OUTPUT ${PROJECT_BINARY_DIR}/src/ge endif() endif() add_custom_command(OUTPUT ${PROJECT_BINARY_DIR}/src/generated/git_revision.cpp - COMMAND ${PYTHON_EXECUTABLE} + COMMAND ${Python3_EXECUTABLE} scripts/git_revision.py > ${PROJECT_BINARY_DIR}/src/generated/git_revision.cpp WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} @@ -1955,8 +1954,8 @@ if(CLIENT AND (DMGTOOLS_FOUND OR HDIUTIL)) COMMAND ${CMAKE_COMMAND} -E copy $ ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/MacOS/ COMMAND ${CMAKE_COMMAND} -E copy ${SDL2_LIBRARY} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/Frameworks/libSDL2-2.0.0.dylib COMMAND ${CMAKE_COMMAND} -E copy ${FREETYPE_LIBRARY} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/Frameworks/libfreetype.6.dylib - COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/darwin_change_dylib.py change --tools ${CMAKE_INSTALL_NAME_TOOL} ${CMAKE_OTOOL} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/MacOS/${TARGET_CLIENT} SDL2 @executable_path/../Frameworks/libSDL2-2.0.0.dylib - COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/darwin_change_dylib.py change --tools ${CMAKE_INSTALL_NAME_TOOL} ${CMAKE_OTOOL} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/MacOS/${TARGET_CLIENT} libfreetype @executable_path/../Frameworks/libfreetype.6.dylib + COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/darwin_change_dylib.py change --tools ${CMAKE_INSTALL_NAME_TOOL} ${CMAKE_OTOOL} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/MacOS/${TARGET_CLIENT} SDL2 @executable_path/../Frameworks/libSDL2-2.0.0.dylib + COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/darwin_change_dylib.py change --tools ${CMAKE_INSTALL_NAME_TOOL} ${CMAKE_OTOOL} ${DMG_TMPDIR}/${TARGET_CLIENT}.app/Contents/MacOS/${TARGET_CLIENT} libfreetype @executable_path/../Frameworks/libfreetype.6.dylib # SERVER COMMAND ${CMAKE_COMMAND} -E copy_directory data/maps ${DMG_TMPDIR}/${TARGET_SERVER}.app/Contents/Resources/data/maps @@ -1965,7 +1964,7 @@ if(CLIENT AND (DMGTOOLS_FOUND OR HDIUTIL)) COMMAND ${CMAKE_COMMAND} -E copy $ $ ${DMG_TMPDIR}/${TARGET_SERVER}.app/Contents/MacOS/ # DMG - COMMAND ${PYTHON_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/dmg.py create ${DMG_PARAMS} ${CPACK_PACKAGE_FILE_NAME}.dmg ${CPACK_PACKAGE_FILE_NAME} ${DMG_TMPDIR} + COMMAND ${Python3_EXECUTABLE} ${PROJECT_SOURCE_DIR}/scripts/dmg.py create ${DMG_PARAMS} ${CPACK_PACKAGE_FILE_NAME}.dmg ${CPACK_PACKAGE_FILE_NAME} ${DMG_TMPDIR} DEPENDS ${TARGET_CLIENT}