Post GSoC Results

Hey Guys,

My name is Nafeez, an iOS Dev. I applied to GSoC but couldn't get in but I still want to make some open-source contributions to the Swift language as I'm amazed by the language and I want to contribute towards the compilers or any other topics related to Swift but lack the experience of open source so, kindly help me and provide me some references or anything helpful so that I can be a benefit to the community :)

1 Like

First thing you want to do is try to build the compiler yourself. Then, look for good first issues on the various Swift repos, and if something interests you, fix it.

Alternately, if you have some bug or feature that already interested you, work on that.

Note that the Swift Package Manager is just a Swift package, so you don't have to build the compiler to build it. Simply download a working trunk toolchain and the source for SwiftPM, make your changes, then build it like any other Swift package and link your modified SwiftPM binary into your trunk toolchain:

> wget https://download.swift.org/development/ubi9/swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a/swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a-ubi9.tar.gz
> tar xf swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a-ubi9.tar.gz
> git clone https://github.com/apple/swift-package-manager.git
> cd swift-package-manager/
> git checkout swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a
# Make your changes, say to swift-build
> ../swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a-ubi9/usr/bin/swift build
> ln -sf `pwd`/.build/x86_64-unknown-linux-gnu/debug/swift-build ../swift-DEVELOPMENT-SNAPSHOT-2024-05-01-a-ubi9/usr/bin/swift-build

Now you have a modified swift-build you can experiment with. If building your modified swift-build fails because of missing libraries, make sure you have the necessary distro packages to build the toolchain, as SwiftPM has dependencies like SQLite.

Don't hesitate to ask for help if you don't know what some code is doing or get stuck somewhere, especially in this forum.

2 Likes

Thanks so much :)

1 Like

Hey, I need some help here the llvm-project directory is not available when I download the dependencies and IDK what to do. Kindly provide me help so, that I can generate the Xcode project successfully



Try running update-checkout again, and look for any errors it reports. Also, the doc I linked you recommends using ninja, not Xcode, to build the Swift toolchain.

1 Like

Hey, I was able to install everything but having some trouble when moving the swift.xcodeproject to .xcworkspace. What am I missing here?