diff --git a/emulators/Ymir/Makefile b/emulators/Ymir/Makefile index 155b43cf6e60..a9e8ba751ace 100644 --- a/emulators/Ymir/Makefile +++ b/emulators/Ymir/Makefile @@ -1,100 +1,100 @@ PORTNAME= Ymir DISTVERSIONPREFIX= v DISTVERSION= 0.2.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= emulators MAINTAINER= bsdcode@disroot.org COMMENT= Sega Saturn emulator WWW= https://github.com/StrikerX3/Ymir/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE ONLY_FOR_ARCHS= aarch64 amd64 ONLY_FOR_ARCHS_REASON= upstream only supports aarch64 and amd64 BUILD_DEPENDS= cereal>0:devel/cereal \ concurrentqueue>0:devel/concurrentqueue \ cxxopts>0:devel/cxxopts \ date>0:devel/date \ glslangValidator:graphics/glslang \ glslc:graphics/shaderc \ libnghttp3>0:www/libnghttp3 \ libngtcp2>0:net/libngtcp2 \ nlohmann-json>0:devel/nlohmann-json \ semver>0:devel/semver \ stb>0:devel/stb \ vulkan-headers>0:graphics/vulkan-headers LIB_DEPENDS= libchdr.so:devel/libchdr \ libcurl.so:ftp/curl \ libfmt.so:devel/libfmt \ libglfw.so:graphics/glfw \ libimgui.so:x11-toolkits/imgui \ liblz4.so:archivers/liblz4 \ librtmidi.so:audio/rtmidi \ libtomlplusplus.so:devel/tomlplusplus \ libvulkan.so:graphics/vulkan-loader \ libxxhash.so:devel/xxhash FLAVORS= gtk3 gtk4 FLAVOR?= ${FLAVORS:[1]} gtk4_PKGNAMESUFFIX= -gtk4 _gtk3_BR_DEPENDS= zenity:x11/zenity _gtk4_BR_DEPENDS= zenity:x11/zenity4 ${FLAVOR}_BUILD_DEPENDS= ${_${FLAVOR}_BR_DEPENDS} ${FLAVOR}_RUN_DEPENDS= ${_${FLAVOR}_BR_DEPENDS} USES= cmake compiler:c++20-lang gl llvm${_LLVM_${ARCH}} localbase \ pkgconfig sdl xorg _LLVM_aarch64= :min=21 USE_GITHUB= yes GH_ACCOUNT= StrikerX3 GH_TUPLE= StrikerX3:mio:4e4cdc711d73d9dc96c0cb9475e6951f476218e6:mio/vendor/mio USE_GL= glut USE_SDL= sdl3 USE_XORG= xi xmu CMAKE_OFF= Ymir_DEV_BUILD \ Ymir_ENABLE_IMGUI_DEMO \ Ymir_ENABLE_SANDBOX \ Ymir_ENABLE_TESTS \ Ymir_ENABLE_UPDATE_CHECKS \ Ymir_INCLUDE_PACKAGING CFLAGS+= -I${LOCALBASE}/include/concurrentqueue/moodycamel \ -I${LOCALBASE}/include/stb \ -I${WRKSRC}/vendor/imgui/ymir PLIST_FILES= bin/ymir-sdl3 \ share/applications/io.github.strikerx3.ymir.desktop \ share/icons/hicolor/256x256/apps/ymir.png \ share/metainfo/io.github.strikerx3.ymir.xml OPTIONS_DEFINE= LTO YMDASM OPTIONS_DEFAULT= LTO YMDASM_DESC= Include Ymir disassembly tool LTO_CMAKE_BOOL= Ymir_ENABLE_IPO YMDASM_CMAKE_BOOL= Ymir_ENABLE_YMDASM YMDASM_PLIST_FILES= bin/ymdasm post-install: ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/apps/ymir-sdl3/ymir-sdl3-${DISTVERSION} \ ${STAGEDIR}${PREFIX}/bin/ymir-sdl3 ${INSTALL_DATA} ${WRKSRC}/apps/ymir-sdl3/res/io.github.strikerx3.ymir.desktop \ ${STAGEDIR}${DESKTOPDIR} ${MKDIR} ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps \ ${STAGEDIR}${PREFIX}/share/metainfo ${INSTALL_DATA} ${WRKSRC}/apps/ymir-sdl3/res/ymir.png \ ${STAGEDIR}${PREFIX}/share/icons/hicolor/256x256/apps ${INSTALL_DATA} ${WRKSRC}/apps/ymir-sdl3/res/io.github.strikerx3.ymir.xml \ ${STAGEDIR}${PREFIX}/share/metainfo post-install-YMDASM-on: ${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/apps/ymdasm/ymdasm-${DISTVERSION} \ ${STAGEDIR}${PREFIX}/bin/ymdasm .include diff --git a/emulators/ares/Makefile b/emulators/ares/Makefile index cce4fbf2f4f1..fc9f686d20f0 100644 --- a/emulators/ares/Makefile +++ b/emulators/ares/Makefile @@ -1,212 +1,212 @@ PORTNAME= ares DISTVERSIONPREFIX= v DISTVERSION= 147 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= emulators MASTER_SITES= https://github.com/${PORTNAME}-emulator/${PORTNAME}/releases/download/${DISTVERSIONFULL}/ DISTNAME= ${PORTNAME}-source DIST_SUBDIR= ${PORTNAME}/${DISTVERSION} # fixes linker error when building PCE core without MD core, see also # https://github.com/ares-emulator/ares/pull/2329 PATCH_SITES= https://github.com/${PORTNAME}-emulator/${PORTNAME}/commit/ PATCHFILES= adfc78f9523adce9fef1d7ac282e08ab7fc66dd4.patch:-p1 MAINTAINER= bsdcode@disroot.org COMMENT= Multi-system emulator WWW= https://ares-emu.net LICENSE= ISCL LICENSE_FILE= ${WRKSRC}/LICENSE # Needs resolution by upstream, see also # https://github.com/ares-emulator/ares/issues/2350 BROKEN_i386= unsigned long long to size_type narrowing conversion issue introduced in version 147 BUILD_DEPENDS= librashader>0:devel/librashader USES= cmake compiler:c++20-lang gl gnome pkgconfig xorg USE_GL= opengl USE_GNOME= gtk30 USE_XORG= x11 xext xrandr xrender CMAKE_ARGS= -DARES_CORES="${_CORES:S/ /;/gW}" \ -DENABLE_CCACHE=${CCACHE_ENABLED} CMAKE_ON= ARES_BUILD_OFFICIAL \ ARES_SKIP_DEPS \ ARES_UNITY_CORES CMAKE_OFF= ARES_BUILD_LOCAL \ ARES_BUNDLE_SHADERS \ ARES_ENABLE_MINIMUM_CPU EXTRACT_AFTER_ARGS= --exclude thirdparty/GL \ --exclude thirdparty/KHR \ --exclude thirdparty/libchdr \ --exclude thirdparty/librashader \ --exclude thirdparty/sse2neon.h \ --exclude thirdparty/xxhash.h \ --no-same-owner --no-same-permissions NO_WRKSUBDIR= yes OPTIONS_DEFINE= CHD SDL TOOLS OPTIONS_DEFAULT= A26 ALSA AO CHD CV FC GB GBA LIBRASHADER \ LIBRETRO LTO MD MS MSX MYVISION N64 NG NGP \ OPENAL OPTIMIZED_CFLAGS OSS PCE PS1 SDL SFC SG \ SPEC UDEV USBHID WS OPTIONS_GROUP= AUDIO CORES INPUT OPTIMIZATION SHADER OPTIONS_GROUP_AUDIO= ALSA AO OPENAL OSS PULSEAUDIO OPTIONS_GROUP_CORES= A26 CV FC GB GBA MD MS MSX MYVISION N64 NG NGP \ PCE PS1 SFC SG SPEC WS OPTIONS_GROUP_INPUT= HOTKEYS UDEV USBHID OPTIONS_GROUP_OPTIMIZATION= ACCURACY LTO OPTIMIZED_CFLAGS OPTIONS_GROUP_SHADER= LIBRASHADER LIBRETRO # linking openal fails on i386, LLD_UNSAFE workaround fails with # /usr/local/bin/i386-unknown-freebsd14.1-ld.bfd: /usr/bin/../lib/LLVMgold.so: # error loading plugin: Cannot open "/usr/bin/../lib/LLVMgold.so" # on tools/sourcery target, so exclude OPENAL on i386 OPTIONS_EXCLUDE_i386= OPENAL OPTIONS_SUB= yes A26_DESC= Atari 2600 ACCURACY_DESC= Emulation accuracy over performance CHD_DESC= CHD format support via libchdr CV_DESC= ColecoVision FC_DESC= NES / Famicom GBA_DESC= Game Boy Advance GB_DESC= Game Boy / Game Boy Color HOTKEYS_DESC= Inofficial hotkeys locking patch LIBRASHADER_DESC= Slang-shader support via librashader LIBRETRO_DESC= Install slang-shaders from libretro (implies ${LIBRETRO_IMPLIES}) MD_DESC= Sega Mega Drive / Genesis MSX_DESC= Microsoft MSX MS_DESC= Sega Master System / Mark III MYVISION_DESC= My Vision N64_DESC= Nintendo 64 NGP_DESC= Neo Geo Pocket / Neo Geo Pocket Color NG_DESC= Neo Geo (AES/MVS) PCE_DESC= PC-Engine / TurboGrafx PS1_DESC= PlayStation SFC_DESC= SNES / Super Famicom SG_DESC= Sega SG-1000 SPEC_DESC= ZX Spectrum TOOLS_DESC= Include supplemental tools and tests UDEV_DESC= Input support via UDEV USBHID_DESC= Input support via USBHID WS_DESC= WonderSwan / WonderSwan Color A26_VARS= _CORES+=a26 ACCURACY_CMAKE_BOOL= ARES_PROFILE_ACCURACY ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= ARES_ENABLE_ALSA AO_LIB_DEPENDS= libao.so:audio/libao AO_CMAKE_BOOL= ARES_ENABLE_AO CHD_LIB_DEPENDS= libchdr.so:devel/libchdr CHD_USES= localbase CHD_CMAKE_BOOL= ARES_ENABLE_CHD CV_VARS= _CORES+=cv FC_VARS= _CORES+=fc GBA_VARS= _CORES+=gba GB_VARS= _CORES+=gb HOTKEYS_EXTRA_PATCHES= ${PATCHDIR}/extra-patch-desktop-ui_input_hotkeys.cpp LIBRASHADER_LIB_DEPENDS= librashader.so:devel/librashader LIBRASHADER_CMAKE_BOOL= ARES_ENABLE_LIBRASHADER LIBRETRO_IMPLIES= LIBRASHADER _LIBRETRO_BR_DEPENDS= libretro-shaders-slang<0:games/libretro-shaders-slang LIBRETRO_BUILD_DEPENDS= ${_LIBRETRO_BR_DEPENDS} LIBRETRO_RUN_DEPENDS= ${_LIBRETRO_BR_DEPENDS} LTO_CMAKE_BOOL= ENABLE_IPO MD_BUILD_DEPENDS= xxhash>0:devel/xxhash MD_USES= localbase MD_VARS= _CORES+=md MSX_VARS= _CORES+=msx MS_VARS= _CORES+=ms MYVISION_VARS= _CORES+=myvision _N64_BR_DEPENDS= vulkan-loader>0:graphics/vulkan-loader _N64_BUILD_DEPENDS_aarch64= sse2neon>0:devel/sse2neon N64_BUILD_DEPENDS= ${_N64_BR_DEPENDS} \ ${_N64_BUILD_DEPENDS_${ARCH}} \ xxhash>0:devel/xxhash N64_RUN_DEPENDS= ${_N64_BR_DEPENDS} N64_USES= localbase N64_VARS= _CORES+=n64 NGP_VARS= _CORES+=ngp NG_VARS= _CORES+=ng OPENAL_USES= openal OPENAL_CMAKE_BOOL= ARES_ENABLE_OPENAL OPTIMIZED_CFLAGS_CFLAGS= -O3 OSS_CMAKE_BOOL= ARES_ENABLE_OSS PCE_VARS= _CORES+=pce PS1_VARS= _CORES+=ps1 PULSEAUDIO_LIB_DEPENDS= libpulse-simple.so:audio/pulseaudio \ libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= ARES_ENABLE_PULSEAUDIO SDL_USES= sdl SDL_USE= SDL=sdl3 SDL_CMAKE_BOOL= ARES_ENABLE_SDL SFC_VARS= _CORES+=sfc SG_VARS= _CORES+=sg SPEC_VARS= _CORES+=spec TOOLS_CMAKE_BOOL= ARES_BUILD_OPTIONAL_TARGETS UDEV_LIB_DEPENDS= libudev.so:devel/libudev-devd UDEV_CMAKE_BOOL= ARES_ENABLE_UDEV USBHID_CMAKE_BOOL= ARES_ENABLE_USBHID WS_VARS= _CORES+=ws .include .if ${PORT_OPTIONS:MTOOLS} && (${PORT_OPTIONS:MGBA} || ${PORT_OPTIONS:MSFC}) PLIST_SUB+= TOOLSARM7TDMI="" .else PLIST_SUB+= TOOLSARM7TDMI="@comment " .endif .if ${PORT_OPTIONS:MTOOLS} && (${PORT_OPTIONS:MMD} || ${PORT_OPTIONS:MNG}) PLIST_SUB+= TOOLSM68000="" .else PLIST_SUB+= TOOLSM68000="@comment " .endif post-patch: ${REINPLACE_CMD} 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/cmake/finders/* post-install-LIBRETRO-on: ${LN} -s ${LOCALBASE}/share/libretro/shaders/shaders_slang ${STAGEDIR}${DATADIR}/Shaders .include diff --git a/emulators/flycast/Makefile b/emulators/flycast/Makefile index d5e8e34711f4..45efd2e14d37 100644 --- a/emulators/flycast/Makefile +++ b/emulators/flycast/Makefile @@ -1,68 +1,69 @@ PORTNAME= flycast DISTVERSIONPREFIX= v DISTVERSION= 2.6 +PORTREVISION= 1 CATEGORIES= emulators MAINTAINER= bsdcode@disroot.org COMMENT= Multi-platform Sega Dreamcast emulator WWW= https://github.com/flyinghead/flycast LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= asio>0:net/asio \ websocketpp>0:devel/websocketpp LIB_DEPENDS= libchdr.so:devel/libchdr \ libcurl.so:ftp/curl \ libminiupnpc.so:net/miniupnpc \ libzip.so:archivers/libzip USES= cmake compiler:c++20-lang pkgconfig sdl USE_GITHUB= yes GH_ACCOUNT= flyinghead GH_TUPLE= GPUOpen-LibrariesAndSDKs:VulkanMemoryAllocator:1d8f600fd424278486eade7ed3e877c99f0846b1:VulkanMemoryAllocator/core/deps/VulkanMemoryAllocator \ OrangeFox86:DreamPicoPort-API:8ea3b90e508d4a27a6e3a9f111d88d690bff018c:DreamPicoPortAPI/core/deps/DreamPicoPort-API \ RetroAchievements:rcheevos:926e4608f8dca7989267c787bbefb3ab1c835ac5:rcheevos/core/deps/rcheevos \ herumi:xbyak:0d67fd1530016b7c56f3cd74b3fca920f4c3e2b4:xbyak/core/deps/xbyak \ paullouisageneau:libjuice:5948a4162d37bc213d6051b67ee2876ccc5a99a6:libjuice/core/deps/libjuice \ vinniefalco:LuaBridge:ade28532d998ada20048db7f5a649acaf66a4532:LuaBridge/core/deps/luabridge USE_SDL= sdl2 CMAKE_ON= USE_HOST_LIBCHDR OPTIONS_DEFINE= DOCS LUA OPENMP VULKAN OPTIONS_DEFAULT= ALSA AO LUA OPENMP OSS VULKAN OPTIONS_GROUP= AUDIO OPTIONS_GROUP_AUDIO= ALSA AO OSS PULSEAUDIO # building with lua support fails on i386, see also # https://github.com/vinniefalco/LuaBridge/issues/302 OPTIONS_EXCLUDE_i386= LUA VULKAN_DESC= Build with Vulkan support ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= USE_ALSA AO_LIB_DEPENDS= libao.so:audio/libao AO_CMAKE_BOOL= USE_LIBAO LUA_USES= lua:52+ LUA_CMAKE_BOOL= USE_LUA OPENMP_CMAKE_BOOL= USE_OPENMP OSS_CMAKE_BOOL= USE_OSS PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= USE_PULSEAUDIO VULKAN_BUILD_DEPENDS= glslang>0:graphics/glslang \ vulkan-headers>0:graphics/vulkan-headers VULKAN_CMAKE_BOOL= USE_HOST_GLSLANG \ USE_VULKAN post-install-DOCS-on: (cd ${WRKSRC}/docs && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) .include diff --git a/emulators/ppsspp/Makefile b/emulators/ppsspp/Makefile index 0d2e7b680dc1..737b475c1f07 100644 --- a/emulators/ppsspp/Makefile +++ b/emulators/ppsspp/Makefile @@ -1,106 +1,107 @@ PORTNAME= ppsspp DISTVERSIONPREFIX= v DISTVERSION?= 1.20.2 +PORTREVISION= 1 CATEGORIES= emulators MAINTAINER= kreinholz@gmail.com COMMENT= PSP emulator in C++ with dynarec JIT for x86, ARM, MIPS WWW= https://www.ppsspp.org/ LICENSE= GPLv2+ BSD3CLAUSE LICENSE_COMB= multi LICENSE_FILE= ${WRKSRC}/LICENSE.TXT # Bi-endian architectures default to big for some reason NOT_FOR_ARCHS= mips mips64 powerpc powerpc64 powerpcspe NOT_FOR_ARCHS_REASON= only little-endian is supported, see \ https://github.com/hrydgard/ppsspp/issues/8823 BUILD_DEPENDS= ${LOCALBASE}/ffmpeg3/lib/libavcodec.a:multimedia/ffmpeg3 \ rapidjson>0:devel/rapidjson LIB_DEPENDS= libzip.so:archivers/libzip \ libsnappy.so:archivers/snappy \ libzstd.so:archivers/zstd \ libminiupnpc.so:net/miniupnpc \ libopenxr_loader.so:graphics/openxr \ libfreetype.so:print/freetype2 \ libchdr.so:devel/libchdr RUN_DEPENDS= xdg-open:devel/xdg-utils USES= cmake compiler:c++11-lib gl localbase:ldflags pkgconfig \ desktop-file-utils USE_GITHUB= yes GH_ACCOUNT= hrydgard GH_TUPLE?= Kingcom:armips:v0.11.0-195-ga8d71f0:armips/ext/armips \ hrydgard:glslang:2.3-3991-g50e0708e:glslang/ext/glslang \ KhronosGroup:SPIRV-Cross:4212eef67ed0ca048cb726a6767185504e7695e5:SPIRVCross/ext/SPIRV-Cross \ unknownbrackets:ppsspp-debugger:9776332f720c854ef26f325a0cf9e32c02115a9c:ppssppdebugger/assets/debugger \ google:cpu_features:v0.4.1-211-gfd4ffc1:cpu_features/ext/cpu_features \ RetroAchievements:rcheevos:v12.3.0:rcheevos/ext/rcheevos \ erkkah:naett:5f695cfa9fcbf30668a4d3ac4b4abf1cd89a1302:naett/ext/naett \ hrydgard:ppsspp-lua:7648485f14e8e5ee45e8e39b1eb4d3206dbd405a:ppsspplua/ext/lua \ hrydgard:nanosvg:478dbb8f7ed11c3d9b20b3986a8ee2283f483ef7:nanosvg/ext/nanosvg \ Kethen:aemu_postoffice:f5ae0ce8cac89cfc592047925f2064a84536eeb4:aemu_postoffice/ext/aemu_postoffice \ Kingcom:filesystem:v1.3.2-12-g3f1c185:filesystem/ext/armips/ext/filesystem \ libretro:libretro-common:76a3d54feb0ee0ce9d59b90aa24694f3782063d3:libretrocommon/libretro/libretro-common EXCLUDE= libzip zlib USE_GL= glew opengl CMAKE_ON= ${FREETYPE LIBCHDR LIBZIP MINIUPNPC RAPIDJSON SNAPPY \ ZSTD:L:S/^/USE_SYSTEM_/} USE_VULKAN_DISPLAY_KHR CMAKE_OFF= USE_DISCORD LDFLAGS+= -Wl,--as-needed # ICE/SM/X11/Xext CONFLICTS_INSTALL= ${PORTNAME}-* DESKTOP_ENTRIES= "PPSSPP" \ "" \ "${PORTNAME}" \ "${PORTNAME} %f" \ "Game;Emulator;" \ "" EXTRACT_AFTER_ARGS= ${EXCLUDE:S,^,--exclude ,} SUB_FILES= pkg-message PORTDATA= assets OPTIONS_DEFINE= VULKAN OPTIONS_DEFAULT= VULKAN OPTIONS_SINGLE= GUI OPTIONS_SINGLE_GUI= LIBRETRO SDL OPTIONS_EXCLUDE:= ${OPTIONS_EXCLUDE} ${OPTIONS_SINGLE_GUI} OPTIONS_SLAVE?= SDL LIBRETRO_DESC= libretro core for games/retroarch VULKAN_DESC= Vulkan renderer LIBRETRO_LIB_DEPENDS= libpng.so:graphics/png LIBRETRO_CMAKE_BOOL= LIBRETRO LIBRETRO_PLIST_FILES= lib/libretro/${PORTNAME}_libretro.so LIBRETRO_VARS= CONFLICTS_INSTALL= DESKTOP_ENTRIES= PLIST= PORTDATA= PKGMESSAGE= SUB_FILES= SDL_CATEGORIES= wayland SDL_LIB_DEPENDS= libpng.so:graphics/png SDL_USES= shared-mime-info sdl SDL_USE= SDL=sdl2 SDL_VARS= EXENAME=PPSSPPSDL VULKAN_RUN_DEPENDS= ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader post-patch: @${REINPLACE_CMD} -e 's/Linux/${OPSYS}/' ${WRKSRC}/assets/gamecontrollerdb.txt @${REINPLACE_CMD} -e 's,/usr/share,${PREFIX}/share,' ${WRKSRC}/UI/NativeApp.cpp @${REINPLACE_CMD} -e 's/"unknown"/"${DISTVERSIONFULL}"/' ${WRKSRC}/git-version.cmake @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/cmake/Modules/FindFFmpeg.cmake do-install-LIBRETRO-on: ${MKDIR} ${STAGEDIR}${PREFIX}/${LIBRETRO_PLIST_FILES:H} ${INSTALL_LIB} ${BUILD_WRKSRC}/lib/${LIBRETRO_PLIST_FILES:T} \ ${STAGEDIR}${PREFIX}/${LIBRETRO_PLIST_FILES:H} .if ${OPTIONS_SLAVE} == LIBRETRO . for d in applications icons mime ${PORTNAME} ${RM} -r ${STAGEDIR}${PREFIX}/share/${d} . endfor .endif do-install-SDL-on: .if exists(/usr/bin/elfctl) ${ELFCTL} -e +wxneeded ${STAGEDIR}${PREFIX}/bin/* .endif ${MV} ${STAGEDIR}${PREFIX}/bin/${EXENAME} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} .include