Bug 254732

Summary: games/spring update to 105.0
Product: Ports & Packages Reporter: Adriaan de Groot <adridg>
Component: Individual Port(s)Assignee: Dmitry Marakasov <amdmi3>
Status: Closed FIXED    
Severity: Affects Only Me CC: makc
Priority: --- Flags: bugzilla: maintainer-feedback? (amdmi3)
Version: Latest   
Hardware: Any   
OS: Any   

Description Adriaan de Groot freebsd_committer freebsd_triage 2021-04-02 23:23:37 UTC
See also PR 229100, which was a 2018 request to update the port.

games/spring is marked BROKEN; it doesn't build. It's also years out-of-date. The current release is spring 105.0, released in 2021. https://springrts.com/dl/buildbot/default/master/105.0/source/
Comment 1 Dmitry Marakasov freebsd_committer freebsd_triage 2021-04-22 14:19:13 UTC
This was delayed this long because newer versions of spring seemed to require complete reimplementation of huge platform-specific code bits (such as threading) for FreeBSD.

I've managed to build 105.0.1 with minimal patching though, trying to playtest now.
Comment 2 Dmitry Marakasov freebsd_committer freebsd_triage 2021-04-22 16:57:45 UTC
It fails to build under 12 and I'm not going to fix it there. Need couple of days to upgrade my laptop to 13 to test it. Meanwhile, WIP spring port is available for testing here:

https://github.com/AMDmi3/freebsd-ports/tree/spring-update
Comment 3 Dmitry Marakasov freebsd_committer freebsd_triage 2021-04-29 17:45:59 UTC
It fails with "OpenGL extension "GLEW_ARB_geometry_shader4" not supported, aborting" here, but I guess that's expected on builtin intel graphics. I'll update the port since it's anyway better than the one which is outdated and doesn't build, testing is welcome.
Comment 4 Adriaan de Groot freebsd_committer freebsd_triage 2021-05-17 19:59:29 UTC
It builds, but when starting it I get a similar report:

```
[t=00:00:00.418052] [GR::LogVersionInfo]
[t=00:00:00.418059]     SDL version : 2.0.12 (linked) / 2.0.12 (compiled)
[t=00:00:00.418063]     GL version  : 4.6 (Core Profile) Mesa 20.2.3
[t=00:00:00.418066]     GL vendor   : X.Org
[t=00:00:00.418070]     GL renderer : AMD Radeon (TM) R7 300 Series (BONAIRE, DRM 3.35.0, 13.0-STABLE, LLVM 10.0.1)
[t=00:00:00.418074]     GLSL version: 4.60
[t=00:00:00.418078]     GLEW version: 2.2.0
[t=00:00:00.418081]     GPU memory  : 2048MB (total) / 2048MB (available)
[t=00:00:00.418085]     SDL swap-int: 1
[t=00:00:00.418089] 
[t=00:00:00.418093] [GR::CheckGLExtensions] OpenGL extension "GLEW_EXT_direct_state_access" not supported, ignoring
[t=00:00:00.418114] [GR::CheckGLExtensions] OpenGL extension "GLEW_EXT_texture_edge_clamp" not supported, ignoring
[t=00:00:00.418117] [GR::CheckGLExtensions] OpenGL extension "GLEW_ARB_texture_border_clamp" not supported, ignoring
[t=00:00:00.418121] [GR::CheckGLExtensions] OpenGL extension "GLEW_ARB_fragment_program" not supported, ignoring
[t=00:00:00.418125] [GR::CheckGLExtensions] OpenGL extension "GLEW_ARB_shading_language_100" not supported, ignoring
[t=00:00:00.418440] [WatchDog::DeregisterThread] deregistering controls for thread [main]
[t=00:00:10.676480] Error: [ExitSpringProcess] errorMsg="OpenGL extension "GLEW_ARB_geometry_shader4" not supported, aborting" msgCaption="Spring: caught unsupported_error: " mainThread=1
[t=00:00:10.676633] Error: [Watchdog::ClearTimer(id)] Invalid thread 4 (_threadId=0x0)
[t=00:00:10.676644] [SpringApp::Kill][1] fromRun=0
```

/usr/local/bin/glewinfo agrees with that assessment, but I'm not sure where this stuff is even supposed to come from. We might need an nvidia user (I don't know if I feel like swapping cards around **again**) to check.
Comment 5 Max Brazhnikov freebsd_committer freebsd_triage 2022-02-14 08:59:00 UTC
(In reply to Dmitry Marakasov from comment #3)
I can test it with nvidia graphics. Dmitry, will you update the port?
Comment 6 commit-hook freebsd_committer freebsd_triage 2022-02-25 19:13:15 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=33c9707d8b57fab77399b00747f04e3478770167

commit 33c9707d8b57fab77399b00747f04e3478770167
Author:     Dmitry Marakasov <amdmi3@FreeBSD.org>
AuthorDate: 2021-04-22 12:05:40 +0000
Commit:     Dmitry Marakasov <amdmi3@FreeBSD.org>
CommitDate: 2022-02-25 19:12:28 +0000

    games/spring: update to 105.0.1

    PR:             254732

 games/spring/Makefile                              | 118 +++++--------
 games/spring/distinfo                              |  23 ++-
 ...atch-AI_Skirmish_CircuitAI_CMakeLists.txt (new) |  11 ++
 ...uitAI_src_circuit_module_EconomyManager.h (new) |  13 ++
 ...cuitAI_src_circuit_setup_SetupManager.cpp (new) |  22 +++
 ...I_src_circuit_util_math_EncloseCircle.cpp (new) |  21 +++
 games/spring/files/patch-boost-1.66 (gone)         | 184 -------------------
 games/spring/files/patch-boost-1.69 (gone)         |  31 ----
 games/spring/files/patch-doc_CMakeLists.txt (new)  |  11 ++
 .../patch-doc_manpages_make__manpages.sh (new)     |   8 +
 games/spring/files/patch-math (gone)               | 196 ---------------------
 games/spring/files/patch-remove-unused-vars (gone) | 156 ----------------
 .../files/patch-rts-System-Platform-CpuID (gone)   |  11 --
 ...h-rts-System-Platform-Linux-CrashHandler (gone) |   8 -
 .../files/patch-rts-System-Platform-Misc (gone)    |   9 -
 .../spring/files/patch-rts-build-cmake-Util (gone) |  32 ----
 .../files/patch-rts-build-cmake-UtilJava (gone)    |  16 --
 .../patch-rts-lib-headlessStubs-glstub (gone)      |  13 --
 .../files/patch-rts_Game_CMakeLists.txt (new)      |   7 +
 .../files/patch-rts_Game_GameSetup.cpp (new)       |  11 ++
 .../spring/files/patch-rts_Lua_LuaMaterial.h (new) |  12 ++
 ..._Rendering_Env_Decals_DecalsDrawerGL4.cpp (new) |  11 ++
 .../files/patch-rts_Rendering_LineDrawer.h (new)   |  12 ++
 .../files/patch-rts_Sim_CMakeLists.txt (new)       |   7 +
 .../patch-rts_Sim_Misc_SimObjectIDPool.cpp (new)   |  13 ++
 ...rts_Sim_Projectiles_ProjectileHandler.cpp (new) |  41 +++++
 .../files/patch-rts_System_CMakeLists.txt (new)    |  11 ++
 .../files/patch-rts_System_GlobalRNG.h (new)       |  13 ++
 .../patch-rts_System_Platform_Linux_Futex.h (new)  |  19 ++
 ...s_System_Platform_Linux_ThreadSupport.cpp (new) |  19 ++
 .../files/patch-rts_System_Platform_Misc.cpp (new) |  21 +++
 .../patch-rts_System_Sound_OpenAL_Sound.h (gone)   |  28 ---
 .../files/patch-rts_System_SpringHashMap.hpp (new) |  12 ++
 .../files/patch-rts_System_SpringHashSet.hpp (new) |  12 ++
 ...ch-rts_System_Threading_SpringThreading.h (new) |  20 +++
 .../patch-rts_build_cmake_UtilVersion.cmake (new)  |  60 +++++++
 .../patch-rts_builds_dedicated_main.cpp (new)      |  13 ++
 ...tch-tools_mapcompile_src_mapdecompile.cpp (new) |  11 ++
 ...r-downloader_src_Downloader_Rapid_Sdp.cpp (new) |  12 ++
 ...-downloader_src_FileSystem_FileSystem.cpp (new) |  12 ++
 games/spring/files/patch-use-system-sdl (gone)     |  93 ----------
 games/spring/pkg-plist                             |  12 +-
 42 files changed, 510 insertions(+), 855 deletions(-)