Ports: Cave Story (Aeon Genesis Translation)

This commit is contained in:
gloof11 2023-06-27 22:22:01 +09:00 committed by Jelle Raaijmakers
parent 4805447c22
commit e4b6c402cb
6 changed files with 122 additions and 0 deletions

View file

@ -31,6 +31,7 @@ This list is also available at [ports.serenityos.net](https://ports.serenityos.n
| [`c-ray`](c-ray/) | C-Ray | 8f30eb9 | https://github.com/vkoskiv/c-ray |
| [`ca-certificates`](ca-certificates/) | Mozilla CA certificate store | 2022-04-26 | https://curl.se/docs/caextract.html |
| [`carl`](carl/) | Crypto Ancienne Resource Loader | 1.5 | https://github.com/classilla/cryanc |
| [`cavestory`](cavestory/) | Cave Story | 2.6.5-1 | https://github.com/nxengine/nxengine-evo |
| [`cbonsai`](cbonsai/) | cbonsai | 1.3.1 | https://gitlab.com/jallbrit/cbonsai |
| [`ccache`](ccache/) | ccache | 4.6.3 | https://ccache.dev/ |
| [`cfunge`](cfunge/) | cfunge | 2bc4fb2 | https://github.com/VorpalBlade/cfunge/ |

38
Ports/cavestory/package.sh Executable file
View file

@ -0,0 +1,38 @@
#!/usr/bin/env -S bash ../.port_include.sh
port='cavestory'
version='2.6.5-1'
files=('https://github.com/gloof11/nxengine-evo/archive/0f45555c64bae21116bac30cd46002e70b1b6495.zip nxengine-evo-0f45555c64bae21116bac30cd46002e70b1b6495.zip c93cb2c1e16f49cd87bcc886cf6adf289355fabe7b5a30d506ec066cc1d86d1d')
auth_type='sha256'
depends=(
'libjpeg'
'libpng'
'SDL2'
'SDL2_image'
'SDL2_mixer'
'SDL2_ttf'
)
workdir="nxengine-evo-0f45555c64bae21116bac30cd46002e70b1b6495"
launcher_name='Cave Story'
launcher_category='Games'
launcher_command='/usr/local/bin/nxengine-evo'
icon_file='platform/switch/icon.jpg'
useconfigure='true'
configopts=(
'-DCMAKE_BUILD_TYPE=Release ..'
"-DCMAKE_TOOLCHAIN_FILE=${SERENITY_BUILD_DIR}/CMakeToolchain.txt"
"-DSDL2_INCLUDE_DIR=${SERENITY_INSTALL_ROOT}/usr/local/include/SDL2"
"-DSDL2_IMAGE_INCLUDE_DIR=${SERENITY_INSTALL_ROOT}/usr/local/include/SDL2"
"-DSDL2_MIXER_INCLUDE_DIR=${SERENITY_INSTALL_ROOT}/usr/local/include/SDL2"
)
configure() {
run cmake -B build "${configopts[@]}"
}
build () {
run make -C build "${makeopts[@]}"
}
install () {
run make -C build install
}

View file

@ -0,0 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: gloof11 <gloof11@proton.me>
Date: Thu, 29 Jun 2023 22:23:53 +0900
Subject: [PATCH] Added serenity as a proper #define so that "fstat" is used
---
deps/spdlog/details/os.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deps/spdlog/details/os.h b/deps/spdlog/details/os.h
index 57df5a85a0a5b601b17121f1f1f17c536496b132..11b8ee434687f8b1c318c4c85b393bb438ea53b5 100644
--- a/deps/spdlog/details/os.h
+++ b/deps/spdlog/details/os.h
@@ -227,7 +227,7 @@ inline size_t filesize(FILE *f)
#else // unix
int fd = fileno(f);
// 64 bits(but not in osx or cygwin, where fstat64 is deprecated)
-#if !defined(__FreeBSD__) && !defined(__APPLE__) && (defined(__x86_64__) || defined(__ppc64__)) && !defined(__CYGWIN__) && !defined(__HAIKU__)
+#if !defined(__FreeBSD__) && !defined(__APPLE__) && (defined(__x86_64__) || defined(__ppc64__)) && !defined(__CYGWIN__) && !defined(__HAIKU__) && !defined(__serenity__)
struct stat64 st;
if (fstat64(fd, &st) == 0)
{

View file

@ -0,0 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: gloof11 <gloof11@proton.me>
Date: Thu, 29 Jun 2023 22:25:40 +0900
Subject: [PATCH] Added serenity as a proper define for time generation
---
deps/spdlog/details/os.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deps/spdlog/details/os.h b/deps/spdlog/details/os.h
index 11b8ee434687f8b1c318c4c85b393bb438ea53b5..ef3ff77bc1338105a49b688d5b633a17e3f76ae8 100644
--- a/deps/spdlog/details/os.h
+++ b/deps/spdlog/details/os.h
@@ -272,7 +272,7 @@ inline int utc_minutes_offset(const std::tm &tm = details::os::localtime())
return offset;
#else
-#if defined(sun) || defined(__sun) || defined(_AIX) || defined(__VITA__) || defined(__SWITCH__)
+#if defined(sun) || defined(__sun) || defined(_AIX) || defined(__VITA__) || defined(__SWITCH__) || defined(__serenity__)
// 'tm_gmtoff' field is BSD extension and it's missing on SunOS/Solaris
struct helper
{

View file

@ -0,0 +1,22 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: gloof11 <gloof11@proton.me>
Date: Thu, 29 Jun 2023 22:27:22 +0900
Subject: [PATCH] Removed hardware acceleration from SDL_CreateRenderer
---
src/graphics/Renderer.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/graphics/Renderer.cpp b/src/graphics/Renderer.cpp
index 38c26ab47dcd165db86115cdf6c4c5aaa2b15c36..62268b5263671741c5b486d576ac9f749ff962f5 100644
--- a/src/graphics/Renderer.cpp
+++ b/src/graphics/Renderer.cpp
@@ -116,7 +116,7 @@ bool Renderer::initVideo()
if (!_renderer)
{
- _renderer = SDL_CreateRenderer(_window, -1, SDL_RENDERER_ACCELERATED);
+ _renderer = SDL_CreateRenderer(_window, -1, SDL_RENDERER_SOFTWARE);
}
if (!_renderer)
{

View file

@ -0,0 +1,17 @@
# Patches for cavestory on SerenityOS
## `0001-Added-serenity-as-a-proper-define-so-that-fstat-is-u.patch`
Added serenity as a proper #define so that "fstat" is used
## `0002-Added-serenity-as-a-proper-define-for-time-generatio.patch`
Added serenity as a proper define for time generation
## `0003-Removed-hardware-acceleration-from-SDL_CreateRendere.patch`
Removed hardware acceleration from SDL_CreateRenderer