Now against HEAD... sorry. On Mon, Oct 18, 2021 at 01:19:52PM -0600, Thomas Frohwein wrote: > Hi, > > I've been experimenting with running commercial games with our Godot > port and a substantial number refuse to run because they can't find > Steam in Godot's namespace. Those games seem to be built with a module > "GodotSteam" added during compile time. > > This diff below adds said module to the port. It allows running some > more (indie) games on OpenBSD. I know of "Nightfall Hacker", "SJ-19 > Learns to Love!", and "Cruelty Squad" that I've been able to run with > this change. There are probably more... > > This diff just adds it to the existing port, but as it leads to a > deviation from "vanilla" Godot, it might be preferrable to make this a > flavor, maybe godot-godotsteam? Or 2 separate ports that are based on > the same Makefile.inc? Of course, maintenance would likely be easier > without adding such complexity... > > You can test that the namespace now exists in Godot by opening a > project in the editor and adding a script, then starting to enter > something from the Steam namespace like 'Steam.getAchievement' into the > code and seeing this show up in the auto completion. All this works > through the Goldberg emulator library, so some Steam functionality may > be stubbed or not return what you expect if used for actual development. > > comments or oks? > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/games/godot/Makefile,v > retrieving revision 1.25 > diff -u -p -r1.25 Makefile > --- Makefile 31 Aug 2021 11:59:56 -0000 1.25 > +++ Makefile 18 Oct 2021 18:53:50 -0000 > @@ -5,9 +5,11 @@ BROKEN-powerpc64 = Unknown ISA > > COMMENT = 2D and 3D game engine > > -V = 3.3.3 > +V = 3.3.4 [...]
Index: Makefile =================================================================== RCS file: /cvs/ports/games/godot/Makefile,v retrieving revision 1.26 diff -u -p -r1.26 Makefile --- Makefile 5 Oct 2021 07:00:08 -0000 1.26 +++ Makefile 18 Oct 2021 19:32:54 -0000 @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.26 2021/10/05 07:00:08 thfr Exp $ +# $OpenBSD: Makefile,v 1.25 2021/08/31 11:59:56 kirby Exp $ BROKEN-powerpc = fails at runtime, the UI is totally blank BROKEN-powerpc64 = Unknown ISA @@ -6,8 +6,10 @@ BROKEN-powerpc64 = Unknown ISA COMMENT = 2D and 3D game engine V = 3.3.4 +GODOTSTEAM_V = g333-s151-g397 DISTNAME = godot-${V}-stable PKGNAME = godot-${V} +REVISION = 0 CATEGORIES = games HOMEPAGE = https://godotengine.org/ MAINTAINER = Omar Polo <o...@omarpolo.com> @@ -18,14 +20,18 @@ PERMIT_PACKAGE = Yes WANTLIB += ${COMPILER_LIBCXX} WANTLIB += GL X11 Xau Xcursor Xdmcp Xext Xfixes Xi Xinerama Xrandr WANTLIB += Xrender c enet execinfo freetype intl m mbedtls mbedcrypto -WANTLIB += mbedx509 mpcdec ogg opus opusfile png sndio theora theoradec -WANTLIB += vorbis vorbisfile webp xcb z pcre2-32 vpx zstd +WANTLIB += mbedx509 mpcdec ogg opus opusfile png sndio steam_api theora +WANTLIB += theoradec vorbis vorbisfile webp xcb z pcre2-32 vpx zstd # C++14 COMPILER = base-clang ports-gcc MASTER_SITES = https://downloads.tuxfamily.org/godotengine/${V}/ +MASTER_SITES0 = https://github.com/Gramps/GodotSteam/archive/refs/tags/ +DISTFILES = ${DISTNAME}${EXTRACT_SUFX} \ + ${GODOTSTEAM_V}.tar.gz:0 EXTRACT_SUFX = .tar.xz +DIST_SUBDIR = ${PKGNAME} MODULES = devel/scons # Can't disable builtin_bullet until devel/bullet has been updated to 2.88 @@ -33,7 +39,7 @@ MODULES = devel/scons # sharedlib_ext in modules/mono/config.py to '.so.1.0' MODSCONS_FLAGS = CC="${CC}" \ CXX="${CXX}" \ - CFLAGS="${CFLAGS}" \ + CFLAGS="${CFLAGS} -I${LOCALBASE}/include/goldberg_emulator/sdk_includes" \ CXXFLAGS="${CXXFLAGS} -Wno-deprecated-register" \ LINKFLAGS="${LDFLAGS} -lintl -lmpcdec" \ builtin_enet=no \ @@ -51,6 +57,7 @@ MODSCONS_FLAGS = CC="${CC}" \ builtin_pcre2=no \ builtin_zlib=no \ builtin_zstd=no \ + custom_modules=${WRKDIR}/GodotSteam-${GODOTSTEAM_V}/godotsteam \ progress=no \ pulseaudio=no \ target=release_debug \ @@ -63,6 +70,7 @@ LIB_DEPENDS = archivers/zstd \ audio/opusfile \ devel/gettext,-runtime \ devel/pcre2 \ + games/goldberg_emulator \ graphics/libwebp \ graphics/png \ multimedia/libtheora \ @@ -84,6 +92,12 @@ post-extract: pre-configure: ${SUBST_CMD} ${WRKSRC}/drivers/unix/os_unix.cpp + sed -E -i 's/ISteamHTMLSurface:://g' \ + ${WRKDIR}/GodotSteam-${GODOTSTEAM_V}/godotsteam/godotsteam.cpp + sed -E -i 's/steam\/steam_api\.h/steam_api.h/g' \ + ${WRKDIR}/GodotSteam-${GODOTSTEAM_V}/godotsteam/godotsteam.{h,cpp} + sed -E -i 's,CPPPATH=.*,CPPPATH=["${LOCALBASE}/include/goldberg_emulator/sdk_includes"]),g' \ + ${WRKDIR}/GodotSteam-${GODOTSTEAM_V}/godotsteam/SCsub do-install: ${INSTALL_PROGRAM} ${WRKBUILD}/bin/godot* \ Index: distinfo =================================================================== RCS file: /cvs/ports/games/godot/distinfo,v retrieving revision 1.9 diff -u -p -r1.9 distinfo --- distinfo 5 Oct 2021 07:00:08 -0000 1.9 +++ distinfo 18 Oct 2021 19:32:54 -0000 @@ -1,2 +1,4 @@ -SHA256 (godot-3.3.4-stable.tar.xz) = n1On1tY/Tp15PEGtG++JUYYZ8+Hw3dCJplIfLV7cWFk= -SIZE (godot-3.3.4-stable.tar.xz) = 20682120 +SHA256 (godot-3.3.4/g333-s151-g397.tar.gz) = Wqzzcwh+u0r5PZZd5WgJCZ3dFhdJs8ZCbNNS5Ln5V9w= +SHA256 (godot-3.3.4/godot-3.3.4-stable.tar.xz) = n1On1tY/Tp15PEGtG++JUYYZ8+Hw3dCJplIfLV7cWFk= +SIZE (godot-3.3.4/g333-s151-g397.tar.gz) = 149576 +SIZE (godot-3.3.4/godot-3.3.4-stable.tar.xz) = 20682120