FreeBSD Bugzilla – Attachment 230488 Details for
Bug 260749
games/vvvvvv: update to 2.3.6
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
games/vvvvvv: update to 2.3.6
0001-games-vvvvvv-update-to-2.3.6.patch (text/plain), 8.48 KB, created by
Robert Clausecker
on 2021-12-28 10:56:12 UTC
(
hide
)
Description:
games/vvvvvv: update to 2.3.6
Filename:
MIME Type:
Creator:
Robert Clausecker
Created:
2021-12-28 10:56:12 UTC
Size:
8.48 KB
patch
obsolete
>From 74a2b9be56a97e1ad6458e73c5ebebda1cfb82d9 Mon Sep 17 00:00:00 2001 >From: Robert Clausecker <fuz@fuz.su> >Date: Tue, 28 Dec 2021 11:15:39 +0100 >Subject: [PATCH] games/vvvvvv: update to 2.3.6 > >The game now comes in two flavours: > >The commercial flavour is the regular game and requires the user to >supply his or her own copy of the data.zip file. > >The makeandplay flavour is a free version of the game which doesn't >have come with the original levels, but ships player levels and >allows you to build your own. >--- > games/vvvvvv/Makefile | 52 ++++++++++++++----- > games/vvvvvv/distinfo | 8 +-- > games/vvvvvv/files/patch-CMakeLists.txt | 11 ++++ > .../files/patch-src_FileSystemUtils.cpp | 40 +++++++++----- > games/vvvvvv/files/patch-src_main.cpp | 11 ++++ > games/vvvvvv/files/pkg-message.in | 12 +++++ > games/vvvvvv/pkg-descr | 9 +++- > games/vvvvvv/pkg-message | 9 ---- > 8 files changed, 112 insertions(+), 40 deletions(-) > create mode 100644 games/vvvvvv/files/patch-CMakeLists.txt > create mode 100644 games/vvvvvv/files/patch-src_main.cpp > create mode 100644 games/vvvvvv/files/pkg-message.in > delete mode 100644 games/vvvvvv/pkg-message > >diff --git a/games/vvvvvv/Makefile b/games/vvvvvv/Makefile >index 3b6730410585..d9fb4e25c4b3 100644 >--- a/games/vvvvvv/Makefile >+++ b/games/vvvvvv/Makefile >@@ -1,33 +1,59 @@ > # Created by: Emmanuel Vadot <manu@FreeBSD.org> > > PORTNAME= VVVVVV >-PORTVERSION= v2.2 >+DISTVERSION= 2.3.6 > CATEGORIES= games >+.if ${FLAVOR:U} == makeandplay >+# The data file may only be distributed if the MAKEANDPLAY define is set. >+# See https://github.com/TerryCavanagh/VVVVVV/blob/master/License%20exceptions.md >+MASTER_SITES= https://thelettervsixtim.es/makeandplay/data.zip?dummy=/:datafile >+DISTFILES= VVVVVV-data-${DISTVERSION}.zip:datafile >+EXTRACT_ONLY= ${GH_ACCOUNT}-${GH_PROJECT}-${DISTVERSION}_GH0.tar.gz >+.endif > > MAINTAINER= manu@FreeBSD.org > COMMENT= 2D Platformer game > >-LICENSE= UNKNOWN >-LICENSE_NAME= unknown >-LICENSE_FILE= ${WRKSRC}/../LICENSE.md >-LICENSE_PERMS= dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept >+LICENSE= VVVVVV BSD3CLAUSE >+LICENSE_COMB= multi >+LICENSE_NAME_VVVVVV= VVVVVV Source Code License v1.0 >+LICENSE_FILE_VVVVVV= ${WRKSRC}/../LICENSE.md >+LICENSE_FILE_BSD3CLAUSE= ${WRKSRC}/../third_party/lodepng/LICENSE.txt >+LICENSE_PERMS_VVVVVV= dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept > >-ONLY_FOR_ARCHS= amd64 powerpc64 powerpc64le >+.if defined(NO_LICENSES_INSTALL) >+IGNORE= license requires that the license be shipped >+.endif >+ >+BUILD_DEPENDS= utf8cpp>0:devel/utf8cpp >+LIB_DEPENDS= libtinyxml2.so:textproc/tinyxml2 \ >+ libphysfs.so:devel/physfs >+ >+FLAVORS= commercial makeandplay >+makeandplay_PKGNAMESUFFIX= -makeandplay > > USES= sdl cmake localbase:ldflags > USE_GITHUB= yes > GH_ACCOUNT= TerryCavanagh > GH_PROJECT= ${PORTNAME} >-GH_TAGNAME= cb3640e5 >- >-WRKSRC_SUBDIR= desktop_version >- > USE_SDL= sdl2 mixer2 > >-PLIST_FILES= bin/vvvvvv >+CFLAGS+= -DASSETSPATH='\"${DATADIR}/data.zip\"' >+CMAKE_OFF= BUNDLE_DEPENDENCIES >+.if ${FLAVOR:U} == makeandplay >+CMAKE_ON= MAKEANDPLAY >+.endif >+ >+WRKSRC_SUBDIR= desktop_version >+PLIST_FILES= bin/VVVVVV${PKGNAMESUFFIX} \ >+ ${"${FLAVOR}"=="makeandplay:?${DATADIR_REL}/data.zip:} >+SUB_FILES= pkg-message > > do-install: >- ${INSTALL_PROGRAM} ${WRKDIR}/.build/vvvvvv.x86_64 ${STAGEDIR}${PREFIX}/bin/vvvvvv >- @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/vvvvvv >+ ${INSTALL_PROGRAM} ${WRKDIR}/.build/VVVVVV ${STAGEDIR}${PREFIX}/bin/VVVVVV${PKGNAMESUFFIX} >+.if ${FLAVOR:U} == makeandplay >+ ${MKDIR} ${STAGEDIR}${DATADIR} >+ ${INSTALL_DATA} ${DISTDIR}/VVVVVV-data-${DISTVERSION}.zip ${STAGEDIR}${DATADIR}/data.zip >+.endif > > .include <bsd.port.mk> >diff --git a/games/vvvvvv/distinfo b/games/vvvvvv/distinfo >index 2d11675cb41a..cbd7b9ea84fb 100644 >--- a/games/vvvvvv/distinfo >+++ b/games/vvvvvv/distinfo >@@ -1,3 +1,5 @@ >-TIMESTAMP = 1578694479 >-SHA256 (TerryCavanagh-VVVVVV-v2.2-cb3640e5_GH0.tar.gz) = d936ad517ef9b8236148cd8161201d23f55b98dc6a03f3b2763612abb11a1615 >-SIZE (TerryCavanagh-VVVVVV-v2.2-cb3640e5_GH0.tar.gz) = 827825 >+TIMESTAMP = 1640682897 >+SHA256 (VVVVVV-data-2.3.6.zip) = 6fae3cdec06062d05827d4181c438153f3ea3900437a44db73bcd29799fe57e0 >+SIZE (VVVVVV-data-2.3.6.zip) = 61404595 >+SHA256 (TerryCavanagh-VVVVVV-2.3.6_GH0.tar.gz) = a3366aab9e8462d330044ab1ec63927e9f5c3801c0ed96b24f08c553dcb911e9 >+SIZE (TerryCavanagh-VVVVVV-2.3.6_GH0.tar.gz) = 1725842 >diff --git a/games/vvvvvv/files/patch-CMakeLists.txt b/games/vvvvvv/files/patch-CMakeLists.txt >new file mode 100644 >index 000000000000..0927b9a29e55 >--- /dev/null >+++ b/games/vvvvvv/files/patch-CMakeLists.txt >@@ -0,0 +1,11 @@ >+--- CMakeLists.txt.orig 2021-12-22 13:20:25 UTC >++++ CMakeLists.txt >+@@ -181,7 +181,7 @@ if(APPLE) >+ endif() >+ set(PNG_SRC ../third_party/lodepng/lodepng.c) >+ >+-if(NOT OFFICIAL_BUILD) >++if(FALSE) >+ # Add interim commit hash and its date to the build >+ >+ # find_package sets GIT_FOUND and GIT_EXECUTABLE >diff --git a/games/vvvvvv/files/patch-src_FileSystemUtils.cpp b/games/vvvvvv/files/patch-src_FileSystemUtils.cpp >index 5bb4437be5bc..a93f7e9e794d 100644 >--- a/games/vvvvvv/files/patch-src_FileSystemUtils.cpp >+++ b/games/vvvvvv/files/patch-src_FileSystemUtils.cpp >@@ -1,15 +1,29 @@ >---- src/FileSystemUtils.cpp.orig 2020-01-10 22:11:00 UTC >+--- src/FileSystemUtils.cpp.orig 2021-12-22 13:20:25 UTC > +++ src/FileSystemUtils.cpp >-@@ -73,6 +73,12 @@ int FILESYSTEM_init(char *argvZero) >- #ifdef _WIN32 >- strcpy(output, PHYSFS_getBaseDir()); >- strcat(output, "data.zip"); >-+#elif defined(__FreeBSD__) >-+ PLATFORM_getOSDirectory(output); >-+ if (strlcat(output, "data.zip", sizeof(output)) >= sizeof(output)) { >-+ puts("Cannot find location for data.zip\n"); >-+ return 0; >+@@ -1,3 +1,4 @@ >++#include <errno.h> >+ #include <iostream> >+ #include <iterator> >+ #include <physfs.h> >+@@ -154,6 +155,12 @@ int FILESYSTEM_init(char *argvZero, char* baseDir, cha >+ } >+ >+ /* Mount the stock content last */ >++ if (assetsPath && access(assetsPath, R_OK) == -1) { >++ printf("%s: %s\n", assetsPath, strerror(errno)); >++ printf("Trying %sdata.zip instead.\n", output); >++ assetsPath = NULL; > + } >- #else >- strcpy(output, "data.zip"); >- #endif >++ >+ if (assetsPath) >+ { >+ SDL_strlcpy(output, assetsPath, sizeof(output)); >+@@ -161,7 +168,7 @@ int FILESYSTEM_init(char *argvZero, char* baseDir, cha >+ else >+ { >+ SDL_snprintf(output, sizeof(output), "%s%s", >+- basePath, >++ output, >+ "data.zip" >+ ); >+ } >diff --git a/games/vvvvvv/files/patch-src_main.cpp b/games/vvvvvv/files/patch-src_main.cpp >new file mode 100644 >index 000000000000..437afa0e181f >--- /dev/null >+++ b/games/vvvvvv/files/patch-src_main.cpp >@@ -0,0 +1,11 @@ >+--- src/main.cpp.orig 2021-12-28 09:43:31 UTC >++++ src/main.cpp >+@@ -342,7 +342,7 @@ static void cleanup(void); >+ int main(int argc, char *argv[]) >+ { >+ char* baseDir = NULL; >+- char* assetsPath = NULL; >++ char* assetsPath = (char*)ASSETSPATH; >+ >+ for (int i = 1; i < argc; ++i) >+ { >diff --git a/games/vvvvvv/files/pkg-message.in b/games/vvvvvv/files/pkg-message.in >new file mode 100644 >index 000000000000..27aa099f8126 >--- /dev/null >+++ b/games/vvvvvv/files/pkg-message.in >@@ -0,0 +1,12 @@ >+[ >+{ type: install >+ message: <<EOM >+VVVVVV is copyright of Terry Cavanagh (c) 2010--2020. >+This copy of VVVVVV may have been altered for compatibility with FreeBSD. >+ >+VVVVVV may require the data file from an official copy. >+Take data.zip and put it in %%DATADIR%%/data.zip >+or ~/.local/share/VVVVVV/data.zip. >+EOM >+} >+] >diff --git a/games/vvvvvv/pkg-descr b/games/vvvvvv/pkg-descr >index 91d1c8d2d80d..d2b3ac580831 100644 >--- a/games/vvvvvv/pkg-descr >+++ b/games/vvvvvv/pkg-descr >@@ -1,5 +1,10 @@ > VVVVVV is a 2D platform game. > Unlike other platform game you cannot jump but only invert the gravity. >-Graphism and music are heavily inspired by the Commodore C64 era. >+Graphics and music are heavily inspired by the Commodore C64 era. > >-WWW: https://github.com/TerryCavanagh/VVVVVV >+The Make and Play Edition (games/vvvvvv@makeandplay) is a completely >+free, official version of VVVVVV that includes player levels, and the >+tools to create levels of your own! It does not include the original >+levels from the game. >+ >+WWW: https://thelettervsixtim.es/ >diff --git a/games/vvvvvv/pkg-message b/games/vvvvvv/pkg-message >deleted file mode 100644 >index 3553d3ffdeb0..000000000000 >--- a/games/vvvvvv/pkg-message >+++ /dev/null >@@ -1,9 +0,0 @@ >-[ >-{ type: install >- message: <<EOM >-VVVVVV requires the data files from an official copy. >- >-Take the data.zip file and put it in ~/.local/share/VVVVVV >-EOM >-} >-] >-- >2.32.0 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
fuz
:
maintainer-approval?
(
manu
)
Actions:
View
|
Diff
Attachments on
bug 260749
: 230488