diff options
author | nia <nia@pkgsrc.org> | 2020-01-10 18:27:18 +0000 |
---|---|---|
committer | nia <nia@pkgsrc.org> | 2020-01-10 18:27:18 +0000 |
commit | b0b7a9e3423d71fbd37d252aba14c47dfc4e8fa9 (patch) | |
tree | 70182e4370645ab6f20536646dd6297c9fa52565 /games/vvvvvv | |
parent | 9a367b5ac8b54b26162650193f8b71449ff97d8a (diff) | |
download | pkgsrc-b0b7a9e3423d71fbd37d252aba14c47dfc4e8fa9.tar.gz |
games: Add vvvvvv
VVVVVV is a platform game all about exploring one simple mechanical idea -
what if you reversed gravity instead of jumping?
The game is designed not to artificially gate your progress. In VVVVVV there
are no locks, no power-ups, no switches, nothing to stop you progressing
except the challenges themselves.
Diffstat (limited to 'games/vvvvvv')
-rw-r--r-- | games/vvvvvv/DESCR | 6 | ||||
-rw-r--r-- | games/vvvvvv/MESSAGE | 6 | ||||
-rw-r--r-- | games/vvvvvv/Makefile | 27 | ||||
-rw-r--r-- | games/vvvvvv/PLIST | 2 | ||||
-rw-r--r-- | games/vvvvvv/distinfo | 9 | ||||
-rw-r--r-- | games/vvvvvv/patches/patch-physfs_physfs__platform__unix.c | 17 | ||||
-rw-r--r-- | games/vvvvvv/patches/patch-src_FileSystemUtils.cpp | 68 | ||||
-rw-r--r-- | games/vvvvvv/patches/patch-src_SteamNetwork.c | 87 |
8 files changed, 222 insertions, 0 deletions
diff --git a/games/vvvvvv/DESCR b/games/vvvvvv/DESCR new file mode 100644 index 00000000000..b2be21c7a5b --- /dev/null +++ b/games/vvvvvv/DESCR @@ -0,0 +1,6 @@ +VVVVVV is a platform game all about exploring one simple mechanical idea - +what if you reversed gravity instead of jumping? + +The game is designed not to artificially gate your progress. In VVVVVV there +are no locks, no power-ups, no switches, nothing to stop you progressing +except the challenges themselves. diff --git a/games/vvvvvv/MESSAGE b/games/vvvvvv/MESSAGE new file mode 100644 index 00000000000..a5490130df9 --- /dev/null +++ b/games/vvvvvv/MESSAGE @@ -0,0 +1,6 @@ +=========================================================================== +$NetBSD: MESSAGE,v 1.1 2020/01/10 18:27:18 nia Exp $ + +Copy all data files to ~/.local/share/VVVVVV before running the game. + +=========================================================================== diff --git a/games/vvvvvv/Makefile b/games/vvvvvv/Makefile new file mode 100644 index 00000000000..863193ecf19 --- /dev/null +++ b/games/vvvvvv/Makefile @@ -0,0 +1,27 @@ +# $NetBSD: Makefile,v 1.1 2020/01/10 18:27:18 nia Exp $ + +DISTNAME= VVVVVVV-0.0.0.20200110 +PKGNAME= ${DISTNAME:tl} +CATEGORIES= games +MASTER_SITES= ${MASTER_SITE_GITHUB:=TerryCavanagh/} +GITHUB_PROJECT= VVVVVV +GITHUB_TAG= 9e5e9f3e670a0cc48475a20486b0630e83ae14b4 + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= https://github.com/TerryCavanagh/VVVVVV +COMMENT= 2D puzzle platform video game with gravity reversal +LICENSE= vvvvvv-license + +WRKSRC= ${WRKDIR}/VVVVVV-${GITHUB_TAG}/desktop_version +USE_CMAKE= yes +USE_TOOLS+= pkg-config +USE_LANGUAGES= c c++ + +INSTALLATION_DIRS+= bin + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/vvvvvv* ${DESTDIR}${PREFIX}/bin/vvvvvv + +.include "../../audio/SDL2_mixer/buildlink3.mk" +.include "../../devel/SDL2/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/games/vvvvvv/PLIST b/games/vvvvvv/PLIST new file mode 100644 index 00000000000..f29981aff32 --- /dev/null +++ b/games/vvvvvv/PLIST @@ -0,0 +1,2 @@ +@comment $NetBSD: PLIST,v 1.1 2020/01/10 18:27:18 nia Exp $ +bin/vvvvvv diff --git a/games/vvvvvv/distinfo b/games/vvvvvv/distinfo new file mode 100644 index 00000000000..ebff331426e --- /dev/null +++ b/games/vvvvvv/distinfo @@ -0,0 +1,9 @@ +$NetBSD: distinfo,v 1.1 2020/01/10 18:27:18 nia Exp $ + +SHA1 (VVVVVVV-0.0.0.20200110-9e5e9f3e670a0cc48475a20486b0630e83ae14b4.tar.gz) = 7efdc53b9c86bcdbcbbdaced32390cd64e9ee4a0 +RMD160 (VVVVVVV-0.0.0.20200110-9e5e9f3e670a0cc48475a20486b0630e83ae14b4.tar.gz) = b12109fa84a6a87573210a2ffc99fb54cf62a605 +SHA512 (VVVVVVV-0.0.0.20200110-9e5e9f3e670a0cc48475a20486b0630e83ae14b4.tar.gz) = 5e1ab96261afa091496bb79b6c2a5f5c5f304dbf03214cc87bfb01e722fe26fde14e9a659fff2ac9411be2247fd53bf0d6e400ea2ac2a78637bda0ddd8f87078 +Size (VVVVVVV-0.0.0.20200110-9e5e9f3e670a0cc48475a20486b0630e83ae14b4.tar.gz) = 828498 bytes +SHA1 (patch-physfs_physfs__platform__unix.c) = 6c84e653c3058d614d08783925b35892e3f0950c +SHA1 (patch-src_FileSystemUtils.cpp) = 6ad10e2827e0453abdb50036fc156f7ec9504c28 +SHA1 (patch-src_SteamNetwork.c) = 8e86050961b0a623e1794eeef03ce312c8fcefe9 diff --git a/games/vvvvvv/patches/patch-physfs_physfs__platform__unix.c b/games/vvvvvv/patches/patch-physfs_physfs__platform__unix.c new file mode 100644 index 00000000000..5acba0f27fd --- /dev/null +++ b/games/vvvvvv/patches/patch-physfs_physfs__platform__unix.c @@ -0,0 +1,17 @@ +$NetBSD: patch-physfs_physfs__platform__unix.c,v 1.1 2020/01/10 18:27:18 nia Exp $ + +Support NetBSD. + +--- physfs/physfs_platform_unix.c.orig 2020-01-10 16:45:29.000000000 +0000 ++++ physfs/physfs_platform_unix.c +@@ -57,6 +57,10 @@ + #include <sys/sysctl.h> + #endif + ++#ifdef __NetBSD__ ++#include <sys/statvfs.h> ++#define statfs statvfs ++#endif + + #include "physfs_internal.h" + diff --git a/games/vvvvvv/patches/patch-src_FileSystemUtils.cpp b/games/vvvvvv/patches/patch-src_FileSystemUtils.cpp new file mode 100644 index 00000000000..168d99f050e --- /dev/null +++ b/games/vvvvvv/patches/patch-src_FileSystemUtils.cpp @@ -0,0 +1,68 @@ +$NetBSD: patch-src_FileSystemUtils.cpp,v 1.1 2020/01/10 18:27:18 nia Exp $ + +Support non-Linux + +--- src/FileSystemUtils.cpp.orig 2020-01-10 16:45:29.000000000 +0000 ++++ src/FileSystemUtils.cpp +@@ -14,7 +14,7 @@ + #include <shlobj.h> + #define mkdir(a, b) CreateDirectory(a, NULL) + #define VNEEDS_MIGRATION (mkdirResult != 0) +-#elif defined(__linux__) || defined(__APPLE__) ++#elif defined(__unix__) || defined(__APPLE__) + #include <sys/stat.h> + #include <limits.h> + #define VNEEDS_MIGRATION (mkdirResult == 0) +@@ -141,7 +141,13 @@ std::vector<std::string> FILESYSTEM_getL + + void PLATFORM_getOSDirectory(char* output) + { +-#if defined(__linux__) ++#if defined(__APPLE__) ++ strcpy(output, PHYSFS_getUserDir()); ++ strcat(output, "Library/Application Support/VVVVVV/"); ++#elif defined(_WIN32) ++ SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, output); ++ strcat(output, "\\VVVVVV\\"); ++#else + const char *homeDir = getenv("XDG_DATA_HOME"); + if (homeDir == NULL) + { +@@ -153,14 +159,6 @@ void PLATFORM_getOSDirectory(char* outpu + strcpy(output, homeDir); + strcat(output, "/VVVVVV/"); + } +-#elif defined(__APPLE__) +- strcpy(output, PHYSFS_getUserDir()); +- strcat(output, "Library/Application Support/VVVVVV/"); +-#elif defined(_WIN32) +- SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, output); +- strcat(output, "\\VVVVVV\\"); +-#else +-#error See PLATFORM_getOSDirectory + #endif + } + +@@ -169,7 +167,7 @@ void PLATFORM_migrateSaveData(char* outp + char oldLocation[MAX_PATH]; + char newLocation[MAX_PATH]; + char oldDirectory[MAX_PATH]; +-#if defined(__linux__) || defined(__APPLE__) ++#if defined(__unix__) || defined(__APPLE__) + DIR *dir = NULL; + struct dirent *de = NULL; + DIR *subDir = NULL; +@@ -182,10 +180,10 @@ void PLATFORM_migrateSaveData(char* outp + return; + } + strcpy(oldDirectory, homeDir); +-#if defined(__linux__) +- strcat(oldDirectory, "/.vvvvvv/"); +-#elif defined(__APPLE__) ++#if defined(__APPLE__) + strcat(oldDirectory, "/Documents/VVVVVV/"); ++#else ++ strcat(oldDirectory, "/.vvvvvv/"); + #endif + dir = opendir(oldDirectory); + if (!dir) diff --git a/games/vvvvvv/patches/patch-src_SteamNetwork.c b/games/vvvvvv/patches/patch-src_SteamNetwork.c new file mode 100644 index 00000000000..046fd3812a8 --- /dev/null +++ b/games/vvvvvv/patches/patch-src_SteamNetwork.c @@ -0,0 +1,87 @@ +$NetBSD: patch-src_SteamNetwork.c,v 1.1 2020/01/10 18:27:18 nia Exp $ + +Don't depend on proprietary steam libs + +--- src/SteamNetwork.c.orig 2020-01-10 16:45:29.000000000 +0000 ++++ src/SteamNetwork.c +@@ -15,10 +15,8 @@ + #define NETWORK_LIBRARY "steam_api.dll" + #elif defined(__APPLE__) + #define NETWORK_LIBRARY "libsteam_api.dylib" +-#elif defined(__linux__) +-#define NETWORK_LIBRARY "libsteam_api.so" + #else +-#error NETWORK_LIBRARY: Unrecognized platform! ++#define NETWORK_LIBRARY "libsteam_api.so" + #endif + + /* Function Pointer Types */ +@@ -97,68 +95,6 @@ static void ClearPointers() + + int NETWORK_init() + { +- intptr_t steamClient; +- int32_t steamUser, steamPipe; +- +- libHandle = SDL_LoadObject(NETWORK_LIBRARY); +- if (!libHandle) +- { +- printf("%s not found!\n", NETWORK_LIBRARY); +- return 0; +- } +- +- #define LOAD_FUNC(name) \ +- name = (name##Func) SDL_LoadFunction(libHandle, #name); \ +- if (!name) \ +- { \ +- printf("%s symbol %s not found!\n", NETWORK_LIBRARY, #name); \ +- ClearPointers(); \ +- return 0; \ +- } +- LOAD_FUNC(SteamAPI_Init) +- LOAD_FUNC(SteamAPI_Shutdown) +- LOAD_FUNC(SteamAPI_RunCallbacks) +- LOAD_FUNC(SteamInternal_CreateInterface) +- LOAD_FUNC(SteamAPI_GetHSteamUser) +- LOAD_FUNC(SteamAPI_GetHSteamPipe) +- LOAD_FUNC(SteamAPI_ISteamClient_GetISteamUserStats) +- LOAD_FUNC(SteamAPI_ISteamUserStats_RequestCurrentStats) +- LOAD_FUNC(SteamAPI_ISteamUserStats_StoreStats) +- LOAD_FUNC(SteamAPI_ISteamUserStats_GetStat) +- LOAD_FUNC(SteamAPI_ISteamUserStats_SetStat) +- LOAD_FUNC(SteamAPI_ISteamUserStats_SetAchievement) +- #undef LOAD_FUNC +- +- if (!SteamAPI_Init()) +- { +- printf("Steamworks not initialized!\n"); +- ClearPointers(); +- return 0; +- } +- steamClient = SteamInternal_CreateInterface(VVVVVV_STEAMCLIENT); +- steamUser = SteamAPI_GetHSteamUser(); +- steamPipe = SteamAPI_GetHSteamPipe(); +- if (!steamClient || !steamUser || !steamPipe) +- { +- SteamAPI_Shutdown(); +- printf(VVVVVV_STEAMCLIENT " not created!\n"); +- ClearPointers(); +- return 0; +- } +- steamUserStats = SteamAPI_ISteamClient_GetISteamUserStats( +- steamClient, +- steamUser, +- steamPipe, +- VVVVVV_STEAMUSERSTATS +- ); +- if (!steamUserStats) +- { +- SteamAPI_Shutdown(); +- printf(VVVVVV_STEAMUSERSTATS " not created!\n"); +- ClearPointers(); +- return 0; +- } +- SteamAPI_ISteamUserStats_RequestCurrentStats(steamUserStats); + return 1; + } + |