head 1.5; access; symbols pkgsrc-2026Q1:1.5.0.4 pkgsrc-2026Q1-base:1.5 pkgsrc-2025Q4:1.5.0.2 pkgsrc-2025Q4-base:1.5 pkgsrc-2025Q3:1.4.0.8 pkgsrc-2025Q3-base:1.4 pkgsrc-2025Q2:1.4.0.6 pkgsrc-2025Q2-base:1.4 pkgsrc-2025Q1:1.4.0.4 pkgsrc-2025Q1-base:1.4 pkgsrc-2024Q4:1.4.0.2 pkgsrc-2024Q4-base:1.4 pkgsrc-2024Q3:1.3.0.8 pkgsrc-2024Q3-base:1.3 pkgsrc-2024Q2:1.3.0.6 pkgsrc-2024Q2-base:1.3 pkgsrc-2024Q1:1.3.0.4 pkgsrc-2024Q1-base:1.3 pkgsrc-2023Q4:1.3.0.2 pkgsrc-2023Q4-base:1.3 pkgsrc-2023Q3:1.2.0.2 pkgsrc-2023Q3-base:1.2; locks; strict; comment @# @; 1.5 date 2025.10.27.22.57.36; author nia; state Exp; branches; next 1.4; commitid eEaUQezWToGKgggG; 1.4 date 2024.11.19.14.58.05; author nia; state Exp; branches; next 1.3; commitid UqFakRVmUE8hCgyF; 1.3 date 2023.11.17.09.27.51; author nia; state Exp; branches; next 1.2; commitid LmbVkI5Udi3rCWME; 1.2 date 2023.07.07.07.31.50; author nia; state Exp; branches; next 1.1; commitid wvTgFBLdJFBHfQvE; 1.1 date 2023.07.02.17.32.30; author nia; state Exp; branches; next ; commitid kcN2rmCGSX0GJfvE; desc @@ 1.5 log @flycast: Update to 2.5 Verified to build on NetBSD, Linux, FreeBSD by drecklypkg ci. v2.5: DCNet, new on-screen gamepad, DreamConn+ and DreamPicoPort adapters What's Changed * DCNet: a free dedicated VPN service for Dreamcast games that only needs a basic Internet connection. 30 game servers are already available and more are coming. * Support for physical Dreamcast controllers with DreamConn+ and DreamPicoPort adapters: gamepad, VMU, vibration pack and more. * New Dreamcast "Full Controller" with 2 analog axes and all possible buttons (Panther DC controller). * Better analog axis emulation when using a keyboard or digital buttons by using a ramp up/down curve. * Hardware CD/DVD/BD-ROM support * GD-ROM arcade games load time reduced to zero. * Improved GD-ROM access time, particularly with HLE BIOS. * Fixed: Vulkan per-pixel mode on Mali GPUs. * Work-around an OpenGLES bug in many drivers displaying the game screen upside down. * Per-game VMU now compatible with multidisk games. * Support for some encrypted cheats. * Online support for Hundred Swords, PBA Bowling, StarLancer and The Next Tetris. Fixed Games * D+VINE * Doom 64 * Fur Fighters * King of Fighters XI * Le Mans 24 Hours * Manic Panic Ghosts! * Pro Pinball * Sega Clay Challenge * Silent Scope * Teenage Mutant Ninja Turtle Collection * Tomb Raider - The Last Revelation * World Kicks PCB * World Series Baseball 2K1 * World Series Baseball 2K2 @ text @$NetBSD: patch-CMakeLists.txt,v 1.4 2024/11/19 14:58:05 nia Exp $ - Find exact Lua version with pkg-config. - Use system dependencies also when compiling the libretro core. --- CMakeLists.txt.orig 2025-05-06 18:04:11.000000000 +0000 +++ CMakeLists.txt @@@@ -501,7 +501,8 @@@@ if(NOT LIBRETRO) endif() if(USE_LUA) - find_package(Lua 5.2) + find_package(PkgConfig) + pkg_check_modules(LUA lua-5.2) if(NOT APPLE AND LUA_FOUND) target_compile_definitions(${PROJECT_NAME} PRIVATE USE_LUA) target_include_directories(${PROJECT_NAME} PRIVATE ${LUA_INCLUDE_DIR} core/deps/luabridge/Source) @@@@ -570,25 +571,25 @@@@ if(PKG_CONFIG_FOUND AND NOT ANDROID AND endif() endif() - if(USE_HOST_LIBZIP) - pkg_check_modules(LIBZIP IMPORTED_TARGET libzip) - if(LIBZIP_FOUND) - target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBZIP) - endif() - endif() - if(ENABLE_OPROFILE) target_compile_definitions(${PROJECT_NAME} PRIVATE DYNA_OPROF) target_link_libraries(${PROJECT_NAME} PRIVATE opagent) endif() +endif() - find_package(MiniUPnPc) - if(MINIUPNP_FOUND) - target_include_directories(${PROJECT_NAME} PRIVATE ${MINIUPNP_INCLUDE_DIRS}) - target_link_libraries(${PROJECT_NAME} PRIVATE ${MINIUPNP_LIBRARIES}) +if(USE_HOST_LIBZIP) + pkg_check_modules(LIBZIP IMPORTED_TARGET libzip) + if(LIBZIP_FOUND) + target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBZIP) endif() endif() +find_package(MiniUPnPc) +if(MINIUPNP_FOUND) + target_include_directories(${PROJECT_NAME} PRIVATE ${MINIUPNP_INCLUDE_DIRS}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${MINIUPNP_LIBRARIES}) +endif() + if(UNIX AND NOT APPLE AND NOT ANDROID) add_definitions( -DFLYCAST_DATADIR="${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}/" @ 1.4 log @[libretro-]flycast: Update to 2.4 v2.4: RetroAchievements, Force Feedback What's Changed * RetroAchievements support * UI improvements with save state thumbnails * Force Feedback support for some arcade games (F355, 18 Wheeler, Maximum Speed, Faster Than Speed, Initial D, Club Kart, King of Route 66, Tokyo Bus Guide, Sega Driving Simulator) * Various fixes by vkedwardli * Many upgrades by scribam Fixed Games * Beach Spikers * Capcom vs SNK 2000 Pro * Irides: Master of blocks * Mars TV * Metropolis Street Racer * Mortal Kombat * Quake III * Red Dog Superior Firepower * Shin Nihon Pro Wrestling * Soul Surfer * Virtua Cop 2 v2.3: Battle Cable, more SystemSP games What's New * Battle Cable support * SystemSP hopper games: kingyo, manpuku, shateki, magicpop, unomedal, puyomedal, ochaken and westdmrg * Club Kart card reader support * Gamepad dead zone and saturation settings * HID barcode scanner support for card games (Mushi King, Dinosaur King, Love & Berry) Fixed Games * Initial D v2/v3 * Melty Blood: Act Cadenza * Confidential Mission * The Maze of the Kings * Spikers Battle * NBA Showtime * NHL 2K2 * Ready 2 Rumble Boxing * Monkey Ball * Crackin'DJ 1 and 2 * F355 (Naomi) * Samurai Shodown VI * Shenmue * Test Drive Le Mans * Sakura Taisen 3 * Death Crimson 2 * Force Five * NHL 2K2 * Shakatto Tambourine * Xtreme Sports * Blue Stinger * RevolveR * Kaen Seibo * Nittere Shiki! Mirai Yosou Studio * Shakatto Tambourine Arcade @ text @d1 1 a1 1 $NetBSD$ d6 1 a6 1 --- CMakeLists.txt.orig 2024-10-21 14:13:00.000000000 +0000 d8 1 a8 2 @@@@ -462,7 +462,8 @@@@ if(NOT LIBRETRO) target_link_libraries(${PROJECT_NAME} PRIVATE ZLIB::ZLIB) d11 9 a19 8 - find_package(Lua 5.2) + find_package(PkgConfig) + pkg_check_modules(LUA lua-5.2) if(NOT APPLE AND LUA_FOUND) target_compile_definitions(${PROJECT_NAME} PRIVATE USE_LUA) target_include_directories(${PROJECT_NAME} PRIVATE ${LUA_INCLUDE_DIR} core/deps/luabridge/Source) @@@@ -515,22 +516,22 @@@@ if(PKG_CONFIG_FOUND AND NOT ANDROID AND target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBPULSE) a33 6 + +find_package(MiniUPnPc) +if(MINIUPNP_FOUND) + target_include_directories(${PROJECT_NAME} PRIVATE ${MINIUPNP_INCLUDE_DIRS}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${MINIUPNP_LIBRARIES}) +endif() d46 9 @ 1.3 log @[libretro-]flycast: Update to 2.2 What's New * Naomi F355 multiboard * Sega SystemSP emulation * Virtua Fighter 4 RFID card support. VF.Net emulation server * Naomi touchscreen (Manic Panic Ghosts, Touch de Uno 1 & 2, Touch de zunou) * Hopper for Kick'4'Cash, Shootout Pool and Club Kart Prize * F355 Deluxe and Touch de Uno 1 & 2 printer * Sega Driving Simulator * Android Scoped Storage * SH4 under/overclock option * Mushiking series * Naomi Alien Front worldwide ranking server * NetDIMM 3.7 networking high-level emulation * Racing Controller, Fishing Controller, Maracas, Densha de Go controller, Pop'n'Music Controller (@@AltoRetrato) * Real time Video Routing for streamers (@@vkedwardli) * SystemSP RFID chip emulation: Dinosaur King, Love & Berry * Dreamcast 32 MB RAM option (@@cepawiel) What's Improved * Support for Windows CE games on 32-bit x86 arch * Hotkeys for Save and Load State * Force feedback info netcast to Boomlangnz's FFB plugin: F355, 18 Wheeler, Club Kart, King of Route 66 * Use a gamepad with arcade lightgun games * Per-game VMU A1 option * Improved detection of Windows CE games * Latin-1 and Asian fonts support in HLE BIOS * Video centering support (San Francisco Rush 2049, Street Fighter III - 3rd strike, Metropolis Street Racer) * Daytona USA networking * Eldorado Gate 4 to 7 compatibility * Implement dithering in Full Framebuffer Emulation mode * Upgrade dependencies, build improvements, and more thanks to @@scribam * And many, many, many bug fixes thanks to @@kihato and all bug reporters @ text @d3 2 a4 2 - Treat APPLE less specially. - Use proper dependencies when building libretro core. d6 1 a6 1 --- CMakeLists.txt.orig 2023-10-27 22:19:54.000000000 +0000 d8 2 a9 2 @@@@ -429,12 +429,6 @@@@ if(NOT LIBRETRO) endif() d12 3 a14 7 - find_package(ZLIB) - if(TARGET ZLIB::ZLIB AND NOT ANDROID AND (NOT WIN32 OR WINDOWS_STORE)) - set(WITH_SYSTEM_ZLIB ON CACHE BOOL "Use system provided zlib library") - target_link_libraries(${PROJECT_NAME} PRIVATE ZLIB::ZLIB) - endif() - find_package(Lua 5.2) d17 4 a20 3 @@@@ -448,6 +442,12 @@@@ add_subdirectory(core/deps/libchdr EXCLU target_link_libraries(${PROJECT_NAME} PRIVATE chdr-static) target_include_directories(${PROJECT_NAME} PRIVATE core/deps/libchdr/include) d22 11 a32 4 +find_package(ZLIB) +if(TARGET ZLIB::ZLIB AND NOT ANDROID AND (NOT WIN32 OR WINDOWS_STORE)) + set(WITH_SYSTEM_ZLIB ON CACHE BOOL "Use system provided zlib library") + target_link_libraries(${PROJECT_NAME} PRIVATE ZLIB::ZLIB) d35 5 a39 5 if(NOT WITH_SYSTEM_ZLIB) target_include_directories(${PROJECT_NAME} PRIVATE "${CMAKE_CURRENT_SOURCE_DIR}/core/deps/libchdr/deps/zlib-1.2.11") target_link_libraries(${PROJECT_NAME} PRIVATE zlib) @@@@ -459,7 +459,7 @@@@ if(NOT WITH_SYSTEM_ZLIB) endif() d41 8 a48 9 find_package(PkgConfig) -if(PKG_CONFIG_FOUND AND NOT ANDROID AND NOT APPLE AND NOT LIBRETRO) +if(PKG_CONFIG_FOUND AND NOT ANDROID AND NOT LIBRETRO) pkg_check_modules(AO IMPORTED_TARGET ao) if(AO_FOUND) target_compile_definitions(${PROJECT_NAME} PRIVATE USE_LIBAO) @@@@ -485,7 +485,9 @@@@ if(PKG_CONFIG_FOUND AND NOT ANDROID AND target_compile_definitions(${PROJECT_NAME} PRIVATE USE_PULSEAUDIO) target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBPULSE) a49 17 +endif() +if(PKG_CONFIG_FOUND) if(USE_HOST_LIBZIP) pkg_check_modules(LIBZIP IMPORTED_TARGET libzip) if(LIBZIP_FOUND) @@@@ -510,7 +512,7 @@@@ if(NINTENDO_SWITCH AND USE_GLES) target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::GLESV2) endif() -if(UNIX AND NOT APPLE AND NOT ANDROID) +if(UNIX AND NOT ANDROID) add_definitions( -DFLYCAST_DATADIR="${CMAKE_INSTALL_FULL_DATADIR}/${PROJECT_NAME}/" -DFLYCAST_SYSCONFDIR="${CMAKE_INSTALL_FULL_SYSCONFDIR}/${PROJECT_NAME}/" @@@@ -1795,7 +1797,7 @@@@ else() install(TARGETS ${PROJECT_NAME} DESTINATION "${CMAKE_INSTALL_BINDIR}") a51 5 -if(UNIX AND NOT APPLE AND NOT ANDROID AND NOT LIBRETRO) +if(UNIX AND NOT ANDROID AND NOT LIBRETRO) install(FILES shell/linux/man/${PROJECT_NAME}.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" ) @ 1.2 log @flycast: Prefer !Linux over fbsd|obsd|nbsd @ text @d1 1 a1 1 $NetBSD: patch-CMakeLists.txt,v 1.1 2023/07/02 17:32:30 nia Exp $ a2 1 - Always prefer SDL2 from pkgsrc. d6 1 a6 1 --- CMakeLists.txt.orig 2023-02-15 17:59:44.000000000 +0000 d8 2 a9 10 @@@@ -207,7 +207,7 @@@@ if(NINTENDO_SWITCH) endif() if(NOT LIBRETRO) - if((WIN32 AND NOT MSVC) OR (UNIX AND NOT APPLE AND NOT CMAKE_SYSTEM_NAME MATCHES "(FreeBSD|OpenBSD|NetBSD)")) + if((WIN32 AND NOT MSVC) OR (CMAKE_SYSTEM_NAME MATCHES "Linux")) add_subdirectory(core/deps/breakpad) if(WIN32) target_link_options(${PROJECT_NAME} PRIVATE "-Wl,--build-id") @@@@ -356,9 +356,7 @@@@ if(NOT LIBRETRO) d12 8 a19 14 if(NOT ANDROID AND NOT IOS) - if(NOT APPLE AND (NOT UNIX OR CMAKE_SYSTEM_NAME MATCHES "(FreeBSD|OpenBSD|NetBSD)")) - find_package(SDL2) - endif() + find_package(SDL2) if(NOT SDL2_FOUND) add_subdirectory(core/deps/SDL EXCLUDE_FROM_ALL) set(SDL2_FOUND 1) @@@@ -395,7 +393,7 @@@@ if(NOT LIBRETRO) endif() find_package(Lua) - if(NOT APPLE AND LUA_FOUND) + if(LUA_FOUND) d21 14 a34 3 target_include_directories(${PROJECT_NAME} PRIVATE ${LUA_INCLUDE_DIR} core/deps/luabridge/Source) list(TRANSFORM LUA_LIBRARIES REPLACE "\.dll" "") @@@@ -418,7 +416,7 @@@@ if(NOT WITH_SYSTEM_ZLIB) d43 2 a44 1 @@@@ -445,22 +443,22 @@@@ if(PKG_CONFIG_FOUND AND NOT ANDROID AND a46 12 - if(USE_HOST_LIBZIP) - pkg_check_modules(LIBZIP IMPORTED_TARGET libzip) - if(LIBZIP_FOUND) - target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBZIP) - endif() - endif() - if(ENABLE_OPROFILE) target_compile_definitions(${PROJECT_NAME} PRIVATE DYNA_OPROF) target_link_libraries(${PROJECT_NAME} PRIVATE opagent) endif() d49 6 a54 15 - find_package(MiniUPnPc) - if(MINIUPNP_FOUND) - target_include_directories(${PROJECT_NAME} PRIVATE ${MINIUPNP_INCLUDE_DIRS}) - target_link_libraries(${PROJECT_NAME} PRIVATE ${MINIUPNP_LIBRARIES}) +find_package(MiniUPnPc) +if(MINIUPNP_FOUND) + target_include_directories(${PROJECT_NAME} PRIVATE ${MINIUPNP_INCLUDE_DIRS}) + target_link_libraries(${PROJECT_NAME} PRIVATE ${MINIUPNP_LIBRARIES}) +endif() + +if(USE_HOST_LIBZIP) + pkg_check_modules(LIBZIP IMPORTED_TARGET libzip) + if(LIBZIP_FOUND) + target_link_libraries(${PROJECT_NAME} PRIVATE PkgConfig::LIBZIP) endif() d57 7 a63 10 @@@@ -1664,10 +1662,14 @@@@ if(IOS) elseif(NINTENDO_SWITCH AND NOT LIBRETRO) install(FILES ${CMAKE_BINARY_DIR}/flycast.nro DESTINATION "${CMAKE_INSTALL_BINDIR}") else() - install(TARGETS ${PROJECT_NAME} DESTINATION "${CMAKE_INSTALL_BINDIR}") + if(NOT LIBRETRO) + install(TARGETS ${PROJECT_NAME} DESTINATION "${CMAKE_INSTALL_BINDIR}") + else() + install(TARGETS ${PROJECT_NAME} DESTINATION "${CMAKE_INSTALL_LIBDIR}/libretro") + endif() @ 1.1 log @Import emulators/flycast. Rejig libretro-flycast package around it. Flycast is a multi-platform Sega Dreamcast, Naomi, Naomi 2, and Atomiswave emulator derived from reicast. @ text @d1 1 a1 1 $NetBSD$ d9 9 @