From 937788afd4e1d04a836773b0c249b251c2560693 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Fri, 4 Apr 2025 21:46:48 +0200 Subject: [PATCH 01/19] add proposal --- gsoc2025/index.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 85f29f393..8aa785104 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -388,6 +388,32 @@ Strech goals: - [Si Beaumont](https://github.com/simonjbeaumont) - [Honza Dvorsky](https://github.com/czechboy0) + +### Swift for Embedded Linux + +**Project size**: 350 hours (large) + +**Estimated difficulty**: Intermediate + +**Recommended skills** + +C++, Swift, Python, CMake, Bitbake + +**Description** + +Apple's Swift programming language is growing. With the static Linux SDK (https://www.swift.org/documentation/articles/static-linux-getting-started.html) and Swift cross compilation concept(https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. +I would like to join these efforts and bring Swift to Embedded Linux using Yocto. + +**Expected outcomes/benefits/deliverables** + +- Swift built using Yocto for architectures: arch32, aarch64 and x86_64 +- CI on swiftlang/swift for Embedded Linux +- meta-swift (Yocto layer) established on swiftlang + +**Potential mentors** + +- [Luke Howard](https://github.com/lhoward) + ### Example project name **Project size**: N hours From a6a8275212f6f7db40b585301e320dc51ddb158d Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Fri, 4 Apr 2025 21:52:40 +0200 Subject: [PATCH 02/19] typo --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 8aa785104..0a4a11973 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -406,7 +406,7 @@ I would like to join these efforts and bring Swift to Embedded Linux using Yocto **Expected outcomes/benefits/deliverables** -- Swift built using Yocto for architectures: arch32, aarch64 and x86_64 +- Swift built using Yocto for architectures: aarch32, aarch64 and x86_64 - CI on swiftlang/swift for Embedded Linux - meta-swift (Yocto layer) established on swiftlang From 345a25d85bd309f6165d3bff5401924e966f9770 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:17:32 +0200 Subject: [PATCH 03/19] add contributor --- gsoc2025/index.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 0a4a11973..a765d4966 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -410,6 +410,10 @@ I would like to join these efforts and bring Swift to Embedded Linux using Yocto - CI on swiftlang/swift for Embedded Linux - meta-swift (Yocto layer) established on swiftlang +**Contributor** + +- [Xaver Gruber](https://github.com/xavgru12) + **Potential mentors** - [Luke Howard](https://github.com/lhoward) From 8b302de04308a7830f38d3bc9479eae07192be86 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:18:24 +0200 Subject: [PATCH 04/19] armv7 --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index a765d4966..2fa28db97 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -406,7 +406,7 @@ I would like to join these efforts and bring Swift to Embedded Linux using Yocto **Expected outcomes/benefits/deliverables** -- Swift built using Yocto for architectures: aarch32, aarch64 and x86_64 +- Swift built using Yocto for architectures: armv7, aarch64 and x86_64 - CI on swiftlang/swift for Embedded Linux - meta-swift (Yocto layer) established on swiftlang From d5866fdd0dcbf986840417d2cfd7cb5e289ad1f7 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:19:28 +0200 Subject: [PATCH 05/19] use markdown links --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 2fa28db97..760333e25 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -401,7 +401,7 @@ C++, Swift, Python, CMake, Bitbake **Description** -Apple's Swift programming language is growing. With the static Linux SDK (https://www.swift.org/documentation/articles/static-linux-getting-started.html) and Swift cross compilation concept(https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. +Apple's Swift programming language is growing. With the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [Swift cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. **Expected outcomes/benefits/deliverables** From e7ceef085417065ea281bbdf574f79a956eff921 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:21:25 +0200 Subject: [PATCH 06/19] clarification --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 760333e25..29ee1c1b6 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -402,7 +402,7 @@ C++, Swift, Python, CMake, Bitbake **Description** Apple's Swift programming language is growing. With the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [Swift cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. -I would like to join these efforts and bring Swift to Embedded Linux using Yocto. +I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification Swift for Embedded Linux is supposed to be a full featured Swift, since it has nothing to do with Embedded Swift, which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** From 8f44aa9e19e5b20f04238e19030b50c0fc4ad842 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:22:00 +0200 Subject: [PATCH 07/19] break lines --- gsoc2025/index.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 29ee1c1b6..bf3ece3db 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -401,8 +401,15 @@ C++, Swift, Python, CMake, Bitbake **Description** -Apple's Swift programming language is growing. With the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [Swift cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. -I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification Swift for Embedded Linux is supposed to be a full featured Swift, since it has nothing to do with Embedded Swift, which only contains a subset of Swift's features. +Apple's Swift programming language is growing. With the [static Linux +SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) +and [Swift cross compilation +concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) +efforts have been made to port Swift to more platforms. I would like to join +these efforts and bring Swift to Embedded Linux using Yocto. As clarification +Swift for Embedded Linux is supposed to be a full featured Swift, since it has +nothing to do with Embedded Swift, which only contains a subset of Swift's +features. **Expected outcomes/benefits/deliverables** From 262349c75ddce13f49f7a38f138089cb31bef873 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:24:32 +0200 Subject: [PATCH 08/19] simplify --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index bf3ece3db..ed6223fbb 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -403,7 +403,7 @@ C++, Swift, Python, CMake, Bitbake Apple's Swift programming language is growing. With the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) -and [Swift cross compilation +and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification From b341df250f422139bcbe93c56e874b86e1cea471 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:25:26 +0200 Subject: [PATCH 09/19] simplify more --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index ed6223fbb..63d81ab3d 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -401,7 +401,7 @@ C++, Swift, Python, CMake, Bitbake **Description** -Apple's Swift programming language is growing. With the [static Linux +Apple's Swift programming language is growing. With [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) From c54b80af2c3cf4c17f5b569cdf271b4b71809966 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:26:54 +0200 Subject: [PATCH 10/19] remove potential --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 63d81ab3d..e67aec20e 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -421,7 +421,7 @@ features. - [Xaver Gruber](https://github.com/xavgru12) -**Potential mentors** +**Mentor** - [Luke Howard](https://github.com/lhoward) From c9fe75e9d3a10768831fb829c74bb24c938b3168 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:28:53 +0200 Subject: [PATCH 11/19] unrelated --- gsoc2025/index.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index e67aec20e..88bd700f5 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -407,8 +407,7 @@ and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification -Swift for Embedded Linux is supposed to be a full featured Swift, since it has -nothing to do with Embedded Swift, which only contains a subset of Swift's +Swift for Embedded Linux is supposed to be a full featured Swift, since it unrelated to with Embedded Swift, which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** From ef861b5090e187876cb7aea372b1a1d6dc182c89 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Sat, 5 Apr 2025 09:29:16 +0200 Subject: [PATCH 12/19] remove with --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 88bd700f5..0dd021fe6 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -407,7 +407,7 @@ and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification -Swift for Embedded Linux is supposed to be a full featured Swift, since it unrelated to with Embedded Swift, which only contains a subset of Swift's +Swift for Embedded Linux is supposed to be a full featured Swift, since it unrelated to Embedded Swift, which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** From 9a914668d6611906bc1662b66a63bc002798a497 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 17:05:12 +0200 Subject: [PATCH 13/19] add new mentors --- gsoc2025/index.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index c9d70cd47..ed69d05a6 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -452,9 +452,10 @@ features. - [Xaver Gruber](https://github.com/xavgru12) -**Mentor** +**Mentors** -- [Luke Howard](https://github.com/lhoward) +- [finagolfin](https://github.com/finagolfin) +- [Jesse Zamora](https://github.com/xtremekforever) ### Example project name From b6ea80e273e4c1c8b4299ccdad0e08f8df8c077c Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 17:06:14 +0200 Subject: [PATCH 14/19] format --- gsoc2025/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index ed69d05a6..d2611b0b0 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -439,8 +439,8 @@ and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification -Swift for Embedded Linux is supposed to be a full featured Swift, since it unrelated to Embedded Swift, which only contains a subset of Swift's -features. +Swift for Embedded Linux is supposed to be a full featured Swift, since it +unrelated to Embedded Swift, which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** From 46ee49f48659215d670cc1a07f25d22c9673d4cc Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 18:01:11 +0200 Subject: [PATCH 15/19] typo --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index d2611b0b0..3ddf09f23 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -439,7 +439,7 @@ and [cross compilation concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join these efforts and bring Swift to Embedded Linux using Yocto. As clarification -Swift for Embedded Linux is supposed to be a full featured Swift, since it +Swift for Embedded Linux is supposed to be a full featured Swift, since it is unrelated to Embedded Swift, which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** From e2acd88c350dbadfee2df3fea8d93afb7a5d059e Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 20:41:21 +0200 Subject: [PATCH 16/19] update --- gsoc2025/index.md | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 3ddf09f23..46ab76a30 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -433,20 +433,23 @@ C++, Swift, Python, CMake, Bitbake **Description** -Apple's Swift programming language is growing. With [static Linux +Apple's Swift programming language is growing. With the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [cross compilation -concept](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) +bundles](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) efforts have been made to port Swift to more platforms. I would like to join -these efforts and bring Swift to Embedded Linux using Yocto. As clarification -Swift for Embedded Linux is supposed to be a full featured Swift, since it is -unrelated to Embedded Swift, which only contains a subset of Swift's features. +these efforts and bring Swift to Embedded Linux using +[Yocto](https://www.yoctoproject.org/). As clarification Swift for Embedded +Linux is supposed to be a full featured Swift, since it is unrelated to +[Embedded +Swift](https://github.com/swiftlang/swift-evolution/blob/main/visions/embedded-swift.md), +which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** - Swift built using Yocto for architectures: armv7, aarch64 and x86_64 - CI on swiftlang/swift for Embedded Linux -- meta-swift (Yocto layer) established on swiftlang +- [meta-swift](https://github.com/jeremy-prater/meta-swift) (Yocto layer) established on swiftlang **Contributor** From 114d9f3df8f8395c53fd38eafb36c62ed0893512 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 20:42:29 +0200 Subject: [PATCH 17/19] bullet point for tools --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 46ab76a30..6f4facf08 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -429,7 +429,7 @@ from Java, using these generated Java accessor classes. **Recommended skills** -C++, Swift, Python, CMake, Bitbake +- C++, Swift, Python, CMake, Bitbake **Description** From 50e942850ee1ad817e7166499f1f5fad2e01725b Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 20:49:16 +0200 Subject: [PATCH 18/19] clarify cross compilation --- gsoc2025/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 6f4facf08..0099fb554 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -447,7 +447,7 @@ which only contains a subset of Swift's features. **Expected outcomes/benefits/deliverables** -- Swift built using Yocto for architectures: armv7, aarch64 and x86_64 +- cross-compile Swift and Swift applications for Embedded Linux using Yocto for architectures: armv7, aarch64 and x86_64 - CI on swiftlang/swift for Embedded Linux - [meta-swift](https://github.com/jeremy-prater/meta-swift) (Yocto layer) established on swiftlang From 1a33c31ca2e0b92d7ea13017fb44f44fcc92ab64 Mon Sep 17 00:00:00 2001 From: Xaver Gruber Date: Mon, 7 Apr 2025 21:33:28 +0200 Subject: [PATCH 19/19] rephrase description sentence --- gsoc2025/index.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gsoc2025/index.md b/gsoc2025/index.md index 0099fb554..ca07c4a01 100644 --- a/gsoc2025/index.md +++ b/gsoc2025/index.md @@ -433,12 +433,12 @@ from Java, using these generated Java accessor classes. **Description** -Apple's Swift programming language is growing. With the [static Linux +Apple's Swift programming language is growing. Leveraging recent advancements +like the [static Linux SDK](https://www.swift.org/documentation/articles/static-linux-getting-started.html) and [cross compilation -bundles](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md) -efforts have been made to port Swift to more platforms. I would like to join -these efforts and bring Swift to Embedded Linux using +bundles](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md), +this proposal aims to enable Swift's official support for Embedded Linux using [Yocto](https://www.yoctoproject.org/). As clarification Swift for Embedded Linux is supposed to be a full featured Swift, since it is unrelated to [Embedded