From c8784ba11a39a639937fac10623974f46fce9748 Mon Sep 17 00:00:00 2001 From: Itai Ferber Date: Thu, 31 Oct 2024 09:29:25 -0400 Subject: [PATCH] dev-lang/swift-bootstrap: new package, add 1.0 Signed-off-by: Itai Ferber --- dev-lang/swift-bootstrap/metadata.xml | 27 +++++++++++++++++++ .../swift-bootstrap-1.0.ebuild | 21 +++++++++++++++ 2 files changed, 48 insertions(+) create mode 100644 dev-lang/swift-bootstrap/metadata.xml create mode 100644 dev-lang/swift-bootstrap/swift-bootstrap-1.0.ebuild diff --git a/dev-lang/swift-bootstrap/metadata.xml b/dev-lang/swift-bootstrap/metadata.xml new file mode 100644 index 0000000000..663f74c9eb --- /dev/null +++ b/dev-lang/swift-bootstrap/metadata.xml @@ -0,0 +1,27 @@ + + + + + itai@itaiferber.net + Itai Ferber + + + A virtual package which provides a base version of Swift to bootstrap + ">=dev-lang/swift-6*" with. Swift 6 and later require an earlier Swift + compiler to bootstrap with; "dev-lang/swift" can depend on earlier versions + of itself, but to avoid arbitrarily long dependency chains on a first + install of Swift on a new machine, this package vends a base version of + Swift that newer versions can BDEPEND on. + + + swiftlang/swift + + + + The Swift 5 language, compiler, and tooling, used to bootstrap future versions of Swift. + + + Minor Swift versions. + + + diff --git a/dev-lang/swift-bootstrap/swift-bootstrap-1.0.ebuild b/dev-lang/swift-bootstrap/swift-bootstrap-1.0.ebuild new file mode 100644 index 0000000000..6b72d6f451 --- /dev/null +++ b/dev-lang/swift-bootstrap/swift-bootstrap-1.0.ebuild @@ -0,0 +1,21 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DESCRIPTION="A virtual package providing a base Swift to bootstrap future versions with." +HOMEPAGE="https://www.swift.org" + +S="${WORKDIR}" + +LICENSE="GPL-2" +SLOT="5/10" +KEYWORDS="~amd64" + +# `dev-lang/swift` BDEPENDS on either this package or `dev-lang/swift` itself. When any version of `dev-lang/swift` is +# installed, it will be preferred over this package; when no version of `dev-lang/swift` is installed, `emerge` will +# fall back to installing this. +# +# Because `dev-lang/swift` is versioned by SLOT, any updates to newer versions of Swift will record the current version +# in the @world set, leaving them around; this allows `swift-bootstrap` to eventually get cleaned up. +RDEPEND="dev-lang/swift:5/10"