public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/ada-bootstrap/
Date: Wed, 22 Jan 2025 19:46:38 +0000 (UTC)	[thread overview]
Message-ID: <1737575174.fd80b52f6eb59b31526f4e75e834240e60408f0a.sam@gentoo> (raw)

commit:     fd80b52f6eb59b31526f4e75e834240e60408f0a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 22 16:41:42 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Wed Jan 22 19:46:14 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd80b52f

dev-lang/ada-bootstrap: add 12

No ~loong as GCC 12 didn't support it. Adding older branches to facilitate
GCC testing. I originally wasn't going to bother but I'd like to bisect
an issue on ARM, so...

Built with ::gentoo at 6895c729372e48a5f596abd65cfeb26c178c5b17, same
stage3 as before for earlier binaries (stage3-amd64-hardened-systemd-20241214T201851Z).

The only quirk is, for `build-ada-bootsraps`, crossdev's behaviour with
--gcc to specify certain versions may use unkeyworded GCC in a particular
slot (not checked), but easy to reproduce still with the right ::gentoo commit.

See https://github.com/thesamesam/sam-gentoo-scripts/blob/2c192ac1461144fb2a2ab83014ad13794e4efc3d/niche/build-ada-bootstraps.

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-lang/ada-bootstrap/Manifest                |  15 +++
 dev-lang/ada-bootstrap/ada-bootstrap-12.ebuild | 121 +++++++++++++++++++++++++
 2 files changed, 136 insertions(+)

diff --git a/dev-lang/ada-bootstrap/Manifest b/dev-lang/ada-bootstrap/Manifest
index ab821112f566..4e13472ea2d8 100644
--- a/dev-lang/ada-bootstrap/Manifest
+++ b/dev-lang/ada-bootstrap/Manifest
@@ -1,3 +1,18 @@
+DIST ada-bootstrap-12-aarch64-unknown-linux-gnu.gpkg.tar 37099520 BLAKE2B 408e38b64fa027098b7d815a43c10306735449f947f0b10e2d3014bac4b76e3dd834097529e6b7ca10d83f27acb3b3ef8bfe1faae498407bd306d8cb67341a37 SHA512 c6366169012c463ca10fe560bd1c33f9b147f7a6e1c025954d7f5ac1ba8fb2a4ebf0eac5fa76bfc295bb3a1f74bc98a96773b2bcc55672405b576e0854b1088f
+DIST ada-bootstrap-12-alpha-unknown-linux-gnu.gpkg.tar 38246400 BLAKE2B 5ed3e1e5dd6e356142df2062897dc856ccfbbc076d8aa479b81a8a0831a6f4a70a8b09827ea7b569ac5085d75a07a50d18eb682d2c3421fd29743c3260bfe102 SHA512 ab212c3a92384290b40702fb396fbe85fa118c1304617a7a2ddc475b36e9410c0588b88c038a4e7bb9e12610e3d65513efc5cb7189fd131d2472c2768e6ba19a
+DIST ada-bootstrap-12-armv6j-softfp-linux-gnueabi.gpkg.tar 28948480 BLAKE2B e65b455718c5d70e5eb17ed09067e8eb5a4a901065da1f7c0a6f2818756b2a684de7a3d2aecd046c0e92e5b6282dd080a9d10772a79e3a0b58ba5e2a1a5ee21f SHA512 a3034c2937ba6f61518f789e237f4f3759c7acdcdd994914c891a3543b7e6540190a694cb6f7af73f2abdaf57f43ee54bb098a3d83afdcb66224413a871fb15f
+DIST ada-bootstrap-12-armv6j-unknown-linux-gnueabihf.gpkg.tar 28733440 BLAKE2B 3284df86d30cdde59bc6aedbc62022288acb4ea9d384050382071472b8f1e536fd0d55125cf9d73f2a616c7adcc8ad107f061c0e9c966988e584d12ac507e74c SHA512 bab67cfbd623996e9e095c5ab95b380020f8517bc3815976d6274ce802ef175438afc348b36ce8e6631b7fc62d51ed5af8f57748457d304e1590006399ea656d
+DIST ada-bootstrap-12-armv7a-softfp-linux-gnueabi.gpkg.tar 28579840 BLAKE2B aecc4661c3de5ebc1b6c271efc018d52707f727cb2a1af7168621937ab35c58bd5da788f2b8e3993e8b1d8b45b957026ce02b12cfd28a3afd4891572a8e315a9 SHA512 4eb43ecfadbc6cbe57be312567c049ffb6a4b955692f081ddf896d1f9f19140631c2bf65596f69677e8f6bdecc82ec79aee8a9da6d94d7291a9ff925597d074a
+DIST ada-bootstrap-12-armv7a-unknown-linux-gnueabihf.gpkg.tar 28426240 BLAKE2B 2b98f358f327ce4114cf91bcf21973d173dcfafeb0b509f5dddc41d4911015c17d41029aec615f415606c009dfd506989e28ba83822fa31fc027393664a4d776 SHA512 bc2c28e8d776ae57a9a6689ef112df26d0e2a817f8e3d8c55c80c9509bcb710cd5052cec090c8d062a4c1711b2449282fb8821ae375c1b235d436f25a475c414
+DIST ada-bootstrap-12-hppa1.1-unknown-linux-gnu.gpkg.tar 29132800 BLAKE2B d66b5a47521ec1a152f3f805a3e2e8d7d87780412171cd58f4a37e094332a96ab5ccbd7ac4fb97470174249c9ac295ac65c39efb2bf7e248cbbba9851dd4775b SHA512 9bcbd6f99dd541f0eaa9c08bc616da577d54e01afa4d3f1e4174c8aa40c8d19c49253c7b686eee85d1ee0a1bf396783f064646a36f037b78eeae9103f58ef660
+DIST ada-bootstrap-12-hppa2.0-unknown-linux-gnu.gpkg.tar 28897280 BLAKE2B 77ef1f368083d190ca1322c601b5d7300a7f653297e28aa05d37c41b8885109d471d664de4b2e71e9889d0e2cc02c73fa832404e490a2ebf4d6714d4ecd30028 SHA512 2756b14dcd2f1fe9c8a23ea86d18ea04e59d3e5dff0433aff97dc7aa70562f9311922fece3ed75ec5339b8ead14cd14a7f8557bde4d42568a9adb0feb43ed4ce
+DIST ada-bootstrap-12-powerpc-unknown-linux-gnu.gpkg.tar 25845760 BLAKE2B 61fcae620cb16b9f6be90d02b112f13283e746dfaea02693971e5cecc2a105d9c04a08baf34c96a43c09da3de25c57aa7ca0e7077affe49503d794e63539f099 SHA512 d19b4457f0581b8b49f209ded27789622c34cc95f605fe02e1f96250cfc45207d7fbf38ce53057ba7cd638bcc99febe347b582995f1afa480122d64454b5aa8f
+DIST ada-bootstrap-12-powerpc64-unknown-linux-gnu.gpkg.tar 30289920 BLAKE2B ec177ccca0115da4a15e8ffe3ddb13e04ffbdd14098aaa5f1a48182c809823ea00b9ce45cf83565d8666bcdb3a5313b8294e488cf4162a85ae1e3336024709bb SHA512 4598fff58a87360b5eacfaceea4de1bf3167a41a7063a964e71ce91bd849090376b77fe352cf2521afffc35f2b6e5d28157ac822018f4e5ea444a1e91a1eaf2f
+DIST ada-bootstrap-12-powerpc64le-unknown-linux-gnu.gpkg.tar 30167040 BLAKE2B e6093fd663714c05ed77ba320997c17cd8f3d1de5e3200c7429a87f0ae7895a880653f1af69a0646ea420becb21dd07a79eeb6ad52b858a84ca454e08a979912 SHA512 0e29b47e971c7722e457b373993a4168b82edadd941aa74292a5638e5a3a8030753c5052c500f376bfc756d7d0798fdc425f6a1e4b034683162325566256dc08
+DIST ada-bootstrap-12-riscv64-unknown-linux-gnu.gpkg.tar 35594240 BLAKE2B cf810466f05fd495e2094a3518d79bfd120ff574d045f3930bc4a0dfa77febbc60c335774ac7af40940c9248b11bc7372e3b49a6164175e93f33c3adf07863e0 SHA512 041b247ea08f4739a2933d0b78aa164ac294cb1c627c19af560f52fe6f1c9130836c1810703a83ed9d67c79004ef922d3e48e8cba43889bcc945b98153d85d5b
+DIST ada-bootstrap-12-s390-ibm-linux-gnu.gpkg.tar 24535040 BLAKE2B 5933ef5d17d5fe65e3be538e25d5a13144d5debcca1cc1346051df266065bb4d4c16ba5ea5c7206ab34fede09c1c364ce1fe5770e3b9fe37fb007e59449ebe40 SHA512 bc040b816260e6e4e6fa297ff7a595f3ecd11e49b08565f0fee6d3ce2c9ea64fda6c559506db8ebfbfc07211cff5d2386407032f1e58d408ae11db2db450ef8d
+DIST ada-bootstrap-12-s390x-ibm-linux-gnu.gpkg.tar 25466880 BLAKE2B 3960c1d8c5723e82257b4ebf4c154757ba7e8c4fdebde912d25b00f37304e626f2fc8d2c9cb1b8a2e6d15331a2c0828d1b004d67f2d4401613127dbb0289f261 SHA512 4c9c46055914617d46327b70b21861cefee7ffc06651aab5b3ebf64e27f11ec576bffbcf84ab64b28e0a4e0f98e8fdfea6be9896e36cee4453bd66d36711c60e
+DIST ada-bootstrap-12-sparc64-unknown-linux-gnu.gpkg.tar 23060480 BLAKE2B b4655c7958fe98179ab55b46b71db66caee430b27400ccb9ee8f67ae39edad0354381af2fc1c426b82870c82969d4f5b2208e4ba06dc5b161986dbacea32ecf4 SHA512 5a4f86bd8ce616c46478dd90e3c63b37c4c3838b5944afc0bb1a67d4a394b103fce037dacbdb7faee190f44f2b93f89c5f76bf7f1a4620c54afce84078fccf97
 DIST ada-bootstrap-14-aarch64-unknown-linux-gnu.gpkg.tar 44759040 BLAKE2B 4c3440bf35f14dc93e7d9265f90bca0cf534bbc2cd913f2d7356d674d9f4bc6a691b812c3c5f7d54d4fc63ad7f67ff06dd09afb5c3d008666e747dace5d3940a SHA512 8253ac27650398192081ebc8f352679b2e6fdad0cc8d52df176a1944a6da373e0adce6acc0bdbdbb3c6c37f1d666d2839fae06b86814e6e1ab7c6f6efea128ba
 DIST ada-bootstrap-14-alpha-unknown-linux-gnu.gpkg.tar 44359680 BLAKE2B 8ca83caa392356901fbe299c83efce9e22501e9251d4a8bac68c113630507b209e4efb4b3a094f4dcf73ff9a3714b1f881ae42ea373e02bd8d720cb02cb11427 SHA512 67ba8c0e63a69744fc34a04fa1dda34d2958fd693f4a0f1449b897a541854ef8c1f2a09a0375223392430313184a6db87b72fbee5fecb10af7ef40db7517edbe
 DIST ada-bootstrap-14-armv6j-softfp-linux-gnueabi.gpkg.tar 38379520 BLAKE2B 6ad7988780d1961a5b8c743ad2bc83c8da7173b53ecae3a3d82e02e4d425cdd49555bc6bb76f17f08cb4378b13e2a98bcfbcc8ff54e6a63397893ec9a0c3b6b4 SHA512 b253218ddfaeff7216b8770f251a4ffd3fbcf6b3d487e505bab7ebc3730bb9f616ee4f46d5c77a2c6a76c2bca0257dfff6428bb75c86bb977ea1f4a49e3cb103

diff --git a/dev-lang/ada-bootstrap/ada-bootstrap-12.ebuild b/dev-lang/ada-bootstrap/ada-bootstrap-12.ebuild
new file mode 100644
index 000000000000..26ffd1b4ef9f
--- /dev/null
+++ b/dev-lang/ada-bootstrap/ada-bootstrap-12.ebuild
@@ -0,0 +1,121 @@
+# Copyright 2024-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+# The binaries in SRC_URI are generated by the following (roughly):
+# * taking an amd64 stage3
+# * adding USE=ada to make.conf
+# * running `crossdev ${CHOST} --ex-gcc -S`
+# * running `USE=ada ${CHOST}-emerge -v1 gcc`
+# * copy /usr/${CHOST}/var/cache/binpkgs/sys-devel/gcc* into
+#   ada-bootstrap-${PV}-${CHOST}.gpkg.tar
+#
+# The full script is at https://github.com/thesamesam/sam-gentoo-scripts/blob/91558fb51c56a661d6f374507888ff67725ca660/build-ada-bootstraps.
+#
+# Binaries in SRC_URI are regular Gentoo binpkgs in the GPKG format.
+#
+# Note: of course, the used GCC on both CBUILD and CHOST
+# must be the same version, correspond to ${PV} in ada-bootstrap,
+# and be at most the newest stable GCC (ideally older).
+inherit unpacker
+
+DESCRIPTION="Binary bootstrap compiler for GNAT (Ada compiler)"
+HOMEPAGE="https://wiki.gentoo.org/wiki/Project:Ada"
+SRC_URI="
+	alpha? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-alpha-unknown-linux-gnu.gpkg.tar
+	)
+	arm64? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-aarch64-unknown-linux-gnu.gpkg.tar
+	)
+	arm? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-armv6j-softfp-linux-gnueabi.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-armv6j-unknown-linux-gnueabihf.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-armv7a-softfp-linux-gnueabi.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-armv7a-unknown-linux-gnueabihf.gpkg.tar
+	)
+	hppa? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-hppa1.1-unknown-linux-gnu.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-hppa2.0-unknown-linux-gnu.gpkg.tar
+	)
+	ppc? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-powerpc-unknown-linux-gnu.gpkg.tar
+	)
+	ppc64? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-powerpc64le-unknown-linux-gnu.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-powerpc64-unknown-linux-gnu.gpkg.tar
+	)
+	riscv? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-riscv64-unknown-linux-gnu.gpkg.tar
+	)
+	sparc? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-sparc64-unknown-linux-gnu.gpkg.tar
+	)
+	s390? (
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-s390-ibm-linux-gnu.gpkg.tar
+		https://dev.gentoo.org/~sam/distfiles/${CATEGORY}/${PN}/${P}-s390x-ibm-linux-gnu.gpkg.tar
+	)
+"
+S=${WORKDIR}
+
+LICENSE="GPL-2 GPL-3"
+SLOT="0"
+KEYWORDS="-* ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc"
+
+RDEPEND="
+	>=dev-libs/gmp-4.3.2:=
+	>=dev-libs/mpfr-2.4.2:=
+	>=dev-libs/mpc-0.8.1:=
+	sys-libs/zlib
+	virtual/libiconv
+"
+
+src_unpack() {
+	# We want to unpack only the appropriate tarball for CHOST (e.g. on arm).
+	TARBALL_TO_UNPACK=
+
+	local archive
+	for archive in ${A} ; do
+		local tarball_chost=${archive/${P}-}
+		tarball_chost=${tarball_chost%%.gpkg.tar}
+
+		if [[ ${tarball_chost} == ${CHOST} ]] ; then
+			TARBALL_TO_UNPACK=${archive}
+			break
+		fi
+	done
+
+	if [[ -z ${TARBALL_TO_UNPACK} ]] ; then
+		die "No tarball found for CHOST=${CHOST}. Please file a bug at bugs.gentoo.org."
+	fi
+
+	unpack_gpkg "${TARBALL_TO_UNPACK}"
+}
+
+src_install() {
+	local chost=${TARBALL_TO_UNPACK/${P}-}
+	chost=${chost%%.gpkg.tar}
+
+	BINPKG=$(find "${WORKDIR}"/ -type d -mindepth 1 -maxdepth 1 -iname 'gcc-*')
+	BINPKG="${BINPKG#${WORKDIR}}"
+
+	dodir /usr/lib/ada-bootstrap
+	mv "${WORKDIR}"/${BINPKG}/image/usr/ "${ED}"/usr/lib/ada-bootstrap || die
+
+	# Make `gcc-config`-style symlinks
+	insinto /usr/lib/ada-bootstrap/bin
+	local tool
+	for tool in gcc gnat{,bind,chop,clean,kr,link,ls,make,name,prep} ; do
+		dosym -r /usr/lib/ada-bootstrap/usr/${chost}/gcc-bin/${PV}/${tool} /usr/lib/ada-bootstrap/bin/${tool}
+		dosym -r /usr/lib/ada-bootstrap/usr/${chost}/gcc-bin/${PV}/${tool} /usr/lib/ada-bootstrap/bin/${chost}-${tool}
+		dosym -r /usr/lib/ada-bootstrap/usr/${chost}/gcc-bin/${PV}/${tool} /usr/lib/ada-bootstrap/bin/${chost}-${tool}-${PV}
+	done
+
+	rm -rf "${ED}"/usr/lib/ada-bootstrap/usr/bin || die
+	# This gives us the same layout as older dev-lang/ada-bootstrap
+	dosym -r /usr/lib/ada-bootstrap/bin /usr/lib/ada-bootstrap/usr/bin
+	dosym -r /usr/lib/ada-bootstrap/usr/libexec /usr/lib/ada-bootstrap/libexec
+}
+
+# TODO: pkg_postinst warning/log?


             reply	other threads:[~2025-01-22 19:46 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-01-22 19:46 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-01-24  7:35 [gentoo-commits] repo/gentoo:master commit in: dev-lang/ada-bootstrap/ Sam James
2025-01-23 21:16 Sam James
2025-01-23  6:36 Sam James
2025-01-23  3:02 Sam James
2025-01-22 23:44 Sam James
2025-01-07 20:09 Sam James
2025-01-05  8:42 WANG Xuerui
2025-01-01 20:09 Sam James
2025-01-01 19:33 Sam James
2025-01-01 19:33 Sam James
2025-01-01 19:33 Sam James
2025-01-01 10:25 Sam James
2025-01-01 10:25 Sam James
2025-01-01  5:15 Sam James
2024-12-31 19:34 Sam James
2024-12-31 19:34 Sam James
2024-12-31  8:12 Sam James
2024-12-31  8:12 Sam James
2024-12-31  8:12 Sam James
2024-12-31  3:18 Jakov Smolić
2024-12-18 23:17 Sam James
2024-12-18  3:15 Sam James
2024-12-18  1:49 Sam James
2024-12-17 19:07 Sam James
2024-12-17 19:00 Sam James
2024-12-17 18:08 Sam James
2024-12-17 12:22 Sam James
2024-12-17 10:57 Sam James
2024-12-17 10:53 Sam James
2024-10-02  1:01 Sam James
2024-10-01  8:03 Sam James
2024-10-01  8:03 Sam James
2024-10-01  7:44 Sam James
2024-10-01  7:37 Sam James
2024-10-01  7:32 Sam James
2024-10-01  7:10 Sam James
2024-10-01  6:58 Sam James
2024-10-01  2:06 Sam James
2024-10-01  1:46 Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1737575174.fd80b52f6eb59b31526f4e75e834240e60408f0a.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox