https://github.com/uraimo/buildswiftonarminfra
Setup an infrastructure to build Swift on Linux/ARM
https://github.com/uraimo/buildswiftonarminfra
arm docker raspberry-pi swift
Last synced: 4 months ago
JSON representation
Setup an infrastructure to build Swift on Linux/ARM
- Host: GitHub
- URL: https://github.com/uraimo/buildswiftonarminfra
- Owner: uraimo
- License: bsd-3-clause
- Created: 2019-10-25T16:21:04.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-11-10T18:55:55.000Z (over 6 years ago)
- Last Synced: 2025-05-08T22:35:32.694Z (about 1 year ago)
- Topics: arm, docker, raspberry-pi, swift
- Language: Shell
- Homepage:
- Size: 38.1 KB
- Stars: 8
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
This repository contains a set of Dockerfiles used to setup an infrastructure to build the latest Swift for various distributions on variants of the ARM architecture with [buildSwiftOnARM](https://github.com/uraimo/buildSwiftOnARM).
With these Dockerfiles you'll be able to recreate the same set of Linux Swift binaries available on buildSwiftOnARM (for both ARMv6 and ARMv7) using a single Raspberry Pi 3 or 4 with Docker installed. There are no particular requirements other than the recommendation of using an external usb drive (pen, ssd or hard disk) to store the docker data-root directory (see [here](https://blog.adriel.co.nz/2018/01/25/change-docker-data-directory-in-debian-jessie/)).
## Usage
Build your image using one of the Dockerfile provided (grouped by architecture):
```
docker build . --file armv7/Dockerfile.armv7.debian.buster --tag myswiftimage
```
The Dockerfiles are named following the format: `Dockerfile...`.
Once the build phase completes, the resulting image will contain the Swift repository and all the dependencies needed to build the compiler and all the related projects.
To complete the process, create an interactive container:
```
docker run -i -t myswiftimage /bin/bash
```
And then run `./updateCheckout.sh` to checkout the latest supported Swift release, followed by `./build.sh` to start building Swift.
## Supported distributions
At the moment, the architecture/distribution pairs supported are those used to build binaries for the [main project](https://github.com/uraimo/buildSwiftOnARM):
* ARMv6: Debian (Raspbian) Stretch/Buster
* ARMV7: Debian Stretch/Buster, Ubuntu 16.04, 18.04