Hi,

Godot 4.7 just released [1] and it builds with the diff below. This
disables the godotsteam module as there is a new issue with building
custom modules [2]. This should only affect those who run commercial
games that need Godotsteam present. I am hoping the issue will soon be
resolved, which is why I left the godotsteam distfile (DIST_TUPLE) in
place (otherwise would have to remove all the patches, too). Let's give
it a little time to be sorted out.

I tested it with brief use of the godot-editor and ran Road to Vostok
in it.

I'm planning to update this soon if I don't hear back.

[1] https://godotengine.org/releases/4.7/
[2] https://github.com/godotengine/godot/issues/120622

Index: pack3/Makefile
===================================================================
RCS file: /cvs/ports/games/godot/pack3/Makefile,v
diff -u -p -r1.4 Makefile
--- pack3/Makefile      28 May 2026 01:14:21 -0000      1.4
+++ pack3/Makefile      25 Jun 2026 20:46:00 -0000
@@ -6,7 +6,7 @@ ONLY_FOR_ARCHS =        ${LP64_ARCHS}
 COMMENT-main = 2D and 3D game engine
 COMMENT-editor=        2D and 3D game engine (with the editor)
 
-VERSION =      4.6.3
+VERSION =      4.7
 PKGNAME =      godot-${VERSION}
 DIST_TUPLE +=  codeberg godotsteam godotsteam v4.3 godotsteam
 
@@ -17,12 +17,17 @@ WANTLIB-main += ${COMPILER_LIBCXX} SDL3 
 WANTLIB-main += Xrandr Xrender c dbus-1 enet fontconfig freetype glib-2.0
 WANTLIB-main += glslang glslang-default-resource-limits intl m mbedcrypto
 WANTLIB-main += mbedtls mbedx509 miniupnpc ogg pcre2-32 sndio speechd
-WANTLIB-main += steam_api theora theoradec vorbis vorbisfile webp wslay
+WANTLIB-main += theora theoradec vorbis vorbisfile webp wslay
 WANTLIB-main += xkbcommon zstd
 WANTLIB-editor = ${WANTLIB-main} theoraenc vorbisenc
 
 # Building with module_mono_enabled requires msbuild and to fix the
 # sharedlib_ext in modules/mono/config.py to '.so.1.0'
+
+# 4.7 has bug with compiling custom modules:
+# https://github.com/godotengine/godot/issues/120622
+# Therefore, the current line is not in MODSCONS_FLAGS until solved
+#                      custom_modules=${WRKSRC}/godotsteam \
 MODSCONS_FLAGS =       cflags="${CFLAGS}" \
                        cxxflags="${CXXFLAGS} -Wno-deprecated-register" \
                        builtin_certs=no \
@@ -38,7 +43,6 @@ MODSCONS_FLAGS =      cflags="${CFLAGS}" \
                        builtin_sdl=no \
                        builtin_wslay=no \
                        builtin_zstd=no \
-                       custom_modules=${WRKSRC}/godotsteam \
                        disable_path_overrides=no \
                        use_sowrap=no \
                        wayland=no
@@ -77,7 +81,6 @@ LIB_DEPENDS =         archivers/zstd \
                        devel/gettext,-runtime \
                        devel/pcre2 \
                        devel/sdl3 \
-                       games/goldberg_emulator \
                        graphics/glslang \
                        graphics/libwebp \
                        multimedia/libtheora \
@@ -117,7 +120,7 @@ do-install:
        ${INSTALL_MAN} ${WRKSRC}/misc/dist/linux/godot.6 \
                ${PREFIX}/man/man6/godot.6
        ${INSTALL_DATA_DIR} ${PREFIX}/share/pixmaps
-       ${INSTALL_DATA} ${WRKSRC}/icon.svg \
+       ${INSTALL_DATA} ${WRKSRC}/misc/logo/icon.svg \
                ${PREFIX}/share/pixmaps/godot.svg
        ${INSTALL_DATA_DIR} ${PREFIX}/share/applications
        ${INSTALL_DATA} ${WRKSRC}/misc/dist/linux/*.desktop \
Index: pack3/distinfo
===================================================================
RCS file: /cvs/ports/games/godot/pack3/distinfo,v
diff -u -p -r1.3 distinfo
--- pack3/distinfo      28 May 2026 01:14:21 -0000      1.3
+++ pack3/distinfo      25 Jun 2026 20:46:00 -0000
@@ -1,4 +1,4 @@
-SHA256 (godot-4.6.3-stable.tar.xz) = 
ImECjA38EODPSAClsuWlfqJB9yllFiMn9XZNU2pppGo=
+SHA256 (godot-4.7-stable.tar.xz) = 56y2sn1r7iUl/aoSZgxgKwNMJQlOiiZ5M0YB2IeKngY=
 SHA256 (godotsteam-godotsteam-v4.3.tar.gz) = 
h0L2bJ5YrUf7wTAmoMqJSSCR8aVM7HIBaZvmicyUs/Q=
-SIZE (godot-4.6.3-stable.tar.xz) = 44471880
+SIZE (godot-4.7-stable.tar.xz) = 46684188
 SIZE (godotsteam-godotsteam-v4.3.tar.gz) = 252202
Index: pack3/patches/patch-SConstruct
===================================================================
RCS file: /cvs/ports/games/godot/pack3/patches/patch-SConstruct,v
diff -u -p -r1.2 patch-SConstruct
--- pack3/patches/patch-SConstruct      28 May 2026 01:14:21 -0000      1.2
+++ pack3/patches/patch-SConstruct      25 Jun 2026 20:46:00 -0000
@@ -6,7 +6,7 @@ Remove architecture from the program nam
 Index: SConstruct
 --- SConstruct.orig
 +++ SConstruct
-@@ -826,7 +826,7 @@ if env.msvc:
+@@ -851,7 +851,7 @@ if env.msvc:
              env.AppendUnique(CPPDEFINES=["SIZE_EXTRA"])
      elif env["optimize"] == "debug" or env["optimize"] == "none":
          env["OPTIMIZELEVEL"] = "/Od"
@@ -15,7 +15,7 @@ Index: SConstruct
      if env["debug_symbols"]:
          if env["platform"] == "windows":
              if methods.using_clang(env):
-@@ -1021,7 +1021,6 @@ if env.dev_build:
+@@ -1043,7 +1043,6 @@ if env.dev_build:
  if env["precision"] == "double":
      suffix += ".double"
  
Index: pack3/patches/patch-drivers_unix_os_unix_cpp
===================================================================
RCS file: /cvs/ports/games/godot/pack3/patches/patch-drivers_unix_os_unix_cpp,v
diff -u -p -r1.1.1.1 patch-drivers_unix_os_unix_cpp
--- pack3/patches/patch-drivers_unix_os_unix_cpp        4 Mar 2026 05:35:04 
-0000       1.1.1.1
+++ pack3/patches/patch-drivers_unix_os_unix_cpp        25 Jun 2026 20:46:00 
-0000
@@ -4,7 +4,7 @@ fix get_executable_path(); backport of
 Index: drivers/unix/os_unix.cpp
 --- drivers/unix/os_unix.cpp.orig
 +++ drivers/unix/os_unix.cpp
-@@ -1156,12 +1156,6 @@ String OS_Unix::get_executable_path() const {
+@@ -1158,12 +1158,6 @@ String OS_Unix::get_executable_path() const {
                return OS::get_executable_path();
        }
        return b;
@@ -17,7 +17,7 @@ Index: drivers/unix/os_unix.cpp
  #elif defined(__NetBSD__)
        int mib[4] = { CTL_KERN, KERN_PROC_ARGS, -1, KERN_PROC_PATHNAME };
        char buf[MAXPATHLEN];
-@@ -1203,8 +1197,43 @@ String OS_Unix::get_executable_path() const {
+@@ -1205,8 +1199,43 @@ String OS_Unix::get_executable_path() const {
  
        return path;
  #else
Index: pack3/patches/patch-methods_py
===================================================================
RCS file: /cvs/ports/games/godot/pack3/patches/patch-methods_py,v
diff -u -p -r1.1.1.1 patch-methods_py
--- pack3/patches/patch-methods_py      4 Mar 2026 05:35:04 -0000       1.1.1.1
+++ pack3/patches/patch-methods_py      25 Jun 2026 20:46:00 -0000
@@ -3,7 +3,7 @@ drop hardcoded -O3
 Index: methods.py
 --- methods.py.orig
 +++ methods.py
-@@ -126,8 +126,6 @@ def force_optimization_on_debug(self):
+@@ -125,8 +125,6 @@ def force_optimization_on_debug(self):
          return
      elif self.msvc:
          self["OPTIMIZELEVEL"] = "/O2"
Index: pack3/patches/patch-platform_linuxbsd_detect_py
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_detect_py,v
diff -u -p -r1.1.1.1 patch-platform_linuxbsd_detect_py
--- pack3/patches/patch-platform_linuxbsd_detect_py     4 Mar 2026 05:35:04 
-0000       1.1.1.1
+++ pack3/patches/patch-platform_linuxbsd_detect_py     25 Jun 2026 20:46:00 
-0000
@@ -3,7 +3,7 @@ add sndio driver
 Index: platform/linuxbsd/detect.py
 --- platform/linuxbsd/detect.py.orig
 +++ platform/linuxbsd/detect.py
-@@ -42,6 +42,7 @@ def get_opts():
+@@ -58,6 +58,7 @@ def get_opts():
          BoolVariable("use_sowrap", "Dynamically load system libraries", True),
          BoolVariable("alsa", "Use ALSA", True),
          BoolVariable("pulseaudio", "Use PulseAudio", True),
@@ -11,7 +11,7 @@ Index: platform/linuxbsd/detect.py
          BoolVariable("dbus", "Use D-Bus to handle screensaver and portal 
desktop settings", True),
          BoolVariable("speechd", "Use Speech Dispatcher for Text-to-Speech 
support", True),
          BoolVariable("fontconfig", "Use fontconfig for system fonts support", 
True),
-@@ -348,6 +349,12 @@ def configure(env: "SConsEnvironment"):
+@@ -369,6 +370,12 @@ def configure(env: "SConsEnvironment"):
                  env["pulseaudio"] = False
          else:
              env.Append(CPPDEFINES=["PULSEAUDIO_ENABLED", "_REENTRANT"])
Index: pack3/patches/patch-platform_linuxbsd_os_linuxbsd_cpp
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_os_linuxbsd_cpp,v
diff -u -p -r1.2 patch-platform_linuxbsd_os_linuxbsd_cpp
--- pack3/patches/patch-platform_linuxbsd_os_linuxbsd_cpp       18 Apr 2026 
22:08:09 -0000      1.2
+++ pack3/patches/patch-platform_linuxbsd_os_linuxbsd_cpp       25 Jun 2026 
20:46:00 -0000
@@ -3,7 +3,7 @@ add sndio driver
 Index: platform/linuxbsd/os_linuxbsd.cpp
 --- platform/linuxbsd/os_linuxbsd.cpp.orig
 +++ platform/linuxbsd/os_linuxbsd.cpp
-@@ -1285,6 +1285,10 @@ bool OS_LinuxBSD::_test_create_rendering_device_and_gl
+@@ -1296,6 +1296,10 @@ bool OS_LinuxBSD::_test_create_rendering_device_and_gl
  OS_LinuxBSD::OS_LinuxBSD() {
        main_loop = nullptr;
  
Index: pack3/patches/patch-platform_linuxbsd_os_linuxbsd_h
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_os_linuxbsd_h,v
diff -u -p -r1.1.1.1 patch-platform_linuxbsd_os_linuxbsd_h
--- pack3/patches/patch-platform_linuxbsd_os_linuxbsd_h 4 Mar 2026 05:35:04 
-0000       1.1.1.1
+++ pack3/patches/patch-platform_linuxbsd_os_linuxbsd_h 25 Jun 2026 20:46:00 
-0000
@@ -9,9 +9,9 @@ Index: platform/linuxbsd/os_linuxbsd.h
  #include "drivers/pulseaudio/audio_driver_pulseaudio.h"
 +#include "drivers/sndio/audio_driver_sndio.h"
  #include "drivers/unix/os_unix.h"
- #include "servers/audio/audio_server.h"
  
-@@ -75,6 +76,10 @@ class OS_LinuxBSD : public OS_Unix {
+ class JoypadSDL;
+@@ -71,6 +72,10 @@ class OS_LinuxBSD : public OS_Unix {
  
  #ifdef PULSEAUDIO_ENABLED
        AudioDriverPulseAudio driver_pulseaudio;
Index: pack3/patches/patch-platform_linuxbsd_wayland_detect_prime_egl_cpp
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_wayland_detect_prime_egl_cpp,v
diff -u -p -r1.1 patch-platform_linuxbsd_wayland_detect_prime_egl_cpp
--- pack3/patches/patch-platform_linuxbsd_wayland_detect_prime_egl_cpp  21 Mar 
2026 20:27:26 -0000      1.1
+++ pack3/patches/patch-platform_linuxbsd_wayland_detect_prime_egl_cpp  25 Jun 
2026 20:46:00 -0000
@@ -4,7 +4,7 @@ we don't support DRI_PRIME as of March 2
 Index: platform/linuxbsd/wayland/detect_prime_egl.cpp
 --- platform/linuxbsd/wayland/detect_prime_egl.cpp.orig
 +++ platform/linuxbsd/wayland/detect_prime_egl.cpp
-@@ -165,7 +165,7 @@ int DetectPrimeEGL::detect_prime(EGLenum p_platform_en
+@@ -174,7 +174,7 @@ int DetectPrimeEGL::detect_prime(EGLenum p_platform_en
  
                        close(fdset[0]);
  
Index: pack3/patches/patch-platform_linuxbsd_wayland_display_server_wayland_cpp
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_wayland_display_server_wayland_cpp,v
diff -u -p -r1.2 patch-platform_linuxbsd_wayland_display_server_wayland_cpp
--- pack3/patches/patch-platform_linuxbsd_wayland_display_server_wayland_cpp    
18 Apr 2026 22:08:09 -0000      1.2
+++ pack3/patches/patch-platform_linuxbsd_wayland_display_server_wayland_cpp    
25 Jun 2026 20:46:00 -0000
@@ -4,7 +4,7 @@ we don't support DRI_PRIME as of March 2
 Index: platform/linuxbsd/wayland/display_server_wayland.cpp
 --- platform/linuxbsd/wayland/display_server_wayland.cpp.orig
 +++ platform/linuxbsd/wayland/display_server_wayland.cpp
-@@ -2177,11 +2177,13 @@ DisplayServerWayland::DisplayServerWayland(const Strin
+@@ -2410,11 +2410,13 @@ DisplayServerWayland::DisplayServerWayland(const Strin
                                prime_idx = 
DetectPrimeEGL::detect_prime(EGL_PLATFORM_WAYLAND_KHR);
                        }
  
Index: pack3/patches/patch-platform_linuxbsd_x11_detect_prime_x11_cpp
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_x11_detect_prime_x11_cpp,v
diff -u -p -r1.2 patch-platform_linuxbsd_x11_detect_prime_x11_cpp
--- pack3/patches/patch-platform_linuxbsd_x11_detect_prime_x11_cpp      21 Mar 
2026 20:27:26 -0000      1.2
+++ pack3/patches/patch-platform_linuxbsd_x11_detect_prime_x11_cpp      25 Jun 
2026 20:46:00 -0000
@@ -4,7 +4,7 @@ we don't support DRI_PRIME as of March 2
 Index: platform/linuxbsd/x11/detect_prime_x11.cpp
 --- platform/linuxbsd/x11/detect_prime_x11.cpp.orig
 +++ platform/linuxbsd/x11/detect_prime_x11.cpp
-@@ -59,6 +59,8 @@ typedef GLXContext (*GLXCREATECONTEXTATTRIBSARBPROC)(D
+@@ -62,6 +62,8 @@ typedef GLXContext (*GLXCREATECONTEXTATTRIBSARBPROC)(D
  // To prevent shadowing warnings
  #undef glGetString
  
@@ -13,7 +13,7 @@ Index: platform/linuxbsd/x11/detect_prim
  int silent_error_handler(Display *display, XErrorEvent *error) {
        static char message[1024];
        XGetErrorText(display, error->error_code, message, sizeof(message));
-@@ -191,9 +193,11 @@ int DetectPrimeX11::detect_prime() {
+@@ -194,9 +196,11 @@ int DetectPrimeX11::detect_prime() {
  
                        close(fdset[0]);
  
Index: pack3/patches/patch-platform_linuxbsd_x11_display_server_x11_cpp
===================================================================
RCS file: 
/cvs/ports/games/godot/pack3/patches/patch-platform_linuxbsd_x11_display_server_x11_cpp,v
diff -u -p -r1.2 patch-platform_linuxbsd_x11_display_server_x11_cpp
--- pack3/patches/patch-platform_linuxbsd_x11_display_server_x11_cpp    21 Mar 
2026 20:27:26 -0000      1.2
+++ pack3/patches/patch-platform_linuxbsd_x11_display_server_x11_cpp    25 Jun 
2026 20:46:00 -0000
@@ -5,7 +5,7 @@ we don't support DRI_PRIME as of March 2
 Index: platform/linuxbsd/x11/display_server_x11.cpp
 --- platform/linuxbsd/x11/display_server_x11.cpp.orig
 +++ platform/linuxbsd/x11/display_server_x11.cpp
-@@ -6943,14 +6943,14 @@ DisplayServerX11::DisplayServerX11(const String &p_ren
+@@ -7031,14 +7031,14 @@ DisplayServerX11::DisplayServerX11(const String &p_ren
        int xrandr_minor = 0;
        int event_base, error_base;
        xrandr_ext_ok = XRRQueryExtension(x11_display, &event_base, 
&error_base);
@@ -22,7 +22,7 @@ Index: platform/linuxbsd/x11/display_ser
                }
        }
  
-@@ -7106,11 +7106,13 @@ DisplayServerX11::DisplayServerX11(const String &p_ren
+@@ -7184,11 +7184,13 @@ DisplayServerX11::DisplayServerX11(const String &p_ren
                                use_prime = DetectPrimeX11::detect_prime();
                        }
  

Reply via email to