mirror of
https://github.com/gentoo-mirror/guru.git
synced 2025-04-10 12:08:43 -04:00
app-emulation/box86: Added versions 0.3.6 and 9999, QA checks
Signed-off-by: Richard Rogalski <rrogalski@tutanota.com>
This commit is contained in:
parent
4e96362211
commit
267c2bbeac
@ -1 +1,2 @@
|
||||
DIST box86-0.3.0.tar.gz 3175056 BLAKE2B 4fdef0301a53278da82eb18f235c38694d3d5b59c1386e4be14f6efd676499c5082c061f56fe9222f5994f7f043a0aa82019c42bf9b867ab8215c11ed3782f82 SHA512 133957b5b3194a034f383dd2cba503797468b973127b10b3a4bac458e1dce43b4f61efd4ff9ad0cabf7935f9b34a5287cbf3b9fee8c40c9b4bfbe206b0566957
|
||||
DIST box86-0.3.6.tar.gz 3511551 BLAKE2B 2f9211a1a472c972d2327d76f27a4f06dd2a6da78b764302659a73c0e10d7f96baf2e659e5dc0b88868fb08034346385c7b9f6b4c32abefec0d44b16dc59cbf6 SHA512 12dd71c46cf7dbb2038b543d36a0c81cd28f3f6266c096836ce2566eb3fb338b9ebb0ff25fd7b8a249d936799ddaf2579ee1f82f09e71310009998c2167fbb12
|
||||
|
@ -1,9 +1,9 @@
|
||||
# Copyright 2023 Gentoo Authors
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake optfeature flag-o-matic
|
||||
inherit cmake optfeature toolchain-funcs flag-o-matic
|
||||
|
||||
DESCRIPTION="Linux Userspace x86 Emulator with a twist"
|
||||
HOMEPAGE="https://box86.org"
|
||||
@ -11,11 +11,31 @@ SRC_URI="https://github.com/ptitSeb/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~arm ~arm64"
|
||||
KEYWORDS="~arm"
|
||||
IUSE="aot"
|
||||
REQUIRED_USE="aot? ( || ( arm arm64 ) )" #depends on NEON, VFPv3, and non-thumb ABI, I see no good way to check
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
pkg_setup() {
|
||||
if [[ ${CHOST} == *64* ]]; then
|
||||
ewarn ""
|
||||
ewarn "box86 relies on a toolchain capable of emitting 32-bit code, and a 32 bit libc."
|
||||
ewarn "If you're on a non multilib 64-bit profile, you will need to add multilib capabilities to it, see:"
|
||||
ewarn "https://wiki.gentoo.org/wiki/User:Aslantis/Multilib_on_targets_without_official_multilib_profiles"
|
||||
ewarn "Alternatively, box64 may work on your system, and can be used in tandem with wine's WOW64 for windows programs."
|
||||
ewarn "box86 also doesn't support being built for the thumb ABI, if you have a thumb system you'll need -marm in your *FLAGS"
|
||||
ewarn ""
|
||||
fi
|
||||
|
||||
if [[ $(tc-endian) == big ]]; then
|
||||
eerror "box86/box64 sadly does not support big endian systems."
|
||||
die "big endian not supported!"
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} != *gnu* || ${CHOST} != *linux* ]]; then
|
||||
eerror "box86/64 requires a glibc and a linux system. Musl support is possible, upstream welcomes PRs!"
|
||||
die "Not a GNU+Linux system"
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a mycmakeargs=(
|
||||
|
57
app-emulation/box86/box86-0.3.6.ebuild
Normal file
57
app-emulation/box86/box86-0.3.6.ebuild
Normal file
@ -0,0 +1,57 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake optfeature toolchain-funcs flag-o-matic
|
||||
|
||||
DESCRIPTION="Linux Userspace x86 Emulator with a twist"
|
||||
HOMEPAGE="https://box86.org"
|
||||
SRC_URI="https://github.com/ptitSeb/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~arm"
|
||||
IUSE="aot"
|
||||
REQUIRED_USE="aot? ( || ( arm arm64 ) )" #depends on NEON, VFPv3, and non-thumb ABI, I see no good way to check
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${CHOST} == *64* ]]; then
|
||||
ewarn ""
|
||||
ewarn "box86 relies on a toolchain capable of emitting 32-bit code, and a 32 bit libc."
|
||||
ewarn "If you're on a non multilib 64-bit profile, you will need to add multilib capabilities to it, see:"
|
||||
ewarn "https://wiki.gentoo.org/wiki/User:Aslantis/Multilib_on_targets_without_official_multilib_profiles"
|
||||
ewarn "Alternatively, box64 may work on your system, and can be used in tandem with wine's WOW64 for windows programs."
|
||||
ewarn "box86 also doesn't support being built for the thumb ABI, if you have a thumb system you'll need -marm in your *FLAGS"
|
||||
ewarn ""
|
||||
fi
|
||||
|
||||
if [[ $(tc-endian) == big ]]; then
|
||||
eerror "box86/box64 sadly does not support big endian systems."
|
||||
die "big endian not supported!"
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} != *gnu* || ${CHOST} != *linux* ]]; then
|
||||
eerror "box86/64 requires a glibc and a linux system. Musl support is possible, upstream welcomes PRs!"
|
||||
die "Not a GNU+Linux system"
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a mycmakeargs=(
|
||||
-DNOGIT=1
|
||||
-DARM_DYNAREC=0
|
||||
)
|
||||
|
||||
(use amd64 || use x86) && mycmakeargs+=( -DLD80BITS=1 -DNOALIGN=1 )
|
||||
(use arm64 || use arm) && mycmakeargs+=( -DARM_DYNAREC=$(usex aot) )
|
||||
|
||||
append-flags "-m32"
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "OpenGL for GLES devices" \
|
||||
"media-libs/gl4es"
|
||||
}
|
62
app-emulation/box86/box86-9999.ebuild
Normal file
62
app-emulation/box86/box86-9999.ebuild
Normal file
@ -0,0 +1,62 @@
|
||||
# Copyright 2024 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
inherit cmake optfeature toolchain-funcs flag-o-matic git-r3
|
||||
|
||||
DESCRIPTION="Linux Userspace x86 Emulator with a twist"
|
||||
HOMEPAGE="https://box86.org"
|
||||
EGIT_REPO_URI="https://github.com/ptitSeb/${PN}"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
IUSE="aot"
|
||||
REQUIRED_USE="aot? ( || ( arm arm64 ) )" #depends on NEON, VFPv3, and non-thumb ABI, I see no good way to check
|
||||
|
||||
pkg_setup() {
|
||||
if [[ ${CHOST} == *64* ]]; then
|
||||
ewarn ""
|
||||
ewarn "box86 relies on a toolchain capable of emitting 32-bit code, and a 32 bit libc."
|
||||
ewarn "If you're on a non multilib 64-bit profile, you will need to add multilib capabilities to it, see:"
|
||||
ewarn "https://wiki.gentoo.org/wiki/User:Aslantis/Multilib_on_targets_without_official_multilib_profiles"
|
||||
ewarn "Alternatively, box64 may work on your system, and can be used in tandem with wine's WOW64 for windows programs."
|
||||
ewarn "box86 also doesn't support being built for the thumb ABI, if you have a thumb system you'll need -marm in your *FLAGS"
|
||||
ewarn ""
|
||||
fi
|
||||
|
||||
if [[ $(tc-endian) == big ]]; then
|
||||
eerror "box86/box64 sadly does not support big endian systems."
|
||||
die "big endian not supported!"
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} != *linux* ]]; then
|
||||
eerror "box86/64 requires a linux system."
|
||||
die "Not a GNU+Linux system"
|
||||
fi
|
||||
|
||||
if [[ ${CHOST} != *gnu* ]]; then #in case musl support is added in master branch
|
||||
ewarn ""
|
||||
ewarn "box86/64 will likely not build or run on a non-glibc system."
|
||||
ewarn ""
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local -a mycmakeargs=(
|
||||
-DNOGIT=0
|
||||
-DARM_DYNAREC=0
|
||||
)
|
||||
|
||||
(use amd64 || use x86) && mycmakeargs+=( -DLD80BITS=1 -DNOALIGN=1 )
|
||||
(use arm64 || use arm) && mycmakeargs+=( -DARM_DYNAREC=$(usex aot) )
|
||||
|
||||
append-flags "-m32"
|
||||
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "OpenGL for GLES devices" \
|
||||
"media-libs/gl4es"
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user