commit:     48812dd8a8a0404a5af28ea207a4320a5922df1c
Author:     Sasha Finkelstein <fnkl.kernel <AT> gmail <DOT> com>
AuthorDate: Tue Jul  8 19:22:53 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Jul 13 08:27:17 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48812dd8

app-emulation/fex-xtajit: Add 2507.1

Signed-off-by: Sasha Finkelstein <fnkl.kernel <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/42933
Closes: https://github.com/gentoo/gentoo/pull/42933
Signed-off-by: Sam James <sam <AT> gentoo.org>

 app-emulation/fex-xtajit/Manifest                 |   1 +
 app-emulation/fex-xtajit/fex-xtajit-2507.1.ebuild | 112 ++++++++++++++++++++++
 2 files changed, 113 insertions(+)

diff --git a/app-emulation/fex-xtajit/Manifest 
b/app-emulation/fex-xtajit/Manifest
index c99148764f29..bce0f29c3839 100644
--- a/app-emulation/fex-xtajit/Manifest
+++ b/app-emulation/fex-xtajit/Manifest
@@ -1,4 +1,5 @@
 DIST FEX-2506.tar.gz 2141240 BLAKE2B 
330cc352d4dfc64605e04c69aef9e6dfa60fe8ac1123b4c759c766c492e22eddd2f27869d369bfe738d90cb73dfed7aa199c684442693625c518d1fb3be58e14
 SHA512 
13eba3a90766bf81ac0d818ebfed99bff39fb6d41d4ea042606b66e645d8cadda03fafae13947634df619c32f943e991c17da6139ea9019e228d05b47ecea7fd
+DIST FEX-2507.1.tar.gz 2178185 BLAKE2B 
b0086f34489edc56cd4cb3dfef53ee9f6acbf544fecb5b5698aa287808fd480929a5a33c1edadfbf25d3bb273aac17656b3b235559273c915fde9089643c69b3
 SHA512 
77ee18ba97f25c328b6e0312551b58106b72a267f1c94eabc397f58aefa8c775dd497f7a2700cf867ffdc93181bd117a8d11d5e4503709540a38d4acc8be06ec
 DIST cpp-optparse-9f94388a339fcbb0bc95c17768eb786c85988f6e.tar.gz 13218 
BLAKE2B 
8a9857b639509d66e59732e3cf84879da6eb714f48d55fe2e00c7ee3e5ae2e0be093eeb1b004b6d070766f5fedfd4173f11f6205a961f9e65bfa7848eb225024
 SHA512 
600559354c8a3e233f7d2d855a8325b747b6656eb05fe13b3fae31f7f41154968b995bc3a519b0c61e5db904d4bca4cb17eb72a2f35a1a273e275ec34593b92f
 DIST fmt-123913715afeb8a437e6388b4473fcc4753e1c9a.tar.gz 704027 BLAKE2B 
cfedab4c5eb083f6cc1b207d832e26f5efe50be740cbfa9cf63810bdbb447c6d1496ab0977c6f78d71389dedc5b4c663be852724838b7789bf7e9b4be90ea692
 SHA512 
730a597be2e31fcd887b6f46f775d02163b0206016b9c0270fe183af37fd7268d9f2d9553c7b25b7df526d464c6f59750e542e6907d677d7181b388817135515
 DIST jemalloc-02ca52b5fefc0ccd0d2c4eaa1d17989cdd641927.tar.gz 847982 BLAKE2B 
7676066b106af133bb7dab4518aa63fe10341cf86175f8ed664b4850f240535c2107698876e9406a0f36e312f89cdb6785393e3883c212fd9cba3031047814ce
 SHA512 
b15e1fdcff9f593dbaca88337a2ab784cb66491ef8794f72fbf67617c1f396c57ba1664deb53fa18e5c21a4bd777809ae4c03b1ce48f6e80ccabbcbd7668651d

diff --git a/app-emulation/fex-xtajit/fex-xtajit-2507.1.ebuild 
b/app-emulation/fex-xtajit/fex-xtajit-2507.1.ebuild
new file mode 100644
index 000000000000..2d0bd6977a90
--- /dev/null
+++ b/app-emulation/fex-xtajit/fex-xtajit-2507.1.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit flag-o-matic ninja-utils toolchain-funcs
+
+DESCRIPTION="A wine emulation dll for running x86 application on an arm64 host"
+HOMEPAGE="https://fex-emu.com";
+
+JEMALLOC_HASH="02ca52b5fefc0ccd0d2c4eaa1d17989cdd641927"
+CPP_OPTPARSE_HASH="9f94388a339fcbb0bc95c17768eb786c85988f6e"
+ROBIN_MAP_HASH="d5683d9f1891e5b04e3e3b2192b5349dc8d814ea"
+FMT_HASH="123913715afeb8a437e6388b4473fcc4753e1c9a"
+XXHASH_HASH="bbb27a5efb85b92a0486cf361a8635715a53f6ba"
+
+SRC_URI="
+       https://github.com/FEX-Emu/jemalloc/archive/${JEMALLOC_HASH}.tar.gz -> 
jemalloc-${JEMALLOC_HASH}.tar.gz
+       
https://github.com/Sonicadvance1/cpp-optparse/archive/${CPP_OPTPARSE_HASH}.tar.gz
 -> cpp-optparse-${CPP_OPTPARSE_HASH}.tar.gz
+       https://github.com/FEX-Emu/robin-map/archive/${ROBIN_MAP_HASH}.tar.gz 
-> robin-map-${ROBIN_MAP_HASH}.tar.gz
+       https://github.com/Cyan4973/xxHash/archive/${XXHASH_HASH}.tar.gz -> 
xxhash-${XXHASH_HASH}.tar.gz
+       https://github.com/fmtlib/fmt/archive/${FMT_HASH}.tar.gz -> 
fmt-${FMT_HASH}.tar.gz
+       https://github.com/FEX-Emu/FEX/archive/refs/tags/FEX-${PV}.tar.gz
+"
+
+S="${WORKDIR}/FEX-FEX-${PV}"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="-* ~arm64"
+BDEPEND="
+       dev-build/cmake
+       >=dev-util/llvm-mingw64-13.0.0
+       llvm-core/clang
+       llvm-core/llvm
+"
+
+src_unpack() {
+       default
+       local -A deps=(
+               jemalloc "jemalloc-${JEMALLOC_HASH}"
+               robin-map "robin-map-${ROBIN_MAP_HASH}"
+               xxhash "xxHash-${XXHASH_HASH}"
+               fmt "fmt-${FMT_HASH}"
+       )
+       for dep in "${!deps[@]}"; do
+               rmdir "${S}/External/${dep}" || die
+               mv "${WORKDIR}/${deps[${dep}]}" "${S}/External/${dep}"
+       done
+       rmdir "${S}/Source/Common/cpp-optparse" || die
+       mv "${WORKDIR}/cpp-optparse-${CPP_OPTPARSE_HASH}" 
"${S}/Source/Common/cpp-optparse" || die
+}
+
+src_configure() {
+       PATH="${BROOT}/usr/lib/llvm-mingw64/bin:${PATH}"
+       CHOST=aarch64-w64-mingw32
+       CC=${CHOST}-clang
+       CXX=${CHOST}-clang++
+       LD=${CHOST}-clang
+       AR=llvm-ar
+       NM=llvm-nm
+       RANLIB=llvm-ranlib
+       STRIP=llvm-strip
+       RC=${CHOST}-windres
+       KERNEL=Winnt
+       tc-export CC CXX LD AR NM OBJDUMP RANLIB PKG_CONFIG
+
+       strip-flags
+       filter-lto
+       filter-flags '-fuse-ld=*'
+       strip-unsupported-flags
+
+       mkdir "${WORKDIR}/build" || die
+       pushd "${WORKDIR}/build" >/dev/null || die
+       cmake -GNinja \
+               -DCMAKE_C_COMPILER_WORKS=1 \
+               -DCMAKE_CXX_COMPILER_WORKS=1 \
+               -DCMAKE_BUILD_TYPE=Release \
+               -DCMAKE_TOOLCHAIN_FILE="${S}/Data/CMake/toolchain_mingw.cmake" \
+               -DCMAKE_INSTALL_LIBDIR=/usr/lib/fex-xtajit \
+               -DENABLE_LTO=False \
+               -DMINGW_TRIPLE=aarch64-w64-mingw32 \
+               -DBUILD_TESTS=False \
+               -DENABLE_JEMALLOC_GLIBC_ALLOC=False \
+               -DCMAKE_INSTALL_PREFIX=/usr \
+               -DENABLE_CCACHE=FALSE \
+               -DBUILD_FEXCONFIG=FALSE \
+               -DMINGW_BUILD=1 \
+               -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \
+               -DCMAKE_DISABLE_FIND_PACKAGE_fmt=true \
+               "${S}" || die
+       popd >/dev/null || die
+}
+
+src_compile() {
+       pushd "${WORKDIR}/build" >/dev/null || die
+       eninja
+       popd >/dev/null || die
+}
+
+src_install() {
+       pushd "${WORKDIR}/build" >/dev/null || die
+       DESTDIR="${D}" eninja install
+       popd >/dev/null || die
+       rm -r "${ED}/usr/"{include,share} || die
+}
+
+pkg_postinst() {
+       elog "If you had already created a wine prefix, run wineboot -u"
+       elog "to install x86 emulation support, or update it's local copy"
+       elog "of the relevant files."
+}

Reply via email to