* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-07-01 13:50 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-07-01 13:50 UTC (permalink / raw
To: gentoo-commits
commit: 78dba2e9d4843501eee1917f547a33e9b05219d6
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sun Jun 30 16:39:22 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Jun 30 16:39:22 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=78dba2e9
dev-lang/swift: new package, add 5.10.1
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/Manifest | 1 +
dev-lang/swift/metadata.xml | 8 +++++
dev-lang/swift/swift-5.10.1.ebuild | 63 ++++++++++++++++++++++++++++++++++++++
3 files changed, 72 insertions(+)
diff --git a/dev-lang/swift/Manifest b/dev-lang/swift/Manifest
new file mode 100644
index 000000000..20eea2b81
--- /dev/null
+++ b/dev-lang/swift/Manifest
@@ -0,0 +1 @@
+DIST swift-5.10.1-RELEASE-fedora39.tar.gz 701249576 BLAKE2B 37e3e989476c9676c642c604948eec1285f06998f02e8d75ed723bebb360069dc77d1eabcc8c97039461e018034d71ff7867cb9308c839fd708cca87f3ee90e1 SHA512 582e2f23e6b9dca76c908452ad1a0f20e0ab1f789b3e140568427f13736071ec9ce9c16abaa90535510cc5a08001cd5e95961ae8bb591b249c16f3881d289859
diff --git a/dev-lang/swift/metadata.xml b/dev-lang/swift/metadata.xml
new file mode 100644
index 000000000..a6dcf0dba
--- /dev/null
+++ b/dev-lang/swift/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer needed -->
+ <upstream>
+ <remote-id type="github">swiftlang/swift</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
new file mode 100644
index 000000000..6c03b45e0
--- /dev/null
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit python-single-r1
+
+DESCRIPTION="A high-level general-purpose, multi-paradigm, compiled programming language"
+HOMEPAGE="https://www.swift.org/"
+SRC_URI="amd64? ( https://download.swift.org/${P}-release/fedora39/${P}-RELEASE/${P}-RELEASE-fedora39.tar.gz )"
+S="${WORKDIR}/${P}-RELEASE-fedora39/usr"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="-* ~amd64"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="bindist mirror test strip"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ dev-db/sqlite
+ dev-lang/python
+ dev-libs/libedit
+ dev-libs/libxml2
+ dev-vcs/git
+ net-misc/curl
+ sys-devel/binutils[gold]
+ sys-devel/gcc
+ sys-libs/ncurses
+ sys-libs/zlib
+"
+
+BDEPEND="dev-util/patchelf"
+
+QA_PREBUILT="*"
+
+src_install() {
+ # lib/swift/linux/libicudataswift.so.69.1 has an empty DT_RUNPATH, which
+ # fails `rpath_security_checks`. It contains only data, so we can remove its
+ # rpath altogether.
+ patchelf --remove-rpath lib/swift/linux/libicudataswift.so.69.1
+
+ # The RELEASE tarball is a self-contained portable installation that's
+ # _significantly_ easier to leave as-is rather than attempt to splat onto
+ # the filesystem; we'll install the contents as-is into
+ # `/usr/lib64/swift-{version}` (e.g., `/usr/lib64/swift-5.10.1`) and expose
+ # the relevant binaries via linking.
+ dest_dir="/usr/lib64/swift-${PV}"
+ mkdir -p "${ED}${dest_dir}"
+ cp -pPR "${S}" "${ED}${dest_dir}"
+
+ # Swift ships with its own `clang`, `lldb`, etc.; these don't need to be
+ # exposed externally, so we'll just symlink Swift-specific binaries into
+ # `/usr/bin`.
+ find bin -maxdepth 1 \( -type f -o -type l \) \
+ \( -name "swift*" -o -name "sourcekit*" \) -executable -print0 |
+ while IFS= read -r -d '' exe_path; do
+ exe_name="$(basename "$exe_path")"
+ dosym -r "${dest_dir}/usr/bin/${exe_name}" "/usr/bin/${exe_name}"
+ done
+}
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-07-17 8:40 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-07-17 8:40 UTC (permalink / raw
To: gentoo-commits
commit: f8b6c19cab860c30df26c5b196e337d319d9cb6c
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Tue Jul 16 23:19:15 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Tue Jul 16 23:19:18 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f8b6c19c
dev-lang/swift: update SRC_URI and clean up ebuild
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 6c03b45e0..8938f227e 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -8,7 +8,7 @@ inherit python-single-r1
DESCRIPTION="A high-level general-purpose, multi-paradigm, compiled programming language"
HOMEPAGE="https://www.swift.org/"
-SRC_URI="amd64? ( https://download.swift.org/${P}-release/fedora39/${P}-RELEASE/${P}-RELEASE-fedora39.tar.gz )"
+SRC_URI="https://download.swift.org/${P}-release/fedora39/${P}-RELEASE/${P}-RELEASE-fedora39.tar.gz"
S="${WORKDIR}/${P}-RELEASE-fedora39/usr"
LICENSE="Apache-2.0"
@@ -16,7 +16,7 @@ SLOT="0"
KEYWORDS="-* ~amd64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
-RESTRICT="bindist mirror test strip"
+RESTRICT="strip"
RDEPEND="
${PYTHON_DEPS}
@@ -47,9 +47,9 @@ src_install() {
# the filesystem; we'll install the contents as-is into
# `/usr/lib64/swift-{version}` (e.g., `/usr/lib64/swift-5.10.1`) and expose
# the relevant binaries via linking.
- dest_dir="/usr/lib64/swift-${PV}"
- mkdir -p "${ED}${dest_dir}"
- cp -pPR "${S}" "${ED}${dest_dir}"
+ local dest_dir="/usr/lib64/swift-${PV}"
+ mkdir -p "${ED}${dest_dir}" || die
+ cp -pPR "${S}" "${ED}${dest_dir}" || die
# Swift ships with its own `clang`, `lldb`, etc.; these don't need to be
# exposed externally, so we'll just symlink Swift-specific binaries into
@@ -57,7 +57,7 @@ src_install() {
find bin -maxdepth 1 \( -type f -o -type l \) \
\( -name "swift*" -o -name "sourcekit*" \) -executable -print0 |
while IFS= read -r -d '' exe_path; do
- exe_name="$(basename "$exe_path")"
+ local exe_name="$(basename "$exe_path")"
dosym -r "${dest_dir}/usr/bin/${exe_name}" "/usr/bin/${exe_name}"
done
}
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-07-17 8:40 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-07-17 8:40 UTC (permalink / raw
To: gentoo-commits
commit: b67ca5142113fb660097d87e204ed77da80d027a
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Tue Jul 16 16:52:30 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Tue Jul 16 16:52:30 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=b67ca514
dev-lang/swift: add myself as a maintainer
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/metadata.xml | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/dev-lang/swift/metadata.xml b/dev-lang/swift/metadata.xml
index a6dcf0dba..810cc5c5a 100644
--- a/dev-lang/swift/metadata.xml
+++ b/dev-lang/swift/metadata.xml
@@ -1,7 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer needed -->
+ <maintainer type="person">
+ <email>itai@itaiferber.net</email>
+ <name>Itai Ferber</name>
+ </maintainer>
<upstream>
<remote-id type="github">swiftlang/swift</remote-id>
</upstream>
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: 62e1a683e77158f26a629331aa67babdf6708c1e
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 15:53:40 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 15:53:40 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=62e1a683
dev-lang/swift: disable py3.6, py3.7, py3.8, py3.9
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index a205ad19d..229554531 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -3,7 +3,7 @@
EAPI=8
-PYTHON_COMPAT=( python3_{6..13} )
+PYTHON_COMPAT=( python3_{10..13} )
inherit python-single-r1
DESCRIPTION="A high-level, general-purpose, multi-paradigm, compiled programming language"
@@ -79,6 +79,7 @@ RDEPEND="
"
BDEPEND="
+ ${PYTHON_DEPS}
>=dev-util/patchelf-0.18
>=sys-apps/coreutils-9
"
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: b7c90de761e043fe8af43065a199468479795c6e
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 15:55:45 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 15:55:45 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=b7c90de7
dev-lang/swift: fix build-time dependencies
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 229554531..a53eb87d5 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -64,13 +64,10 @@ RESTRICT="strip"
RDEPEND="
${PYTHON_DEPS}
- >=dev-build/cmake-3.24.2
- >=dev-build/ninja-1.11
>=dev-db/sqlite-3
>=dev-libs/icu-69
>=dev-libs/libedit-20221030
>=dev-libs/libxml2-2.11.5
- >=dev-vcs/git-2.39
>=net-misc/curl-8.4
>=sys-devel/lld-15
>=sys-libs/ncurses-6
@@ -80,8 +77,18 @@ RDEPEND="
BDEPEND="
${PYTHON_DEPS}
+ >=dev-build/cmake-3.24.2
+ >=dev-build/ninja-1.11
+ >=dev-db/sqlite-3
+ >=dev-libs/libedit-20221030
+ >=dev-libs/libxml2-2.11.5
>=dev-util/patchelf-0.18
+ >=dev-vcs/git-2.39
>=sys-apps/coreutils-9
+ >=sys-devel/clang-15
+ >=sys-libs/ncurses-6
+ >=sys-libs/zlib-1.3
+ dev-lang/python
"
src_unpack() {
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: 4ea75ccb1674776ca811a0b2df41c83ea48fb9a2
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 15:57:24 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 15:57:24 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4ea75ccb
dev-lang/swift: ebuild correctness fixes
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index a53eb87d5..4037a47c9 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -49,10 +49,10 @@ SRC_URI="
https://github.com/unicode-org/icu/archive/refs/tags/release-69-1.tar.gz -> icu-69.1.tar.gz
"
-PATCHES="
- ${FILESDIR}/${P}-link-with-lld.patch
- ${FILESDIR}/${P}-llbuild-link-ncurses-tinfo-gentoo.patch
-"
+PATCHES=(
+ "${FILESDIR}/${P}-link-with-lld.patch"
+ "${FILESDIR}/${P}-llbuild-link-ncurses-tinfo-gentoo.patch"
+)
S="${WORKDIR}"
LICENSE="Apache-2.0"
@@ -234,7 +234,7 @@ src_install() {
# `libicudataswift.so.69.1` has an empty `DT_RUNPATH`, which fails
# `rpath_security_checks`. It contains only data, so we can remove its rpath
# altogether.
- patchelf --remove-rpath "${S}/stage2/usr/lib/swift/linux/libicudataswift.so.69.1"
+ patchelf --remove-rpath "${S}/stage2/usr/lib/swift/linux/libicudataswift.so.69.1" || die
# The Swift build output is intended to be self-contained, and is
# _significantly_ easier to leave as-is than attempt to splat onto the
@@ -249,6 +249,7 @@ src_install() {
# exposed externally, so we'll just symlink Swift-specific binaries into
# `/usr/bin`. (The majority of executables don't need to be exposed as
# `swift <command>` calls `swift-<command>` directly.)
+ local bin
for bin in swift swiftc sourcekit-lsp; do
dosym -r "${dest_dir}/usr/bin/${bin}" "/usr/bin/${bin}"
done
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: 4b80fdd7ea24f22a138b85ecb35b460fc08093dc
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 17:49:48 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 17:51:42 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=4b80fdd7
dev-lang/swift: remove unnecessary libicu source dependency
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/Manifest | 1 -
dev-lang/swift/swift-5.10.1.ebuild | 7 -------
2 files changed, 8 deletions(-)
diff --git a/dev-lang/swift/Manifest b/dev-lang/swift/Manifest
index 774e29780..33bc33c04 100644
--- a/dev-lang/swift/Manifest
+++ b/dev-lang/swift/Manifest
@@ -1,5 +1,4 @@
DIST Yams-5.0.1.tar.gz 658324 BLAKE2B 8e95d96df85115b59334c9e20e03120040f6095c3a3f00110c2cd890077dd17f2f79a22452d380e05e463860c367db39b4df13815ee00ea80964707ef038c9ee SHA512 91feecb95d1997235e443dea925ff11fa665e94c12c8eca2ed066ef340a51ec0253df2545d91184c31423cb4b039e1f89ac8f743cf3f154c9d93495eecc45432
-DIST icu-69.1.tar.gz 62824536 BLAKE2B 591ba9b790e24c824cf5e1108f3ee14bee6c9bbc2379db2e3062970331bb633aefd926e1d407782ccfa754e953d390a9bb9dae5c8a8f7883373a224b0ca010a7 SHA512 4bfe07fb2ce647961ada18b1c5bfa10f38b4b95b8801c9720b3e223f92e6eddabdfc9b9f8553cc092bed309ec663e7f63873e370e390a1de9f7779c6bfe133c1
DIST indexstore-db-5.10.1.tar.gz 909365 BLAKE2B fde150aff5a46970aafc872be8f9a57e338c648e2d3f5ea49a223d72d3cd402496a1045716551fd07c9954ea123a87070593d6fdd315a825f57d9d513f01d6b3 SHA512 1fc62360a5cd4701da314774b4c5c6a6a9cc2a8d46881962fc80331006c255d173f8ace8d743a09b3fcdbf1e92570248666396a0b78ce8be19eeff65ab6c3235
DIST llvm-project-5.10.1.tar.gz 171145818 BLAKE2B e314f2e8716cb36b43e1ec23fe2fe212e4ab79e711f4544d54788338067f75b87abe84ecc60b1b5f073f0349d45363346d8a6b89b85f2ae6801cd09709293f52 SHA512 c659041234da1fed29a7186f0e436b0867576096483333d71f11e72828b45e2c7bd9b15db7d3da348a114af48a649f8a484ba3bd4de84d2f5cdb8a7035c5ad30
DIST sourcekit-lsp-5.10.1.tar.gz 301167 BLAKE2B a1ff3b22c4ab2583d39687aae385fc52dcbb02237035ace8bc0fc6c705db1cd6734dae1656078080c7599ad4b75f5e03def7f60b0e0361bcb25e45bc9ea3c676 SHA512 4a2f7c2129a69c05c8d158877efb1538f092f8eb2d1b1194661cb7c6f201330ecf7fd33bb0d06dd595bc6966e19b739d103478db6c9b2a4c2d7ae351bfb398a8
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 4037a47c9..ffcd49eb2 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -46,7 +46,6 @@ SRC_URI="
https://github.com/swiftlang/swift-syntax/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-syntax-${PV}.tar.gz
https://github.com/swiftlang/swift-tools-support-core/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-tools-support-core-${PV}.tar.gz
https://github.com/swiftlang/swift/archive/refs/tags/${P}-RELEASE.tar.gz -> ${P}.tar.gz
- https://github.com/unicode-org/icu/archive/refs/tags/release-69-1.tar.gz -> icu-69.1.tar.gz
"
PATCHES=(
@@ -105,7 +104,6 @@ src_unpack() {
# Some one-off fixups:
pushd "${S}" \
- && mv 'icu-release-69' 'icu' \
&& mv 'swift-cmark' 'cmark' \
&& mv 'swift-llbuild' 'llbuild' \
&& mv 'swift-package-manager' 'swiftpm' \
@@ -231,11 +229,6 @@ src_compile() {
}
src_install() {
- # `libicudataswift.so.69.1` has an empty `DT_RUNPATH`, which fails
- # `rpath_security_checks`. It contains only data, so we can remove its rpath
- # altogether.
- patchelf --remove-rpath "${S}/stage2/usr/lib/swift/linux/libicudataswift.so.69.1" || die
-
# The Swift build output is intended to be self-contained, and is
# _significantly_ easier to leave as-is than attempt to splat onto the
# filesystem; we'll install the output versioned into `/usr/lib64` and
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: 9075a897d030386761d50ffe79911de80b1ae79d
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 18:37:35 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 18:37:55 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=9075a897
dev-lang/swift: add lld build-time dependency
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index ffcd49eb2..7610ec7c1 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -85,6 +85,7 @@ BDEPEND="
>=dev-vcs/git-2.39
>=sys-apps/coreutils-9
>=sys-devel/clang-15
+ >=sys-devel/lld-15
>=sys-libs/ncurses-6
>=sys-libs/zlib-1.3
dev-lang/python
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-08-10 20:34 Lucio Sauer
0 siblings, 0 replies; 17+ messages in thread
From: Lucio Sauer @ 2024-08-10 20:34 UTC (permalink / raw
To: gentoo-commits
commit: 81b6f5cdfdb2bb9be333303b1072dd1bfacee234
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Aug 10 20:14:37 2024 +0000
Commit: Lucio Sauer <watermanpaint <AT> posteo <DOT> net>
CommitDate: Sat Aug 10 20:15:00 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=81b6f5cd
dev-lang/swift: add libicu as a build-time dependency
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 1 +
1 file changed, 1 insertion(+)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 7610ec7c1..751bc6a93 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -79,6 +79,7 @@ BDEPEND="
>=dev-build/cmake-3.24.2
>=dev-build/ninja-1.11
>=dev-db/sqlite-3
+ >=dev-libs/icu-69
>=dev-libs/libedit-20221030
>=dev-libs/libxml2-2.11.5
>=dev-util/patchelf-0.18
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-09-14 0:43 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-09-14 0:43 UTC (permalink / raw
To: gentoo-commits
commit: 6ea7d4532a6954e93be171af974a4b7de558931a
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Fri Sep 13 19:27:04 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Fri Sep 13 19:34:42 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=6ea7d453
dev-lang/swift: add missing dev-python/setuptools dependency
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 3 +++
1 file changed, 3 insertions(+)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index b7cb27b91..dc70e51ae 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -90,6 +90,9 @@ BDEPEND="
>=sys-libs/ncurses-6
>=sys-libs/zlib-1.3
dev-lang/python
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_{12..13})
"
src_unpack() {
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-09-14 0:43 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-09-14 0:43 UTC (permalink / raw
To: gentoo-commits
commit: c05b53a27950e05f4efa22462780df034ef3eb31
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Fri Sep 13 19:28:23 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Fri Sep 13 19:33:30 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=c05b53a2
dev-lang/swift: set up Python to respect PYTHON_SINGLE_TARGET
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 751bc6a93..b7cb27b91 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -113,6 +113,13 @@ src_unpack() {
|| die
}
+src_configure() {
+ default
+
+ # Necessary to respect PYTHON_SINGLE_TARGET, if defined.
+ python_setup
+}
+
src_compile() {
# The Swift 5.10 compiler is partially written in Swift itself (the new
# `swift-driver` + macro support via `swift-syntax`), which requires
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: 95e178f3311434cf6cbe5e31fd875d8122f71f45
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Oct 12 19:11:02 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:24 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=95e178f3
dev-lang/swift: add swift-5.10.1-r1
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1-r1.ebuild | 273 ++++++++++++++++++++++++++++++++++
1 file changed, 273 insertions(+)
diff --git a/dev-lang/swift/swift-5.10.1-r1.ebuild b/dev-lang/swift/swift-5.10.1-r1.ebuild
new file mode 100644
index 000000000..0a49073ff
--- /dev/null
+++ b/dev-lang/swift/swift-5.10.1-r1.ebuild
@@ -0,0 +1,273 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{10..13} )
+inherit python-single-r1
+
+DESCRIPTION="A high-level, general-purpose, multi-paradigm, compiled programming language"
+HOMEPAGE="https://www.swift.org"
+
+SRC_URI="
+ https://github.com/apple/swift-argument-parser/archive/refs/tags/1.2.3.tar.gz -> swift-argument-parser-1.2.3.tar.gz
+ https://github.com/apple/swift-asn1/archive/refs/tags/1.0.0.tar.gz -> swift-asn1-1.0.0.tar.gz
+ https://github.com/apple/swift-atomics/archive/refs/tags/1.0.2.tar.gz -> swift-atomics-1.0.2.tar.gz
+ https://github.com/apple/swift-certificates/archive/refs/tags/1.0.1.tar.gz -> swift-certificates-1.0.1.tar.gz
+ https://github.com/apple/swift-collections/archive/refs/tags/1.0.5.tar.gz -> swift-collections-1.0.5.tar.gz
+ https://github.com/apple/swift-corelibs-libdispatch/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-libdispatch-${PV}.tar.gz
+ https://github.com/apple/swift-crypto/archive/refs/tags/3.0.0.tar.gz -> swift-crypto-3.0.0.tar.gz
+ https://github.com/apple/swift-nio-ssl/archive/refs/tags/2.15.0.tar.gz -> swift-nio-ssl-2.15.0.tar.gz
+ https://github.com/apple/swift-nio/archive/refs/tags/2.31.2.tar.gz -> swift-nio-2.31.2.tar.gz
+ https://github.com/apple/swift-numerics/archive/refs/tags/1.0.1.tar.gz -> swift-numerics-1.0.1.tar.gz
+ https://github.com/apple/swift-system/archive/refs/tags/1.1.1.tar.gz -> swift-system-1.1.1.tar.gz
+ https://github.com/apple/swift-xcode-playground-support/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-xcode-playground-support-${PV}.tar.gz
+ https://github.com/jpsim/Yams/archive/refs/tags/5.0.1.tar.gz -> Yams-5.0.1.tar.gz
+ https://github.com/swiftlang/indexstore-db/archive/refs/tags/${P}-RELEASE.tar.gz -> indexstore-db-${PV}.tar.gz
+ https://github.com/swiftlang/llvm-project/archive/refs/tags/${P}-RELEASE.tar.gz -> llvm-project-${PV}.tar.gz
+ https://github.com/swiftlang/sourcekit-lsp/archive/refs/tags/${P}-RELEASE.tar.gz -> sourcekit-lsp-${PV}.tar.gz
+ https://github.com/swiftlang/swift-cmark/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-cmark-${PV}.tar.gz
+ https://github.com/swiftlang/swift-corelibs-foundation/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-foundation-${PV}.tar.gz
+ https://github.com/swiftlang/swift-corelibs-xctest/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-xctest-${PV}.tar.gz
+ https://github.com/swiftlang/swift-docc-render-artifact/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-render-artifact-${PV}.tar.gz
+ https://github.com/swiftlang/swift-docc-symbolkit/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-symbolkit-${PV}.tar.gz
+ https://github.com/swiftlang/swift-docc/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-${PV}.tar.gz
+ https://github.com/swiftlang/swift-driver/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-driver-${PV}.tar.gz
+ https://github.com/swiftlang/swift-experimental-string-processing/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-experimental-string-processing-${PV}.tar.gz
+ https://github.com/swiftlang/swift-format/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-format-${PV}.tar.gz
+ https://github.com/swiftlang/swift-installer-scripts/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-installer-scripts-${PV}.tar.gz
+ https://github.com/swiftlang/swift-integration-tests/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-integration-tests-${PV}.tar.gz
+ https://github.com/swiftlang/swift-llbuild/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-llbuild-${PV}.tar.gz
+ https://github.com/swiftlang/swift-llvm-bindings/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-llvm-bindings-${PV}.tar.gz
+ https://github.com/swiftlang/swift-lmdb/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-lmdb-${PV}.tar.gz
+ https://github.com/swiftlang/swift-markdown/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-markdown-${PV}.tar.gz
+ https://github.com/swiftlang/swift-package-manager/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-package-manager-${PV}.tar.gz
+ https://github.com/swiftlang/swift-stress-tester/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-stress-tester-${PV}.tar.gz
+ https://github.com/swiftlang/swift-syntax/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-syntax-${PV}.tar.gz
+ https://github.com/swiftlang/swift-tools-support-core/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-tools-support-core-${PV}.tar.gz
+ https://github.com/swiftlang/swift/archive/refs/tags/${P}-RELEASE.tar.gz -> ${P}.tar.gz
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-link-with-lld.patch"
+ "${FILESDIR}/${P}-llbuild-link-ncurses-tinfo-gentoo.patch"
+ "${FILESDIR}/${P}-lldb-cmake-minimum-version.patch"
+)
+
+S="${WORKDIR}"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RESTRICT="strip"
+
+RDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-db/sqlite-3
+ >=dev-libs/icu-69
+ >=dev-libs/libedit-20221030
+ >=dev-libs/libxml2-2.11.5
+ >=net-misc/curl-8.4
+ >=sys-devel/lld-15
+ >=sys-libs/ncurses-6
+ >=sys-libs/zlib-1.3
+ dev-lang/python
+"
+
+BDEPEND="
+ ${PYTHON_DEPS}
+ >=dev-build/cmake-3.24.2
+ >=dev-build/ninja-1.11
+ >=dev-db/sqlite-3
+ >=dev-libs/icu-69
+ >=dev-libs/libedit-20221030
+ >=dev-libs/libxml2-2.11.5
+ >=dev-vcs/git-2.39
+ >=sys-apps/coreutils-9
+ >=sys-devel/clang-15
+ >=sys-devel/lld-15
+ >=sys-libs/ncurses-6
+ >=sys-libs/zlib-1.3
+ dev-lang/python
+ $(python_gen_cond_dep '
+ dev-python/setuptools[${PYTHON_USEDEP}]
+ ' python3_{12..13})
+"
+
+src_unpack() {
+ default
+
+ # The Swift project expects a specific directory structure that we have to
+ # match. For most directories, it's enough to trim the version number at the
+ # end:
+ find "${S}" \
+ -mindepth 1 -maxdepth 1 \
+ -execdir sh -c \
+ "mv '{}' \"\$(echo '{}' | sed -e 's_-\(swift-5\.10\.1-RELEASE\|\([0-9]\+\.\)*[0-9]\+\)\$__' | tr '[:upper:]' '[:lower:]')\"" ';' \
+ || die
+
+ # Some one-off fixups:
+ pushd "${S}" \
+ && mv 'swift-cmark' 'cmark' \
+ && mv 'swift-llbuild' 'llbuild' \
+ && mv 'swift-package-manager' 'swiftpm' \
+ && popd \
+ || die
+}
+
+src_configure() {
+ default
+
+ # Sets `${EPYTHON}` according to `PYTHON_SINGLE_TARGET`, sets up
+ # `${T}/${EPYTHON}` with that version, and adds it to the `PATH`.
+ python_setup
+}
+
+src_compile() {
+ # The Swift 5.10 compiler is partially written in Swift itself (the new
+ # `swift-driver` + macro support via `swift-syntax`), which requires
+ # bootstrapping with an existing Swift compiler.
+ #
+ # We don't have an existing Swift compiler, but we can bootstrap it with
+ # itself in a 3-stage process:
+ #
+ # 0. We'll build LLVM+Clang and a bare Swift compiler with the old C++-based
+ # driver and no macro support
+ # 1. We'll use that bare compiler to build a base compiler with the new
+ # Swift-based driver and macro support, with some base libs
+ # 2. We'll then use that base compiler to build a full Swift toolchain with
+ # all necessary libs
+ #
+ # Build products will be intentionally shared between stages as much as
+ # possible to avoid unnecessary repeated compilation.
+
+ # Building swift-driver writes to this directory for some reason, but the
+ # contents are irrelevant.
+ addpredict /var/lib/portage/home/.swiftpm
+
+ local _extra_cmake_options=(
+ # BFD doesn't link Swift symbols properly, so we have to ensure Swift is
+ # built with LLD.
+ '-DSWIFT_USE_LINKER=lld',
+
+ # We don't need to build any test code or test executables, which Swift
+ # (and some components) does by default.
+ '-DBUILD_TESTING:BOOL=NO',
+ '-DSWIFT_INCLUDE_TESTS:BOOL=NO',
+ '-DSWIFT_INCLUDE_TEST_BINARIES:BOOL=NO',
+
+ # The Clang `compiler-rt` library builds the LLVM ORC JIT component by
+ # default, which we don't need; the component builds with an executable
+ # stack, which we'd like to avoid.
+ '-DCOMPILER_RT_BUILD_ORC:BOOL=NO',
+
+ # LLDB ships with Python bindings, and uses CMake to search for Python.
+ # By default, CMake tries to find the latest version of Python available
+ # on disk (currently `python3.13`, then `python3.12`, then...). This
+ # might not be the version of Python the rest of the system uses, or
+ # which is specified by `PYTHON_SINGLE_TARGET`.
+ #
+ # Since `python_setup` already places `${EPYTHON}` in the `PATH`, we can
+ # tell CMake to use the unversioned `python` rather than a versioned
+ # one to end up respecting `PYTHON_SINGLE_TARGET`.
+ '-DPython3_FIND_UNVERSIONED_NAMES=FIRST'
+ )
+ local extra_cmake_options="$(IFS=,; echo "${_extra_cmake_options[*]}")"
+
+ # stage0:
+ # * Bare Swift compiler (no bootstrapping; no Swift driver or macros)
+ # * LLVM+Clang; this is the only stage where these are built because as a
+ # base dependency, their flags never change, and the build products can be
+ # reused
+ "${S}/swift/utils/build-script" \
+ --verbose-build \
+ --release \
+ --install-destdir="${S}/stage0" \
+ --extra-cmake-options="${extra_cmake_options}" \
+ --bootstrapping=off \
+ --build-swift-libexec=false \
+ --llvm-install-components='llvm-ar;llvm-cov;llvm-profdata;IndexStore;clang;clang-resource-headers;compiler-rt;clangd;lld;LTO;clang-features-file' \
+ --llvm-targets-to-build=host \
+ --skip-build-benchmarks \
+ --skip-early-swift-driver --skip-early-swiftsyntax \
+ --skip-test-cmark \
+ --skip-test-linux \
+ --skip-test-swift \
+ --install-all \
+ || die
+
+ # stage1:
+ # * Base Swift compiler and driver (bootstrapping from stage0; with macros)
+ # * Base libs: swift-driver depends on llbuild + swiftpm, which depend on
+ # Foundation + libdispatch + XCTest
+ local original_path="${PATH}"
+ export PATH="${S}/stage0/usr/bin:${original_path}"
+ "${S}/swift/utils/build-script" \
+ --verbose-build \
+ --release \
+ --install-destdir="${S}/stage1" \
+ --extra-cmake-options="${extra_cmake_options}" \
+ --build-swift-libexec=false \
+ --cmark --skip-test-cmark \
+ --foundation --skip-test-foundation \
+ --libdispatch --skip-test-libdispatch \
+ --llbuild --skip-test-llbuild \
+ --skip-build-benchmarks \
+ --skip-build-llvm \
+ --skip-test-linux \
+ --skip-test-swift \
+ --swift-driver --skip-test-swift-driver \
+ --swiftpm --skip-test-swiftpm \
+ --xctest --skip-test-xctest \
+ --install-all \
+ || die
+
+ # stage2: full Swift toolchain (bootstrapping from stage1)
+ export PATH="${S}/stage1/usr/bin:${original_path}"
+ "${S}/swift/utils/build-script" \
+ --verbose-build \
+ --release \
+ --install-destdir="${S}/stage2" \
+ --extra-cmake-options="${extra_cmake_options}" \
+ --build-swift-libexec=false \
+ --foundation --skip-test-foundation \
+ --indexstore-db --skip-test-indexstore-db \
+ --libdispatch --skip-test-libdispatch \
+ --llbuild --skip-test-llbuild \
+ --lldb --skip-test-lldb \
+ --skip-build-benchmarks \
+ --skip-build-llvm \
+ --skip-test-linux \
+ --skip-test-swift \
+ --sourcekit-lsp --skip-test-sourcekit-lsp \
+ --swift-driver --skip-test-swift-driver \
+ --swift-install-components='autolink-driver;compiler;clang-resource-dir-symlink;stdlib;swift-remote-mirror;sdk-overlay;static-mirror-lib;toolchain-tools;license;sourcekit-inproc' \
+ --swiftdocc --skip-test-swiftdocc \
+ --swiftpm --skip-test-swiftpm \
+ --xctest --skip-test-xctest \
+ --install-all \
+ || die
+
+ export PATH="${original_path}"
+}
+
+src_install() {
+ # The Swift build output is intended to be self-contained, and is
+ # _significantly_ easier to leave as-is than attempt to splat onto the
+ # filesystem; we'll install the output versioned into `/usr/lib64` and
+ # expose the relevant binaries via linking.
+ local dest_dir="/usr/lib64/${P}"
+ mkdir -p "${ED}/${dest_dir}" \
+ && cp -pPR "${S}/stage2/." "${ED}/${dest_dir}" \
+ || die
+
+ # Swift ships with its own `clang`, `lldb`, etc.; we don't want these to be
+ # exposed externally, so we'll just symlink Swift-specific binaries into
+ # `/usr/bin`. (The majority of executables don't need to be exposed as
+ # `swift <command>` calls `swift-<command>` directly.)
+ local bin
+ for bin in swift swiftc sourcekit-lsp; do
+ dosym -r "${dest_dir}/usr/bin/${bin}" "/usr/bin/${bin}"
+ done
+}
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: 8844fcb7f0a5b0959bcc45e55bd5a0f72724143c
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Oct 12 19:21:02 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:24 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=8844fcb7
dev-lang/swift: update SRC_URI
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1.ebuild | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dev-lang/swift/swift-5.10.1.ebuild b/dev-lang/swift/swift-5.10.1.ebuild
index 29980b12b..5cf5bf187 100644
--- a/dev-lang/swift/swift-5.10.1.ebuild
+++ b/dev-lang/swift/swift-5.10.1.ebuild
@@ -15,9 +15,7 @@ SRC_URI="
https://github.com/apple/swift-atomics/archive/refs/tags/1.0.2.tar.gz -> swift-atomics-1.0.2.tar.gz
https://github.com/apple/swift-certificates/archive/refs/tags/1.0.1.tar.gz -> swift-certificates-1.0.1.tar.gz
https://github.com/apple/swift-collections/archive/refs/tags/1.0.5.tar.gz -> swift-collections-1.0.5.tar.gz
- https://github.com/apple/swift-corelibs-foundation/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-foundation-${PV}.tar.gz
https://github.com/apple/swift-corelibs-libdispatch/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-libdispatch-${PV}.tar.gz
- https://github.com/apple/swift-corelibs-xctest/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-xctest-${PV}.tar.gz
https://github.com/apple/swift-crypto/archive/refs/tags/3.0.0.tar.gz -> swift-crypto-3.0.0.tar.gz
https://github.com/apple/swift-nio-ssl/archive/refs/tags/2.15.0.tar.gz -> swift-nio-ssl-2.15.0.tar.gz
https://github.com/apple/swift-nio/archive/refs/tags/2.31.2.tar.gz -> swift-nio-2.31.2.tar.gz
@@ -29,6 +27,8 @@ SRC_URI="
https://github.com/swiftlang/llvm-project/archive/refs/tags/${P}-RELEASE.tar.gz -> llvm-project-${PV}.tar.gz
https://github.com/swiftlang/sourcekit-lsp/archive/refs/tags/${P}-RELEASE.tar.gz -> sourcekit-lsp-${PV}.tar.gz
https://github.com/swiftlang/swift-cmark/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-cmark-${PV}.tar.gz
+ https://github.com/swiftlang/swift-corelibs-foundation/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-foundation-${PV}.tar.gz
+ https://github.com/swiftlang/swift-corelibs-xctest/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-corelibs-xctest-${PV}.tar.gz
https://github.com/swiftlang/swift-docc-render-artifact/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-render-artifact-${PV}.tar.gz
https://github.com/swiftlang/swift-docc-symbolkit/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-symbolkit-${PV}.tar.gz
https://github.com/swiftlang/swift-docc/archive/refs/tags/${P}-RELEASE.tar.gz -> swift-docc-${PV}.tar.gz
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: 730418e323130d867f76885aef47e46e8d5f24ab
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Oct 12 17:40:43 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=730418e3
dev-lang/swift: add explicit SLOT
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/metadata.xml | 11 +++++++++++
dev-lang/swift/swift-5.10.1-r1.ebuild | 2 +-
2 files changed, 12 insertions(+), 1 deletion(-)
diff --git a/dev-lang/swift/metadata.xml b/dev-lang/swift/metadata.xml
index 810cc5c5a..415909a00 100644
--- a/dev-lang/swift/metadata.xml
+++ b/dev-lang/swift/metadata.xml
@@ -8,4 +8,15 @@
<upstream>
<remote-id type="github">swiftlang/swift</remote-id>
</upstream>
+ <slots>
+ <slot name="0">
+ The original slot for swift-5.10.1; should no longer be used.
+ </slot>
+ <slot name="5">
+ The Swift 5 language, compiler, and tooling.
+ </slot>
+ <subslots>
+ Minor Swift versions.
+ </subslots>
+ </slots>
</pkgmetadata>
diff --git a/dev-lang/swift/swift-5.10.1-r1.ebuild b/dev-lang/swift/swift-5.10.1-r1.ebuild
index 0a49073ff..3440d1183 100644
--- a/dev-lang/swift/swift-5.10.1-r1.ebuild
+++ b/dev-lang/swift/swift-5.10.1-r1.ebuild
@@ -56,7 +56,7 @@ PATCHES=(
S="${WORKDIR}"
LICENSE="Apache-2.0"
-SLOT="0"
+SLOT="5/10"
KEYWORDS="~amd64"
REQUIRED_USE="${PYTHON_REQUIRED_USE}"
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: aaf9561924991c5c79618e1837b0ad1e0673f225
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sat Oct 12 17:41:44 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=aaf95619
dev-lang/swift: add support for app-eselect/eselect-swift
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1-r1.ebuild | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/dev-lang/swift/swift-5.10.1-r1.ebuild b/dev-lang/swift/swift-5.10.1-r1.ebuild
index 3440d1183..f855522a2 100644
--- a/dev-lang/swift/swift-5.10.1-r1.ebuild
+++ b/dev-lang/swift/swift-5.10.1-r1.ebuild
@@ -64,6 +64,7 @@ RESTRICT="strip"
RDEPEND="
${PYTHON_DEPS}
+ >=app-eselect/eselect-swift-1.0
>=dev-db/sqlite-3
>=dev-libs/icu-69
>=dev-libs/libedit-20221030
@@ -268,6 +269,27 @@ src_install() {
# `swift <command>` calls `swift-<command>` directly.)
local bin
for bin in swift swiftc sourcekit-lsp; do
- dosym -r "${dest_dir}/usr/bin/${bin}" "/usr/bin/${bin}"
+ # We only install versioned symlinks; non-versioned links are maanged
+ # via `eselect swift`.
+ dosym -r "${dest_dir}/usr/bin/${bin}" "/usr/bin/${bin}-${PV}"
done
}
+
+pkg_postinst() {
+ # If we're installing the latest version of Swift, then update symlinks to
+ # it. (We don't want to call `eselect swift update` unconditionally in case
+ # we're installing an older version of Swift, and the user has intentionally
+ # selected a version other than the latest.)
+ if ! has_version ">${CATEGORY}/${P}"; then
+ eselect swift update
+ fi
+}
+
+pkg_postrm() {
+ # We don't want to leave behind symlinks pointing to this Swift version on
+ # removal.
+ local eselect_swift_version="$(eselect swift show)"
+ if [[ "${eselect_swift_version}" == *"${P}" ]]; then
+ eselect swift update
+ fi
+}
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: ca27db7e8b92982c2e87912b5651296278309204
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sun Oct 13 01:25:19 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=ca27db7e
dev-lang/swift: use llvm-r1 to set LLVM toolchain
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1-r1.ebuild | 62 ++++++++++++++++++++++++++++-------
1 file changed, 50 insertions(+), 12 deletions(-)
diff --git a/dev-lang/swift/swift-5.10.1-r1.ebuild b/dev-lang/swift/swift-5.10.1-r1.ebuild
index f855522a2..145becb3f 100644
--- a/dev-lang/swift/swift-5.10.1-r1.ebuild
+++ b/dev-lang/swift/swift-5.10.1-r1.ebuild
@@ -3,8 +3,9 @@
EAPI=8
+LLVM_COMPAT=( {15..18} )
PYTHON_COMPAT=( python3_{10..13} )
-inherit python-single-r1
+inherit llvm-r1 python-single-r1
DESCRIPTION="A high-level, general-purpose, multi-paradigm, compiled programming language"
HOMEPAGE="https://www.swift.org"
@@ -70,10 +71,10 @@ RDEPEND="
>=dev-libs/libedit-20221030
>=dev-libs/libxml2-2.11.5
>=net-misc/curl-8.4
- >=sys-devel/lld-15
>=sys-libs/ncurses-6
>=sys-libs/zlib-1.3
dev-lang/python
+ $(llvm_gen_dep 'sys-devel/lld:${LLVM_SLOT}=')
"
BDEPEND="
@@ -86,16 +87,61 @@ BDEPEND="
>=dev-libs/libxml2-2.11.5
>=dev-vcs/git-2.39
>=sys-apps/coreutils-9
- >=sys-devel/clang-15
- >=sys-devel/lld-15
>=sys-libs/ncurses-6
>=sys-libs/zlib-1.3
+ $(llvm_gen_dep '
+ sys-devel/clang:${LLVM_SLOT}=
+ sys-devel/lld:${LLVM_SLOT}=
+ ')
dev-lang/python
$(python_gen_cond_dep '
dev-python/setuptools[${PYTHON_USEDEP}]
' python3_{12..13})
"
+# Adapted from `flag-o-matic.eclass`'s `raw-ldflags`: turns GCC-style flags
+# (`-Wl,-foo`) into Clang-style flags (`-Xlinker -foo`).
+clang-ldflags() {
+ local flag input="$@"
+ [[ -z ${input} ]] && input=${LDFLAGS}
+ set --
+ for flag in ${input//,/ } ; do
+ case ${flag} in
+ -Wl) ;;
+ *) set -- "$@" "-Xlinker ${flag}" ;;
+ esac
+ done
+ echo "$@"
+}
+
+pkg_setup() {
+ # Sets `${EPYTHON}` according to `PYTHON_SINGLE_TARGET`, sets up
+ # `${T}/${EPYTHON}` with that version, and adds it to the `PATH`.
+ python_setup
+
+ # Sets up `PATH` to point to the appropriate LLVM toolchain.
+ llvm-r1_pkg_setup
+
+ # `llvm-r1_pkg_setup` sets these tools to their absolute paths, but we need
+ # to still pick them up dynamically based on `PATH` for stage1 and stage2
+ # builds below (to keep all parts of the Swift toolchain compiling with the
+ # same internal tools).
+ export CC="clang"
+ export CXX="clang++"
+ export LD="ld.lld"
+
+ # Swift builds with CMake, which picks up `LDFLAGS` from the environment and
+ # populates `CMAKE_EXE_LINKER_FLAGS` with them. `LDFLAGS` are typically
+ # given as GCC-style flags (), which Clang understands;
+ # unfortunately, CMake passes these flags to all compilers under the
+ # assumption they support the same syntax, but `swiftc` _only_ understands
+ # Clang-style flags (`-Xlinker -foo`). In order to pass `LDFLAGS` in, we
+ # have to turn them into a format that `swiftc` will understand.
+ #
+ # We can do this because we know we're compiling with Clang specifically.
+ export LDFLAGS="$(clang-ldflags)"
+}
+
src_unpack() {
default
@@ -117,14 +163,6 @@ src_unpack() {
|| die
}
-src_configure() {
- default
-
- # Sets `${EPYTHON}` according to `PYTHON_SINGLE_TARGET`, sets up
- # `${T}/${EPYTHON}` with that version, and adds it to the `PATH`.
- python_setup
-}
-
src_compile() {
# The Swift 5.10 compiler is partially written in Swift itself (the new
# `swift-driver` + macro support via `swift-syntax`), which requires
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/
@ 2024-10-13 14:51 David Roman
0 siblings, 0 replies; 17+ messages in thread
From: David Roman @ 2024-10-13 14:51 UTC (permalink / raw
To: gentoo-commits
commit: 2a36ac399b06cd73f2be2c7d0df56dc82eb31fb4
Author: Itai Ferber <itai <AT> itaiferber <DOT> net>
AuthorDate: Sun Oct 13 01:27:34 2024 +0000
Commit: David Roman <davidroman96 <AT> gmail <DOT> com>
CommitDate: Sun Oct 13 01:31:25 2024 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=2a36ac39
dev-lang/swift: build without compiler assertions
Closes: https://bugs.gentoo.org/940500
Signed-off-by: Itai Ferber <itai <AT> itaiferber.net>
dev-lang/swift/swift-5.10.1-r1.ebuild | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/dev-lang/swift/swift-5.10.1-r1.ebuild b/dev-lang/swift/swift-5.10.1-r1.ebuild
index 145becb3f..ee233f3bb 100644
--- a/dev-lang/swift/swift-5.10.1-r1.ebuild
+++ b/dev-lang/swift/swift-5.10.1-r1.ebuild
@@ -222,6 +222,8 @@ src_compile() {
"${S}/swift/utils/build-script" \
--verbose-build \
--release \
+ --no-assertions \
+ --build-subdir="Ninja-Release" \
--install-destdir="${S}/stage0" \
--extra-cmake-options="${extra_cmake_options}" \
--bootstrapping=off \
@@ -245,6 +247,8 @@ src_compile() {
"${S}/swift/utils/build-script" \
--verbose-build \
--release \
+ --no-assertions \
+ --build-subdir="Ninja-Release" \
--install-destdir="${S}/stage1" \
--extra-cmake-options="${extra_cmake_options}" \
--build-swift-libexec=false \
@@ -267,6 +271,8 @@ src_compile() {
"${S}/swift/utils/build-script" \
--verbose-build \
--release \
+ --no-assertions \
+ --build-subdir="Ninja-Release" \
--install-destdir="${S}/stage2" \
--extra-cmake-options="${extra_cmake_options}" \
--build-swift-libexec=false \
^ permalink raw reply related [flat|nested] 17+ messages in thread
end of thread, other threads:[~2024-10-13 14:51 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-10 20:34 [gentoo-commits] repo/proj/guru:master commit in: dev-lang/swift/ Lucio Sauer
-- strict thread matches above, loose matches on Subject: below --
2024-10-13 14:51 David Roman
2024-10-13 14:51 David Roman
2024-10-13 14:51 David Roman
2024-10-13 14:51 David Roman
2024-10-13 14:51 David Roman
2024-10-13 14:51 David Roman
2024-09-14 0:43 David Roman
2024-09-14 0:43 David Roman
2024-08-10 20:34 Lucio Sauer
2024-08-10 20:34 Lucio Sauer
2024-08-10 20:34 Lucio Sauer
2024-08-10 20:34 Lucio Sauer
2024-08-10 20:34 Lucio Sauer
2024-07-17 8:40 David Roman
2024-07-17 8:40 David Roman
2024-07-01 13:50 David Roman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox