From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id B0FE5158066 for ; Tue, 3 Sep 2024 10:53:09 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id E5F80E2A35; Tue, 3 Sep 2024 10:53:08 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id C6E37E2A35 for ; Tue, 3 Sep 2024 10:53:08 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 036EE343154 for ; Tue, 3 Sep 2024 10:53:08 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 65B9E1F38 for ; Tue, 3 Sep 2024 10:53:06 +0000 (UTC) From: "David Roman" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "David Roman" Message-ID: <1725297512.267c2bbeac133599ef3b6b95aff522d5bf1c3e0b.davidroman@gentoo> Subject: [gentoo-commits] repo/proj/guru:master commit in: app-emulation/box86/ X-VCS-Repository: repo/proj/guru X-VCS-Files: app-emulation/box86/Manifest app-emulation/box86/box86-0.3.0.ebuild app-emulation/box86/box86-0.3.6.ebuild app-emulation/box86/box86-9999.ebuild X-VCS-Directories: app-emulation/box86/ X-VCS-Committer: davidroman X-VCS-Committer-Name: David Roman X-VCS-Revision: 267c2bbeac133599ef3b6b95aff522d5bf1c3e0b X-VCS-Branch: master Date: Tue, 3 Sep 2024 10:53:06 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 6e376d19-511a-48c3-9e53-1e4f7f8146b6 X-Archives-Hash: 3b8aea6c9fb95ba9f44ed3c40789e6a4 commit: 267c2bbeac133599ef3b6b95aff522d5bf1c3e0b Author: Richard-Rogalski tutanota com> AuthorDate: Mon Sep 2 17:14:43 2024 +0000 Commit: David Roman gmail com> CommitDate: Mon Sep 2 17:18:32 2024 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=267c2bbe app-emulation/box86: Added versions 0.3.6 and 9999, QA checks Signed-off-by: Richard Rogalski tutanota.com> app-emulation/box86/Manifest | 1 + app-emulation/box86/box86-0.3.0.ebuild | 28 ++++++++++++--- app-emulation/box86/box86-0.3.6.ebuild | 57 +++++++++++++++++++++++++++++++ app-emulation/box86/box86-9999.ebuild | 62 ++++++++++++++++++++++++++++++++++ 4 files changed, 144 insertions(+), 4 deletions(-) diff --git a/app-emulation/box86/Manifest b/app-emulation/box86/Manifest index 608cb619f..8231c3893 100644 --- a/app-emulation/box86/Manifest +++ b/app-emulation/box86/Manifest @@ -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 diff --git a/app-emulation/box86/box86-0.3.0.ebuild b/app-emulation/box86/box86-0.3.0.ebuild index b37b661ec..ec6db7e10 100644 --- a/app-emulation/box86/box86-0.3.0.ebuild +++ b/app-emulation/box86/box86-0.3.0.ebuild @@ -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=( diff --git a/app-emulation/box86/box86-0.3.6.ebuild b/app-emulation/box86/box86-0.3.6.ebuild new file mode 100644 index 000000000..e921d4b7b --- /dev/null +++ b/app-emulation/box86/box86-0.3.6.ebuild @@ -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" +} diff --git a/app-emulation/box86/box86-9999.ebuild b/app-emulation/box86/box86-9999.ebuild new file mode 100644 index 000000000..fc426c76a --- /dev/null +++ b/app-emulation/box86/box86-9999.ebuild @@ -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" +}