diff --git a/games-engines/TIC-80/additional-files/tic80.iom b/games-engines/TIC-80/additional-files/tic80.iom new file mode 100644 index 000000000..174dc861e Binary files /dev/null and b/games-engines/TIC-80/additional-files/tic80.iom differ diff --git a/games-engines/TIC-80/additional-files/tic80.rdef.in b/games-engines/TIC-80/additional-files/tic80.rdef.in new file mode 100644 index 000000000..c28c4a579 --- /dev/null +++ b/games-engines/TIC-80/additional-files/tic80.rdef.in @@ -0,0 +1,40 @@ +resource app_flags B_SINGLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "@APP_NAME@", + long_info = "@LONG_INFO@" +}; + +resource app_signature "application/@APP_SIGNATURE@"; + +resource app_name_catalog_entry "@APP_SIGNATURE@:System name:@APP_NAME@"; + +resource vector_icon { + $"6E6369660504F4000340A6F60329366F031A1C2C05F403080424285028502C24" + $"2C0804283028444C444C3008053048304C344C344830481D0A01010002400000" + $"00000000000046C000000000CC80000A040102000A0401022048080A04010202" + $"4000000000000000004200004A8000CB00000A04010202400000000000000000" + $"4480004AC000CEE0000A04010220402C0A0401022014A4A80A0401022014300A" + $"04010202430000000000000000400000C980004800000A040102024200000000" + $"0000000040000046FFFF4800000A000102024300000000000000004000004400" + $"00CA80000A0401022030200A04010202462000000000000000448000CDF800CE" + $"E0000A03010202400000000000000000430000000000CD20000A030102024000" + $"00000000000000430000480000CD20000A040102024300000000000000004000" + $"00C980004400000A04010202470000000000000000400000CEF000CA80000A04" + $"010202448000000000000000400000CC60004880000A04010202448000000000" + $"000000400000CB40004880000A04010202400000000000000000478000C80000" + $"D22C000A040102024000000000000000004580004A4000D028000A0401020240" + $"00000000000000004480004A4000CE90000A0301020243000000000000000040" + $"0000CA80004800000A03010202430000000000000000400000C800004800000A" + $"0201020246C000000000000000400000CEB0004700000A020102024680000000" + $"00000000400000CE6000CA40000A030102023FFFFF0000000000004300004A80" + $"00CD20000A030102023FFFFF00000000000046C0004A0000D160000A03010202" + $"3FFFFF0000000000003FFFFF4A4000C5FFFF" +}; diff --git a/games-engines/TIC-80/patches/tic_80-1.1.2837-source5.patchset b/games-engines/TIC-80/patches/tic_80-1.1.2837-source5.patchset new file mode 100644 index 000000000..fc248f88f --- /dev/null +++ b/games-engines/TIC-80/patches/tic_80-1.1.2837-source5.patchset @@ -0,0 +1,31 @@ +From 49a8645f5561da9726908b6867e919af3b60c440 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 23 Aug 2025 21:17:11 +0200 +Subject: naett: use curl, like on Linux + + +diff --git a/naett-10a9624456829e5f2b4c264e14760301125d12eb/naett.c b/naett-10a9624456829e5f2b4c264e14760301125d12eb/naett.c +index a6783b3..738cd84 100644 +--- a/naett-10a9624456829e5f2b4c264e14760301125d12eb/naett.c ++++ b/naett-10a9624456829e5f2b4c264e14760301125d12eb/naett.c +@@ -22,7 +22,7 @@ + #define __WINDOWS__ 1 + #endif + +-#if __linux__ && !__ANDROID__ ++#if (__linux__ && !__ANDROID__) || defined(__HAIKU__) + #define __LINUX__ 1 + #include + #endif +@@ -782,7 +782,7 @@ void naettPlatformCloseResponse(InternalResponse* res) { + // Inlined naett_linux.c: // + //#include "naett_internal.h" + +-#if __linux__ && !__ANDROID__ ++#if (__linux__ && !__ANDROID__) || defined(__HAIKU__) + + #include + #include +-- +2.48.1 + diff --git a/games-engines/TIC-80/patches/tic_80-1.1.2837.patchset b/games-engines/TIC-80/patches/tic_80-1.1.2837.patchset new file mode 100644 index 000000000..fd115bc8f --- /dev/null +++ b/games-engines/TIC-80/patches/tic_80-1.1.2837.patchset @@ -0,0 +1,555 @@ +From 9dcb5224a2c20feabc587fe699b3bc664706a004 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 20:59:44 +0200 +Subject: use system SDL + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index a490003..9a937f6 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -639,21 +639,11 @@ endif() + ################################ + # SDL2 + ################################ +-if(BUILD_SDL AND NOT EMSCRIPTEN AND NOT RPI) +- +- if(WIN32) +- set(HAVE_LIBC TRUE) +- endif() +- +- if(ANDROID) +- include_directories(${ANDROID_NDK}/sources/android/cpufeatures) +- set(SDL_STATIC_PIC ON CACHE BOOL "" FORCE) +- endif() +- +- set(SDL_SHARED OFF CACHE BOOL "" FORCE) +- +- add_subdirectory(${THIRDPARTY_DIR}/sdl2) +- ++# [patch] Use system sdl2 ++if (BUILD_SDL) ++ find_package(SDL2) ++ set(SDL2_INCLUDE_DIR /system/develop/headers/SDL2) ++ include_directories(${SDL2_INCLUDE_DIR}) + endif() + + ################################ +-- +2.48.1 + + +From 918a16b75ccfb8f71fe621d331be60be9e07be24 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 21:17:35 +0200 +Subject: use system libpng + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9a937f6..be76c9b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -983,35 +983,8 @@ endif() + # PNG + ################################ + +-set(LIBPNG_DIR ${THIRDPARTY_DIR}/libpng) +-set(LIBPNG_SRC +- ${LIBPNG_DIR}/png.c +- ${LIBPNG_DIR}/pngerror.c +- ${LIBPNG_DIR}/pngget.c +- ${LIBPNG_DIR}/pngmem.c +- ${LIBPNG_DIR}/pngpread.c +- ${LIBPNG_DIR}/pngread.c +- ${LIBPNG_DIR}/pngrio.c +- ${LIBPNG_DIR}/pngrtran.c +- ${LIBPNG_DIR}/pngrutil.c +- ${LIBPNG_DIR}/pngset.c +- ${LIBPNG_DIR}/pngtrans.c +- ${LIBPNG_DIR}/pngwio.c +- ${LIBPNG_DIR}/pngwrite.c +- ${LIBPNG_DIR}/pngwtran.c +- ${LIBPNG_DIR}/pngwutil.c +-) +- +-configure_file(${LIBPNG_DIR}/scripts/pnglibconf.h.prebuilt ${CMAKE_CURRENT_BINARY_DIR}/pnglibconf.h) +- +-add_library(png STATIC ${LIBPNG_SRC}) +- +-target_compile_definitions(png PRIVATE PNG_ARM_NEON_OPT=0) +- +-target_include_directories(png +- PUBLIC ${CMAKE_CURRENT_BINARY_DIR} +- PRIVATE ${THIRDPARTY_DIR}/zlib +- INTERFACE ${THIRDPARTY_DIR}/libpng) ++# [patch] Use system libpng ++find_package(PNG) + + ################################ + # TIC-80 studio +-- +2.48.1 + + +From 600faa975e4de2b5433682bbaa36e01a771b9634 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 21:35:38 +0200 +Subject: use system lua + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index be76c9b..0e14a27 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -164,50 +164,14 @@ include(ExternalProject) + # LUA + ################################ + +-set(LUA_DIR ${THIRDPARTY_DIR}/lua) +-set(LUA_SRC +- ${LUA_DIR}/lapi.c +- ${LUA_DIR}/lcode.c +- ${LUA_DIR}/lctype.c +- ${LUA_DIR}/ldebug.c +- ${LUA_DIR}/ldo.c +- ${LUA_DIR}/ldump.c +- ${LUA_DIR}/lfunc.c +- ${LUA_DIR}/lgc.c +- ${LUA_DIR}/llex.c +- ${LUA_DIR}/lmem.c +- ${LUA_DIR}/lobject.c +- ${LUA_DIR}/lopcodes.c +- ${LUA_DIR}/lparser.c +- ${LUA_DIR}/lstate.c +- ${LUA_DIR}/lstring.c +- ${LUA_DIR}/ltable.c +- ${LUA_DIR}/ltm.c +- ${LUA_DIR}/lundump.c +- ${LUA_DIR}/lvm.c +- ${LUA_DIR}/lzio.c +- ${LUA_DIR}/lauxlib.c +- ${LUA_DIR}/lbaselib.c +- ${LUA_DIR}/lcorolib.c +- ${LUA_DIR}/ldblib.c +- ${LUA_DIR}/liolib.c +- ${LUA_DIR}/lmathlib.c +- ${LUA_DIR}/loslib.c +- ${LUA_DIR}/lstrlib.c +- ${LUA_DIR}/ltablib.c +- ${LUA_DIR}/lutf8lib.c +- ${LUA_DIR}/loadlib.c +- ${LUA_DIR}/linit.c +-) +- +-add_library(lua STATIC ${LUA_SRC}) +- +-target_compile_definitions(lua PRIVATE LUA_COMPAT_5_2) +-target_include_directories(lua INTERFACE ${THIRDPARTY_DIR}/lua) +- +-if(N3DS) +- target_compile_definitions(lua PUBLIC LUA_32BITS) +-endif() ++# [patch] Use system lua ++find_package(PkgConfig) ++pkg_check_modules(Lua REQUIRED lua5.3 IMPORTED_TARGET GLOBAL) ++add_library(Lua::Lua ALIAS PkgConfig::Lua) ++set(LUA_INCLUDE_DIR "/system/develop/headers/lua53") ++#set(LUA_LIBRARIES "/usr/lib/lua5.3") ++include_directories(${LUA_INCLUDE_DIR}) ++#link_directories(${LUA_LIBRARIES}) + + ################################ + # LPEG +-- +2.48.1 + + +From 42bc887c1873fc75c0f21d0efdcdb86e8a807b74 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 22:10:57 +0200 +Subject: use system zlib + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 0e14a27..fb910c8 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -544,7 +544,8 @@ macro(MACRO_CORE SCRIPT DEFINE BUILD_DEPRECATED) + scheme + quickjs + blipbuf +- zlib ++ # [patch] Fix zlib name ++ z + ) + + if(BUILD_WITH_MRUBY) +@@ -774,33 +775,8 @@ endif() + # ZLIB + ################################ + +-if (NOT N3DS) +- +-set(ZLIB_DIR ${THIRDPARTY_DIR}/zlib) +-set(ZLIB_SRC +- ${ZLIB_DIR}/adler32.c +- ${ZLIB_DIR}/compress.c +- ${ZLIB_DIR}/crc32.c +- ${ZLIB_DIR}/deflate.c +- ${ZLIB_DIR}/inflate.c +- ${ZLIB_DIR}/infback.c +- ${ZLIB_DIR}/inftrees.c +- ${ZLIB_DIR}/inffast.c +- ${ZLIB_DIR}/trees.c +- ${ZLIB_DIR}/uncompr.c +- ${ZLIB_DIR}/zutil.c +-) +- +-add_library(zlib STATIC ${ZLIB_SRC}) +-target_include_directories(zlib INTERFACE ${THIRDPARTY_DIR}/zlib) +- +-else () +- +-add_library(zlib STATIC IMPORTED) +-set_target_properties( zlib PROPERTIES IMPORTED_LOCATION ${DEVKITPRO}/portlibs/3ds/lib/libz.a ) +-target_include_directories(zlib INTERFACE ${DEVKITPRO}/portlibs/3ds/include) +- +-endif () ++# [patch] Use system zlib ++find_package(ZLIB) + + ################################ + # ZIP +@@ -830,7 +806,8 @@ if(BUILD_DEMO_CARTS) + target_link_libraries(wasmp2cart tic80core) + + add_executable(bin2txt ${TOOLS_DIR}/bin2txt.c) +- target_link_libraries(bin2txt zlib) ++ # [patch] Fix zlib name ++ target_link_libraries(bin2txt z) + + add_executable(xplode + ${TOOLS_DIR}/xplode.c +-- +2.48.1 + + +From c8ec31428476598fa4726c99ec7184d1b7b1f4de Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 22:17:41 +0200 +Subject: use system libgif + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fb910c8..20ca773 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -385,22 +385,10 @@ endif() + # GIFLIB + ################################ + +-set(GIFLIB_DIR ${THIRDPARTY_DIR}/giflib) +-set(GIFLIB_SRC +- ${GIFLIB_DIR}/dgif_lib.c +- ${GIFLIB_DIR}/egif_lib.c +- ${GIFLIB_DIR}/gif_err.c +- ${GIFLIB_DIR}/gif_font.c +- ${GIFLIB_DIR}/gif_hash.c +- ${GIFLIB_DIR}/gifalloc.c +- ${GIFLIB_DIR}/openbsd-reallocarray.c +-) +-add_library(giflib STATIC ${GIFLIB_SRC}) +-target_include_directories(giflib +- PRIVATE ${GIFLIB_DIR} +- INTERFACE +- ${THIRDPARTY_DIR}/giflib +- ${THIRDPARTY_DIR}/msf_gif) ++# [patch] Use system giflib but include vendor msf_gif encoder ++find_package(GIF) ++set(MSF_GIF_INCLUDE_DIR ${THIRDPARTY_DIR}/msf_gif) ++include_directories(${MSF_GIF_INCLUDE_DIR}) + + ################################ + # Blipbuf +@@ -558,7 +546,8 @@ macro(MACRO_CORE SCRIPT DEFINE BUILD_DEPRECATED) + + if(${BUILD_DEPRECATED}) + target_compile_definitions(tic80core${SCRIPT} PRIVATE BUILD_DEPRECATED) +- target_link_libraries(tic80core${SCRIPT} giflib) ++ # [patch] Fix giflib name ++ target_link_libraries(tic80core${SCRIPT} gif) + endif() + + if(LINUX) +@@ -973,7 +962,8 @@ endif() + + target_include_directories(tic80studio PUBLIC ${CMAKE_CURRENT_BINARY_DIR}) + +-target_link_libraries(tic80studio tic80core zip wave_writer argparse giflib png) ++# [patch] Fix giflib name ++target_link_libraries(tic80studio tic80core zip wave_writer argparse gif png) + + if(USE_NAETT) + target_compile_definitions(tic80studio PRIVATE USE_NAETT) +-- +2.48.1 + + +From 926a28b40aef5718b4fbd9e5e21733b05625c9ca Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 22:25:33 +0200 +Subject: use system squirrel + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 20ca773..de01727 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -329,36 +329,7 @@ endif() + # SQUIRREL + ################################ + +-set(SQUIRREL_DIR ${THIRDPARTY_DIR}/squirrel) +-set(SQUIRREL_SRC +- ${SQUIRREL_DIR}/squirrel/sqapi.cpp +- ${SQUIRREL_DIR}/squirrel/sqbaselib.cpp +- ${SQUIRREL_DIR}/squirrel/sqclass.cpp +- ${SQUIRREL_DIR}/squirrel/sqcompiler.cpp +- ${SQUIRREL_DIR}/squirrel/sqdebug.cpp +- ${SQUIRREL_DIR}/squirrel/sqfuncstate.cpp +- ${SQUIRREL_DIR}/squirrel/sqlexer.cpp +- ${SQUIRREL_DIR}/squirrel/sqmem.cpp +- ${SQUIRREL_DIR}/squirrel/sqobject.cpp +- ${SQUIRREL_DIR}/squirrel/sqstate.cpp +- ${SQUIRREL_DIR}/squirrel/sqtable.cpp +- ${SQUIRREL_DIR}/squirrel/sqvm.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdaux.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdblob.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdio.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdmath.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdrex.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdstream.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdstring.cpp +- ${SQUIRREL_DIR}/sqstdlib/sqstdsystem.cpp +- +-) +- +-add_library(squirrel STATIC ${SQUIRREL_SRC}) +-set_target_properties(squirrel PROPERTIES LINKER_LANGUAGE CXX) +-target_include_directories(squirrel PUBLIC ${SQUIRREL_DIR}/include) +-target_include_directories(squirrel PRIVATE ${SQUIRREL_DIR}/squirrel) +-target_include_directories(squirrel PRIVATE ${SQUIRREL_DIR}/sqstdlib) ++find_package(SQUIRREL) + + ################################ + # pocketpy (Python) +-- +2.48.1 + + +From 1c22f44298b2592e3652705558651cedd5d8a826 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sat, 16 Aug 2025 23:28:34 +0200 +Subject: use system janet + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index de01727..5df37c3 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -407,39 +407,10 @@ set(BUILD_WITH_JANET_DEFAULT TRUE) + option(BUILD_WITH_JANET "Janet Enabled" ${BUILD_WITH_JANET_DEFAULT}) + message("BUILD_WITH_JANET: ${BUILD_WITH_JANET}") + ++# [patch] Use system janet + if(BUILD_WITH_JANET) +- +- if(MINGW) +- find_program(GIT git) +- get_filename_component(GIT_DIR ${GIT} DIRECTORY) +- find_program(GITBASH bash PATHS "${GIT_DIR}/../bin" NO_DEFAULT_PATH) +- +- if(NOT GITBASH) +- message(FATAL_ERROR "Git Bash not found!") +- endif() +- +- add_custom_command( +- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c +- COMMAND ${GITBASH} -c "CC=gcc mingw32-make build/c/janet.c" +- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/ +- ) +- elseif(WIN32) +- add_custom_command( +- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c +- COMMAND ./build_win.bat +- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/ +- ) +- else() +- add_custom_command( +- OUTPUT ${THIRDPARTY_DIR}/janet/build/c/janet.c +- COMMAND make build/c/janet.c +- WORKING_DIRECTORY ${THIRDPARTY_DIR}/janet/ +- ) +- endif() +- +- add_library(janet ${THIRDPARTY_DIR}/janet/build/c/janet.c) +- target_include_directories(janet PUBLIC ${THIRDPARTY_DIR}/janet/src/include) +- target_include_directories(janet PUBLIC ${CMAKE_SOURCE_DIR}/build/janet/) ++ set(JANET_INCLUDE_DIR "/system/develop/headers/janet") ++ include_directories(${JANET_INCLUDE_DIR}) + endif() + + ################################ +-- +2.48.1 + + +From a9844070fb757ced4e5f222a4cd0c725e494c792 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sun, 17 Aug 2025 11:52:16 +0200 +Subject: fix sdl2 name + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5df37c3..4a3440a 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -565,7 +565,8 @@ if(BUILD_SDL AND BUILD_PLAYER AND NOT RPI) + target_link_options(player-sdl PRIVATE -static) + endif() + +- target_link_libraries(player-sdl tic80core SDL2-static SDL2main) ++ # [patch] Fix sdl2 name ++ target_link_libraries(player-sdl tic80core SDL2 SDL2main) + endif() + + ################################ +@@ -991,7 +992,8 @@ if(ANDROID) + endif() + + if(NOT EMSCRIPTEN) +- target_link_libraries(sdlgpu SDL2-static) ++ # [patch] Fix sdl2 name ++ target_link_libraries(sdlgpu SDL2) + endif() + + endif() +@@ -1064,7 +1066,8 @@ if(BUILD_SDL) + elseif(RPI) + target_link_libraries(tic80 libSDL2.a bcm_host) + else() +- target_link_libraries(tic80 SDL2-static) ++ # [patch] Fix sdl2 name ++ target_link_libraries(tic80 SDL2) + endif() + endif() + +@@ -1213,7 +1216,8 @@ if(BUILD_STUB) + elseif(RPI) + target_link_libraries(tic80${SCRIPT} libSDL2.a bcm_host pthread dl) + else() +- target_link_libraries(tic80${SCRIPT} SDL2-static) ++ # [patch] Fix sdl2 name ++ target_link_libraries(tic80${SCRIPT} SDL2) + endif() + endif() + +-- +2.48.1 + + +From d94d5ca30079819d69de1b388ac32dbee9c8fabe Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sun, 17 Aug 2025 15:10:04 +0200 +Subject: use cmake macro to make -ldl go away + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 4a3440a..bf713c5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -395,7 +395,7 @@ endif() + + if(LINUX) + target_compile_definitions(quickjs PUBLIC _GNU_SOURCE _POSIX_C_SOURCE=200112) +- target_link_libraries(quickjs PUBLIC m dl pthread) ++ target_link_libraries(quickjs PUBLIC m ${CMAKE_DL_LIBS} pthread) + endif() + + ################################ +-- +2.48.1 + + +From 7de523a778db124bedc0500c62dc41a3cc8b70bd Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sun, 17 Aug 2025 15:30:43 +0200 +Subject: quickjs needs dtoa + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index bf713c5..e226d77 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -377,6 +377,7 @@ set(QUICKJS_DIR ${THIRDPARTY_DIR}/quickjs) + file(STRINGS ${QUICKJS_DIR}/VERSION CONFIG_VERSION) + + add_library(quickjs STATIC ++ ${QUICKJS_DIR}/dtoa.c + ${QUICKJS_DIR}/quickjs.c + ${QUICKJS_DIR}/libregexp.c + ${QUICKJS_DIR}/libunicode.c +-- +2.48.1 + + +From 97eb3d29f5525282b8eaf5602610a9ab94dda7b6 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Sun, 17 Aug 2025 15:48:03 +0200 +Subject: squirrel needs sqstdlib + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e226d77..6c9fcb4 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -471,6 +471,7 @@ macro(MACRO_CORE SCRIPT DEFINE BUILD_DEPRECATED) + wren + wasm + squirrel ++ sqstdlib + python + scheme + quickjs +-- +2.48.1 + + +From 327a5cd4548eaf85fd512357f11fb589be9354c6 Mon Sep 17 00:00:00 2001 +From: Peter van Dijk +Date: Mon, 25 Aug 2025 20:27:00 +0200 +Subject: don't install icons and desktop metadata + + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6c9fcb4..0446f92 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -1079,12 +1079,14 @@ if(BUILD_SDL) + + install(TARGETS tic80 DESTINATION bin) + ++if(NOT HAIKU) + SET(TIC80_DESKTOP_DIR "share/applications/") + SET(TIC80_PIXMAPS_DIR "share/icons/") + + install (FILES ${PROJECT_SOURCE_DIR}/build/linux/tic80.desktop DESTINATION ${TIC80_DESKTOP_DIR}) + install (FILES ${PROJECT_SOURCE_DIR}/build/linux/tic80.xml DESTINATION ${TIC80_DESKTOP_DIR}) + install (FILES ${PROJECT_SOURCE_DIR}/build/linux/tic80.png DESTINATION ${TIC80_PIXMAPS_DIR}) ++endif() + + endif() + endif() +-- +2.48.1 + diff --git a/games-engines/TIC-80/tic_80-1.1.2837.recipe b/games-engines/TIC-80/tic_80-1.1.2837.recipe new file mode 100644 index 000000000..dff9c396b --- /dev/null +++ b/games-engines/TIC-80/tic_80-1.1.2837.recipe @@ -0,0 +1,171 @@ +SUMMARY="Fantasy computer for making, playing and sharing tiny games" +DESCRIPTION="ProjectX description." +HOMEPAGE="http://projectX" +COPYRIGHT="2017 Vadim Grigoruk" +LICENSE="MIT" +REVISION="1" +SOURCE_URI="https://github.com/nesbox/TIC-80/archive/v$portVersion/TIC-80-v$portVersion.tar.gz" +CHECKSUM_SHA256="a004bbc7b316a4b60d461ac4612fca4ab07e96ed1d1445086e70d1fc4d95961b" +PATCHES="tic_80-$portVersion.patchset" +SOURCE_DIR="TIC-80-$portVersion" + +# quickjs bumped to a later version that actually builds on Haiku +# s7 is actually in the tic tree but that version is broken +# lpeg is in haikuports but only gives us a .so, whose name does not start +# with "lib" so it's hard to use +_argparse_rev="0d5f5d0745df14a3f373f7eed85bf524714f4524" +_blip_buf_rev="330226d9b55ecbeea644e17b5e0f096a165ca07e" +_lpeg_rev="73d8614a8dea404cf7bfe25a6e4cea7183dc9fb7" +_moonscript_rev="17179283012b392bff972ad66231d73bfeec6e90" +_msf_gif_rev="7829c8f439d013deeb54eba94761403e1da2a960" +_naett_rev="10a9624456829e5f2b4c264e14760301125d12eb" +_pocketpy_rev="7312afdad24bb308037088d34b32ed0078fed7d2" +_quickjs_rev="db3d3f09cdec7106d6e330aa1eb3fae50ed8fdc4" +_s7_rev="288587c78dbddc6164ae334550203730084c89b2" +_wasm3_rev="8523770b80ea1f78afcac21d837f9dfd50f0bed6" +_wren_rev="4a18fc489f9ea3d253b20dd40f4cdad0d6bb40eb" +_zip_rev="d7df626f3aa457e01669f65e61bf8f484e352941" +_submodules=" + argparse-$_argparse_rev + blip-buf-$_blip_buf_rev + lpeg-$_lpeg_rev + moonscript-$_moonscript_rev + msf_gif-$_msf_gif_rev + naett-$_naett_rev + pocketpy-$_pocketpy_rev + quickjs-$_quickjs_rev + s7-$_s7_rev + wasm3-$_wasm3_rev + wren-$_wren_rev + zip-$_zip_rev + " + +# maybe I can generate all these extra source URIs from a simpler list? + +SOURCE_URI_2="https://github.com/blueloveTH/pocketpy/archive/$_pocketpy_rev.tar.gz" +CHECKSUM_SHA256_2="093b5d02c2b4b21d11edeb49b40c4e91bb49274f91e990b8fdb2dde72f51f6f2" + +SOURCE_URI_3="https://github.com/nesbox/quickjs/archive/$_quickjs_rev.tar.gz" +CHECKSUM_SHA256_3="c664d199faaa27e9e2b6f02f9a675de0596e55853f9435d33aa6bb8fc22c5833" + +SOURCE_URI_4="https://github.com/kuba--/zip/archive/$_zip_rev.tar.gz" +CHECKSUM_SHA256_4="f121ff9a6df3414afe958c341c0e3f05d638e43e3be735a9dad8d05ce9322c49" + +SOURCE_URI_5="https://github.com/erkkah/naett/archive/$_naett_rev.tar.gz" +CHECKSUM_SHA256_5="f476b55a6983fc08150ed37cc91dbc0a0a24e05c0891de7e1c86b0536ac8eb76" +PATCHES_5="tic_80-$portVersion-source5.patchset" + +SOURCE_URI_6="https://github.com/cofyc/argparse/archive/$_argparse_rev.tar.gz" +CHECKSUM_SHA256_6="b14cfe4b95a4cd1cf148eeecf0dba94ebf5b4312de12f5f5254e7040017477f1" + +SOURCE_URI_7="https://github.com/nesbox/blip-buf/archive/$_blip_buf_rev.tar.gz" +CHECKSUM_SHA256_7="e86870ecb4b7c3feac6afbf5ddd0aff809e14b2d16d9bde251b712fd4ecd6d99" + +SOURCE_URI_8="https://github.com/wasm3/wasm3/archive/$_wasm3_rev.tar.gz" +CHECKSUM_SHA256_8="0dc7fad64c1d9d65dfa822cf79e471edab36190d8eb0fb7bf87f9064f846299c" + +SOURCE_URI_9="https://github.com/wren-lang/wren/archive/$_wren_rev.tar.gz" +CHECKSUM_SHA256_9="fb885f12767ea8b1101145b9d86735995e28c5298b712c1c3f71ed9bbf17f567" + +SOURCE_URI_10="https://cm-gitlab.stanford.edu/bil/s7/-/archive/$_s7_rev.tar.gz" +CHECKSUM_SHA256_10="c659b283147188c180014a5e6586978fa2d4e163bc78f9062b98e28933d6916c" + +SOURCE_URI_11="https://github.com/nesbox/moonscript/archive/$_moonscript_rev.tar.gz" +CHECKSUM_SHA256_11="10f0ebf82ae92a1389d353b349bef25deea594aebb3a65d09f36cd1193d7de18" + +SOURCE_URI_12="https://github.com/nesbox/lpeg/archive/$_lpeg_rev.tar.gz" +CHECKSUM_SHA256_12="600d8644b51e5cb4d628627cd430d7beccf1d5af72a2844270983c85563de3a4" + +SOURCE_URI_13="https://github.com/notnullnotvoid/msf_gif/archive/$_msf_gif_rev.tar.gz" +CHECKSUM_SHA256_13="d73fe9395b7826e38b734feb90307a50bb32622049e1ec4d6b89ae693dae9aa6" + +ADDITIONAL_FILES="tic80.rdef.in" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + tic_80$secondaryArchSuffix = $portVersion + cmd:tic80$secondaryArchSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libgif$secondaryArchSuffix + lib:libjanet$secondaryArchSuffix + lib:liblua$secondaryArchSuffix + lib:libpng16$secondaryArchSuffix + lib:libSDL2_2.0$secondaryArchSuffix + lib:libsquirrel$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libcurl$secondaryArchSuffix + devel:libgif$secondaryArchSuffix + devel:libjanet$secondaryArchSuffix + devel:liblua$secondaryArchSuffix >= 5.3 + devel:libpng16$secondaryArchSuffix + devel:libSDL2_2.0$secondaryArchSuffix + devel:libsquirrel$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:cmake + cmd:gcc$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + cmd:python3 + " + +PATCH() +{ + local MINOR="`echo "$portVersion" | cut -d. -f3`" + sed -i "s/VERSION_REVISION 0/VERSION_REVISION $MINOR/" \ + CMakeLists.txt +} + +BUILD() +{ + pushd vendor + for _mod in $_submodules; do + _mod_rev=${_mod##*-} + _mod_name=$(echo $_mod | sed -e "s/-$_mod_rev//") + rm -rf $_mod_name + ln -sf ../../../sources*/$_mod $_mod_name + done + popd + + cmake -Bbuild -S. -DCMAKE_BUILD_TYPE=Release \ + $cmakeDirArgs \ + -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ + -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ + -DBUILD_DEMO_CARTS:BOOL=OFF + + cmake --build build $jobArgs +} + +INSTALL() +{ + make -C build install + + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + local APP_NAME="TIC-80" + local LONG_INFO="$SUMMARY" + local APP_SIGNATURE="x-vnd.tic-80" + sed \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + -e "s|@APP_NAME@|$APP_NAME|" \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + $portDir/additional-files/tic80.rdef.in > tic80.rdef + + addResourcesToBinaries tic80.rdef $prefix/bin/tic80 + + addAppDeskbarSymlink $prefix/bin/tic80 TIC-80 +}