On Fri, Jul 05, 2024 at 02:15:16AM +0000, Brian Callahan wrote: > Hi ports -- > > Here is an update to the open source Jazz Jackrabbit engine. Works OK on > amd64, anyone else want to try it out?
Runs fine here; I can play it with gamecontroller. 2 comments: portcheck(1) complains: C++ libraries in WANTLIB with default COMPILER (most ports need 'COMPILER=base-clang ports-gcc' or 'COMPILER=base-clang ports-gcc base-gcc') Build log shows gnu++11, so I think COMPILER should be base-clang and ports-gcc. The other comment is more stylistic. I find the README is more specific than necessary with the GOG download filename which is likely going to change in the future. It's also possible to download the linux version from GOG which is what I did and unzip the .sh file. Maybe rather word it something like: "The Windows version from GOG.com can be extracted with innoextract. The Linux version with unzip." ok thfr@ with COMPILER addressed (you can take or leave my suggestions for the README :-) > > ~Brian > Index: Makefile > =================================================================== > RCS file: /cvs/ports/games/openjazz/Makefile,v > retrieving revision 1.4 > diff -u -p -r1.4 Makefile > --- Makefile 24 Apr 2023 11:40:41 -0000 1.4 > +++ Makefile 5 Jul 2024 02:11:31 -0000 > @@ -1,13 +1,9 @@ > COMMENT = open-source version of the classic Jazz Jackrabbit games > -DISTNAME = openjazz-20190120 > -REVISION = 1 > CATEGORIES = games x11 > > -# Upstream does make real tarballs. > -# Will switch to those next release. > GH_ACCOUNT = AlisterT > GH_PROJECT = openjazz > -GH_COMMIT = 9e6ed1f4e1ed8581e49686fd64e69cfcd37bf558 > +GH_TAGNAME = 20231028 > > HOMEPAGE = http://www.alister.eu/jazz/oj/ > MAINTAINER = Brian Callahan <bcal...@openbsd.org> > @@ -15,29 +11,15 @@ MAINTAINER = Brian Callahan <bcallah@ope > # GPLv2+ > PERMIT_PACKAGE = Yes > > -WANTLIB += ${COMPILER_LIBCXX} SDL c m > +WANTLIB += ${COMPILER_LIBCXX} SDL2 c m > > -BUILD_DEPENDS = ${MODGNU_AUTOCONF_DEPENDS} \ > - ${MODGNU_AUTOMAKE_DEPENDS} > +MODULES = devel/cmake > > -LIB_DEPENDS = devel/sdl > +BUILD_DEPENDS = textproc/asciidoctor > + > +LIB_DEPENDS = devel/sdl2 > > RUN_DEPENDS = devel/desktop-file-utils \ > x11/gtk+4,-guic > - > -CONFIGURE_STYLE = gnu > - > -USE_GMAKE = Yes > - > -AUTOCONF_VERSION = 2.69 > -AUTOMAKE_VERSION = 1.16 > - > -do-gen: > - cd ${WRKSRC} && \ > - ${SETENV} AUTOMAKE_VERSION=${AUTOMAKE_VERSION} \ > - AUTOCONF_VERSION=${AUTOCONF_VERSION} autoreconf -fi > - > -pre-configure: > - ${SUBST_CMD} ${WRKSRC}/src/menu/mainmenu.cpp > > .include <bsd.port.mk> > Index: distinfo > =================================================================== > RCS file: /cvs/ports/games/openjazz/distinfo,v > retrieving revision 1.1.1.1 > diff -u -p -r1.1.1.1 distinfo > --- distinfo 8 Aug 2019 23:08:26 -0000 1.1.1.1 > +++ distinfo 5 Jul 2024 02:11:31 -0000 > @@ -1,2 +1,2 @@ > -SHA256 (openjazz-20190120-9e6ed1f4.tar.gz) = > 41LF2/PvugyqdvbxW2fdvBQQSMKN+nH5j8iKda67abo= > -SIZE (openjazz-20190120-9e6ed1f4.tar.gz) = 393226 > +SHA256 (openjazz-20231028.tar.gz) = > xF/0FNyEZWOteuS2yEj5OKtpXrSub5WIVrP6QJ2guKw= > +SIZE (openjazz-20231028.tar.gz) = 417317 > Index: patches/patch-CMakeLists_txt > =================================================================== > RCS file: patches/patch-CMakeLists_txt > diff -N patches/patch-CMakeLists_txt > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-CMakeLists_txt 5 Jul 2024 02:11:31 -0000 > @@ -0,0 +1,42 @@ > +Don't do git. > + > +Index: CMakeLists.txt > +--- CMakeLists.txt.orig > ++++ CMakeLists.txt > +@@ -202,36 +202,6 @@ endif() > + # version > + > + string(TIMESTAMP OJ_DATE "%Y-%m-%d") > +-include(GetGitRevisionDescription) > +-git_get_exact_tag(GIT_TAG) > +-# Do not include a hash, if we are building a release tag > +-if(NOT GIT_TAG) > +- # otherwise concatenate a version with hash > +- git_describe(GIT_DESCRIPTION) > +- if(GIT_DESCRIPTION) > +- string(REPLACE "-" ";" GIT_DESCRIPTION ${GIT_DESCRIPTION}) > +- list(LENGTH GIT_DESCRIPTION GIT_DESCRIPTION_PARTS) > +- if(GIT_DESCRIPTION_PARTS EQUAL 3) > +- list(GET GIT_DESCRIPTION 0 GIT_TAG) > +- list(GET GIT_DESCRIPTION 1 GIT_COMMITS) > +- list(GET GIT_DESCRIPTION 2 GIT_HASH) > +- set(GIT_STATUS "${GIT_COMMITS} commits since tag > \"${GIT_TAG}\", ") > +- string(PREPEND GIT_COMMITS "+") > +- else() > +- # no tags found, only hash > +- list(GET GIT_DESCRIPTION 0 GIT_HASH) > +- endif() > +- # strip the g prefix > +- string(SUBSTRING ${GIT_HASH} 1 -1 GIT_HASH) > +- set(OJ_VERSION_GIT "git${GIT_COMMITS}@${GIT_HASH}") > +- string(APPEND GIT_STATUS "object hash is ${GIT_HASH}") > +- git_local_changes(GIT_DIRTY) > +- if(GIT_DIRTY STREQUAL "DIRTY") > +- string(APPEND OJ_VERSION_GIT "-dirty") > +- string(APPEND GIT_STATUS ", with uncommitted changes") > +- endif() > +- endif() > +-endif() > + set_property(SOURCE src/version.cpp PROPERTY COMPILE_DEFINITIONS > + OJ_VERSION="${PROJECT_VERSION}"; OJ_DATE="${OJ_DATE}"; > + $<$<BOOL:${OJ_VERSION_GIT}>:OJ_VERSION_GIT="${OJ_VERSION_GIT}">) > Index: patches/patch-src_io_network_cpp > =================================================================== > RCS file: /cvs/ports/games/openjazz/patches/patch-src_io_network_cpp,v > retrieving revision 1.2 > diff -u -p -r1.2 patch-src_io_network_cpp > --- patches/patch-src_io_network_cpp 11 Mar 2022 19:04:45 -0000 1.2 > +++ patches/patch-src_io_network_cpp 5 Jul 2024 02:11:31 -0000 > @@ -3,9 +3,9 @@ Missing netinet/in.h and sys/select.h > Index: src/io/network.cpp > --- src/io/network.cpp.orig > +++ src/io/network.cpp > -@@ -41,6 +41,8 @@ > - #define EWOULDBLOCK WSAEWOULDBLOCK > - #define MSG_NOSIGNAL 0 > +@@ -43,6 +43,8 @@ > + #define EWOULDBLOCK WSAEWOULDBLOCK > + #endif > #else > + #include <netinet/in.h> > + #include <sys/select.h> > Index: patches/patch-src_menu_mainmenu_cpp > =================================================================== > RCS file: patches/patch-src_menu_mainmenu_cpp > diff -N patches/patch-src_menu_mainmenu_cpp > --- patches/patch-src_menu_mainmenu_cpp 11 Mar 2022 19:04:45 -0000 > 1.2 > +++ /dev/null 1 Jan 1970 00:00:00 -0000 > @@ -1,14 +0,0 @@ > -Full path to openjazz.000 > - > -Index: src/menu/mainmenu.cpp > ---- src/menu/mainmenu.cpp.orig > -+++ src/menu/mainmenu.cpp > -@@ -50,7 +50,7 @@ MainMenu::MainMenu () { > - > - try { > - > -- file = new File("openjazz.000", false); > -+ file = new File("${TRUEPREFIX}/share/openjazz/openjazz.000", > false); > - > - } catch (int e) { > - > Index: pkg/PLIST > =================================================================== > RCS file: /cvs/ports/games/openjazz/pkg/PLIST,v > retrieving revision 1.3 > diff -u -p -r1.3 PLIST > --- pkg/PLIST 11 Mar 2022 19:04:45 -0000 1.3 > +++ pkg/PLIST 5 Jul 2024 02:11:31 -0000 > @@ -4,7 +4,7 @@ share/applications/OpenJazz.desktop > share/doc/pkg-readmes/${PKGSTEM} > share/icons/hicolor/48x48/apps/OpenJazz.png > share/icons/hicolor/scalable/apps/OpenJazz.svg > -share/openjazz/ > -share/openjazz/openjazz.000 > +share/pixmaps/ > +share/pixmaps/OpenJazz.png > @tag gtk-update-icon-cache %D/share/icons/hicolor > @tag update-desktop-database > Index: pkg/README > =================================================================== > RCS file: /cvs/ports/games/openjazz/pkg/README,v > retrieving revision 1.2 > diff -u -p -r1.2 README > --- pkg/README 11 Mar 2022 19:04:45 -0000 1.2 > +++ pkg/README 5 Jul 2024 02:11:31 -0000 > @@ -8,12 +8,12 @@ OpenJazz requires the original game file > properly. These can come from an original CD or from GOG.com. > > If using the GOG.com version, you must extract the files from > -setup_jazz_jackrabbit_collection_2.0_cs_(28162).exe using the > +setup_jazz_jackrabbit_collection_2.0_csv2_patch_2_(72509).exe using the > innoextract package. > > -The files will be in a directory named app. You must keep this > -directory, though it can be renamed and moved to a location of your > -choosing. You can delete everything else that is extracted from the exe. > +The files will be extracted into the current working directory. The > +directory can be renamed and moved to a location of your choosing. You > +can delete all non-game related files that are extracted from the exe. > > While this package and the game engine are open source, one still needs > to provide the original game assets from Jazz Jackrabbit, which is not