aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorItai Ferber <itai@itaiferber.net>2024-10-31 09:29:25 -0400
committerItai Ferber <itai@itaiferber.net>2024-10-31 11:11:56 -0400
commitc8784ba11a39a639937fac10623974f46fce9748 (patch)
tree402789be0bbcbbc7724148c735616669fdab14aa /dev-lang
parentdev-lang/swift: add 5.10.1-r2 (diff)
downloadguru-c8784ba11a39a639937fac10623974f46fce9748.tar.gz
guru-c8784ba11a39a639937fac10623974f46fce9748.tar.bz2
guru-c8784ba11a39a639937fac10623974f46fce9748.zip
dev-lang/swift-bootstrap: new package, add 1.0
Signed-off-by: Itai Ferber <itai@itaiferber.net>
Diffstat (limited to 'dev-lang')
-rw-r--r--dev-lang/swift-bootstrap/metadata.xml27
-rw-r--r--dev-lang/swift-bootstrap/swift-bootstrap-1.0.ebuild21
2 files changed, 48 insertions, 0 deletions
diff --git a/dev-lang/swift-bootstrap/metadata.xml b/dev-lang/swift-bootstrap/metadata.xml
new file mode 100644
index 000000000..663f74c9e
--- /dev/null
+++ b/dev-lang/swift-bootstrap/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>itai@itaiferber.net</email>
+ <name>Itai Ferber</name>
+ </maintainer>
+ <longdescription>
+ 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.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">swiftlang/swift</remote-id>
+ </upstream>
+ <slots>
+ <slot name="5">
+ The Swift 5 language, compiler, and tooling, used to bootstrap future versions of Swift.
+ </slot>
+ <subslots>
+ Minor Swift versions.
+ </subslots>
+ </slots>
+</pkgmetadata>
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 000000000..6b72d6f45
--- /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"