From 7c082a815214004ff7fcc66bf14c029c62d88f41 Mon Sep 17 00:00:00 2001 From: Pavel Sobolev Date: Sun, 29 Mar 2026 16:38:24 +0300 Subject: [PATCH] games-emulation/azahar: add 2125.0.1 Signed-off-by: Pavel Sobolev --- games-emulation/azahar/Manifest | 1 + games-emulation/azahar/azahar-2125.0.1.ebuild | 140 ++++++++++++++++++ 2 files changed, 141 insertions(+) create mode 100644 games-emulation/azahar/azahar-2125.0.1.ebuild diff --git a/games-emulation/azahar/Manifest b/games-emulation/azahar/Manifest index e8beb34649..f3a6209f4e 100644 --- a/games-emulation/azahar/Manifest +++ b/games-emulation/azahar/Manifest @@ -1 +1,2 @@ DIST azahar-2124.3.tar.xz 40975076 BLAKE2B 842b0fb864b3e046cf2709478fea00359ee1ea49ceb40740e43e47cab078d86af6bda295354f5888089adea3e88d4c64a2d829523f82d7d0ccb587922b059659 SHA512 d5c2603f7ad0445a26671476793072082797dfc51fde9151a869156b15704c5ec4a9c594af5dc6b354060d9f3e19a8cc731b8aa5f69889b251a44fbec8024ac3 +DIST azahar-2125.0.1.tar.xz 41541704 BLAKE2B 15c029c1399082d98c6b2dc38c1c7edbb15ab3ddd23e6a35e2c832afa43ac4143fcea8be5e4fb91c8b2b62fc8568b13133bec910904e5ccfd9940d23517fb866 SHA512 d7b9654116c04e3d5ad0922244cc71b50f8e82e62595266e5340382d05d22674180d544c6314cb68f4ace860ad2053e8da51886a74455f0243b7bbbfaac899ba diff --git a/games-emulation/azahar/azahar-2125.0.1.ebuild b/games-emulation/azahar/azahar-2125.0.1.ebuild new file mode 100644 index 0000000000..34f07ff04b --- /dev/null +++ b/games-emulation/azahar/azahar-2125.0.1.ebuild @@ -0,0 +1,140 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit cmake xdg + +DESCRIPTION="An open-source 3DS emulator project based on Citra" +HOMEPAGE="https://azahar-emu.org" +SRC_URI=" + https://github.com/azahar-emu/azahar/releases/download/${PV}/azahar-unified-source-${PV}.tar.xz -> ${P}.tar.xz +" + +S="${WORKDIR}/azahar-unified-source-${PV}" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64" +IUSE="cpu_flags_x86_sse4_2 test" +RESTRICT="!test? ( test )" + +RDEPEND=" + dev-cpp/nlohmann_json + dev-cpp/robin-map + dev-libs/boost:= + dev-libs/crypto++:= + dev-libs/dynarmic + dev-libs/inih + dev-libs/libfmt:= + dev-libs/microprofile + dev-libs/nihstro + dev-libs/openssl:= + dev-libs/sirit + dev-libs/teakra + dev-libs/xxhash + dev-qt/qtbase:6[concurrent,dbus,widgets] + dev-qt/qtmultimedia:6 + dev-util/glslang + media-libs/cubeb + media-libs/faad2 + media-libs/libsdl2 + media-libs/libsoundtouch:= + media-libs/openal + media-video/ffmpeg + net-libs/enet + virtual/libusb +" +DEPEND=" + ${RDEPEND} + dev-util/spirv-headers + dev-util/vulkan-headers + media-libs/VulkanMemoryAllocator + amd64? ( dev-libs/xbyak ) + arm64? ( dev-libs/oaknut ) +" +BDEPEND=" + test? ( >=dev-cpp/catch-3:0 ) +" + +PATCHES=( + "${FILESDIR}/${PN}-2122.1-explicitly-require-the-tsl-robin-map-package.patch" + "${FILESDIR}/${PN}-2122.1-import-some-of-the-symbols-from-spv.patch" + "${FILESDIR}/${PN}-2122.1-rename-AV_OPT_TYPE_CHANNEL_LAYOUT-to-AV_OPT_TYPE_CHL.patch" + "${FILESDIR}/${PN}-2122.1-use-the-system-faad2-library.patch" + "${FILESDIR}/${PN}-2122.1-use-the-system-teakra-library.patch" + "${FILESDIR}/${PN}-2123-don-t-build-spirv-tools.patch" + "${FILESDIR}/${PN}-2123.1-use-the-system-oaknut-library.patch" + "${FILESDIR}/${PN}-2123.2-use-the-system-sirit-library.patch" + "${FILESDIR}/${PN}-2124-use-the-system-xxhash-library.patch" +) + +# [directory]=license +declare -A KEEP_BUNDLED=( + # Generated or copied files for internal usage + [cmake-modules]=Boost-1.0 + [dds-ktx]=BSD-2 + [gamemode]=BSD + [glad]=MIT + [open_source_archives]=GPL-2+ + + # Reasons to keep are in `src_configure` + [httplib]=MIT + [lodepng]=ZLIB + [zstd]="GPL-2" +) + +add_bundled_licenses() { + for license in "${KEEP_BUNDLED[@]}"; do + if [[ -n "$license" ]]; then + LICENSE+=" ${license}" + fi + done +} +add_bundled_licenses + +src_prepare() { + local s remove=() + for s in externals/*; do + [[ -f ${s} ]] && continue + if ! has "${s#externals/}" "${!KEEP_BUNDLED[@]}"; then + remove+=( "${s}" ) + fi + done + + einfo "removing sources: ${remove[*]}" + rm -r "${remove[@]}" || die + + cmake_src_prepare +} + +src_configure() { + local mycmakeargs=( + -DBUILD_SHARED_LIBS=no + -DCITRA_USE_PRECOMPILED_HEADERS=no + -DCITRA_WARNINGS_AS_ERRORS=no + -DENABLE_WEB_SERVICE=no + -DUSE_SYSTEM_LIBS=yes + + -DENABLE_SSE42=$(usex cpu_flags_x86_sse4_2) + -DENABLE_TESTS=$(usex test) + + # Shared library is not supported + -DDISABLE_SYSTEM_CPP_HTTPLIB=yes + + # Lodepng is designed to be bundled + -DDISABLE_SYSTEM_LODEPNG=yes + + # Upstream depends on `zstd/contrib/seekable_format/zstd_seekable.h` + -DDISABLE_SYSTEM_ZSTD=yes + + -Wno-dev + ) + + cmake_src_configure +} + +src_install() { + cmake_src_install + dodoc license.txt +}