git: 3c589e7782d6 - main - games/teeworlds: Fix building with CMake 4
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 09 Oct 2026 13:29:37 UTC
The branch main has been updated by arrowd:
URL: https://cgit.FreeBSD.org/ports/commit/?id=3c589e7782d692c658192b10178e36a17ded0ced
commit 3c589e7782d692c658192b10178e36a17ded0ced
Author: Gleb Popov <arrowd@FreeBSD.org>
AuthorDate: 2026-10-09 13:29:10 +0000
Commit: Gleb Popov <arrowd@FreeBSD.org>
CommitDate: 2026-10-09 13:29:27 +0000
games/teeworlds: Fix building with CMake 4
Approved by: portmgr (fixit blanket)
---
games/teeworlds/files/patch-CMakeLists.txt | 102 +++++++++++++++++++++++++++++
1 file changed, 102 insertions(+)
diff --git a/games/teeworlds/files/patch-CMakeLists.txt b/games/teeworlds/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..d959f786f1cf
--- /dev/null
+++ b/games/teeworlds/files/patch-CMakeLists.txt
@@ -0,0 +1,102 @@
+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 $<TARGET_FILE:${TARGET_CLIENT}> ${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 $<TARGET_FILE:${TARGET_SERVER}> $<TARGET_FILE:${TARGET_SERVER_LAUNCHER}> ${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}