With the Docker Tech Preview available (and working quite well as far as I can tell), I was wondering if there are any plans to publish arm64 swift docker images.
I.e. I'd love to get this to work on an M1 Mac:
❯ docker run swift:5.3
Unable to find image 'swift:5.3' locally
5.3: Pulling from library/swift
docker: no matching manifest for linux/arm64/v8 in the manifest list entries.
❯ docker --version
Docker version 20.10.1, build 831ebea
I looked around a bit yesterday to see if I could build an image myself and found these instructions here: swift-arm64/README.md at master · futurejones/swift-arm64 · GitHub
That fails pretty soon with
[27/29][ 93%][2.023s] AR build/libninja.a
[28/29][ 96%][2.329s] CXX build/ninja.o
[29/29][100%][2.393s] LINK ninja
bootstrapping ninja...
warning: A compatible version of re2c (>= 0.11.3) was not found; changes to src/*.in.cc will not affect your build.
wrote build.ninja.
bootstrap complete. rebuilding...
+ popd
[./swift/utils/build-script] ERROR: can't find source directory for libicu (tried /home/build-user/icu)
ERROR: command terminated with a non-zero exit status 1, aborting
and before going further down that particular rabbit hole I wanted to see if anyone knows if this is even the right rabbit hole or if there are other, nicer ones to explore
5 Likes
t089
(Tobias)
January 15, 2021, 3:03pm
2
This is a really good question. Is there any official support for linux/arm64
platform support planned for Swift? So far the official downloads from swift.org are only amd64
There is Releases · futurejones/swift-arm64 · GitHub which provides the Swift Toolchain for linux/arm64
.
As a proof of concept, I took the latest release from futurejones/swift-arm64 and built Docker images from it and combined them with the official Docker images from Docker Hub Docker Hub
So you can do on your M1 or an intel Mac or a linux box:
$ docker run -it --rm th089/swift:5.3.2-bionic swift --version
5.3.2-bionic: Pulling from th089/swift
Digest: sha256:8574d9ee4e03d8be93d0ca26ae1dc4c3f3641eb33f6baee8a1f4712b60afa809
Status: Downloaded newer image for th089/swift:5.3.2-bionic
Swift version 5.3.2 (swift-5.3.2-RELEASE)
Target: aarch64-unknown-linux-gnu
3 Likes
tomerd
January 15, 2021, 9:59pm
3
this would be a great addition to swift-docker/swift-ci at main · apple/swift-docker · GitHub which is how we create docker images for linux. after the Dockerfiles are in place, we would then need to work with @mishal_shah and team to have CI jobs to utilize the new flavors
That's great, thanks for sharing that image, Tobias!
When you say you built docker images from the releases on futurejones, do you mean you built swift following their instructions or did you install their Swift releases in an arm64 linux base image?
I'd love to see the details so I can try and set it up for other Swift version.
t089
(Tobias)
January 16, 2021, 10:42am
5
did you install their Swift releases in an arm64 linux base image?
This. I’ll share some details later!
One thing that might be of interest to anyone on an M1 machine looking to use a nightly toolchain or any other Swift release in the interim: you can always run the intel images in Rosetta via:
docker run --platform linux/amd64 --rm -it swift:5.3
Given how well Rosetta works, this should help in a lot of typical Docker use-cases where convenience is more important than the last ounce of performance.
Edit: this does not actually work (yet?):
❯ docker run --platform linux/amd64 --rm -it swift:5.3 swift --version
Stack dump:
0. Program arguments: /usr/bin/swift --version
1. Swift version 5.3.2 (swift-5.3.2-RELEASE)
/usr/bin/swift[0x51fa1c4]
/usr/bin/swift[0x51f7dbe]
/usr/bin/swift[0x51fa49c]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x4000a45980]
/usr/bin/swift[0x192e333]
/usr/bin/swift[0x192735f]
/usr/bin/swift[0x4e9956]
/usr/bin/swift[0x4e8ce8]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7)[0x4002247bf7]
/usr/bin/swift[0x4e888a]
qemu: uncaught target signal 4 (Illegal instruction) - core dumped
1 Like
I used to do various Raspberry Pi Docker images over here Docker Hub , e.g. Docker Hub . Based on various methods provided by the community (e.g. some on Future Jones stuff', some based on packages provided by Uraimo, etc.). They are not very up2date anymore but maybe useful to someone ;-)
I'm no expert on this, but I think an issue is ARM compatibility. To be honest I was surprised that M1's can even run ARM Linux out of the box. The problem is that ARM is not ARM, the vendors can add/remove features at will.
E.g. 2 years ago or so I tried to build Swift on the ARM instances provided by Scaleway. That didn't work out, because their boards had a different feature set (different Neon version? Something like that).
In other words, the question is what the Swift provided image would be. Is it an M1 optimised one which only works in M1 Docker? One which also works on Raspi's? Or on other boards? Which one?
(but again: I'm no expert on ARM, maybe that's a non-issue today, e.g. Graviton also seems to work out of the box?).
Just tried it, and this just works:
helge@M1ni ~ $ docker run helje5/arm64v8-swift-dev:5.0-latest swift --version
Swift version 5.0 (swift-5.0-RELEASE)
Target: aarch64-unknown-linux-gnu
This is the GitHub repo used for building the images: GitHub - helje5/dockSwiftOnARM: Playing with dockerizing Swift for Raspberry Pi .
And another update: I've pushed 5.3.2 images based on FutureJones' build. This allows me to build Macro.swift directly in Docker on the M1:
helge@M1ni MacroExpress $ docker run --rm -v "$HOME/dev/Swift/Macro/MacroExpress:/src" -v "$HOME/dev/Swift/Macro/MacroExpress/.docker.build:/src/.build" helje5/arm64v8-swift-dev:5.3.2 bash -c 'cd /src && swift build -c release'
Fetching https://github.com/apple/swift-nio.git
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/AlwaysRightInstitute/mustache.git
Fetching https://github.com/Macro-swift/Macro.git
Cloning https://github.com/apple/swift-log.git
Resolving https://github.com/apple/swift-log.git at 1.4.0
Cloning https://github.com/AlwaysRightInstitute/mustache.git
Resolving https://github.com/AlwaysRightInstitute/mustache.git at 0.5.9
Cloning https://github.com/Macro-swift/Macro.git
Resolving https://github.com/Macro-swift/Macro.git at 0.6.2
Cloning https://github.com/apple/swift-nio.git
Resolving https://github.com/apple/swift-nio.git at 2.25.1
[1/12] Compiling mime MIME.swift
[2/12] Compiling CNIOWindows shim.c
[3/12] Compiling CNIOWindows WSAStartup.c
[4/12] Compiling CNIOSHA1 c_nio_sha1.c
[5/12] Compiling CNIOLinux shim.c
[6/12] Compiling xsys Module.swift
[7/12] Compiling Logging Locks.swift
[8/12] Compiling CNIODarwin shim.c
[9/12] Compiling CNIOHTTPParser c_nio_http_parser.c
[10/12] Compiling mustache HTMLEscape.swift
[11/12] Compiling c-nioatomics.c
[12/12] Compiling c-atomics.c
[13/13] Compiling NIOConcurrencyHelpers NIOAtomic.swift
[14/14] Compiling NIO AddressedEnvelope.swift
[15/16] Compiling NIOFoundationCompat ByteBuffer-foundation.swift
[16/17] Compiling MacroCore Buffer.swift
[17/18] Compiling NIOHTTP1 ByteCollectionUtils.swift
[18/19] Compiling fs Directory.swift
[19/20] Compiling dotenv dotenv.swift
[20/20] Compiling http Agent.swift
[21/21] Compiling connect BodyParser.swift
[22/22] Compiling express BasicAuth.swift
[23/23] Compiling MacroExpress MacroExpress.swift
helge@M1ni MacroExpress $ du -sh .docker.build/aarch64-unknown-linux-gnu/release/
35M .docker.build/aarch64-unknown-linux-gnu/release/
1 Like
t089
(Tobias)
January 16, 2021, 5:49pm
8
I don’t think this is Rosetta. I think this will use QEMU emulation in the virtual machine that hosts the docker daemon.
2 Likes
Yes, you’re right! It actually says so in the last line where the core is dumped :)
t089
(Tobias)
January 16, 2021, 9:40pm
10
I've just uploaded the Dockerfiles I used to create the images here:
Let me know what you think!
2 Likes
t089
(Tobias)
January 18, 2021, 8:45am
11
Hey, @tomerd , not sure I follow. I believe the existing Dockerfiles are just fine. I didn't check all the base images but at least for ubuntu and amazonlinux, the base images already support arm64
as-is. So, all you need to do, is add one or more arm64
nodes to the swift-ci (eg. an AWS m6g instance should work really well) and run the builds. I tested the ubuntu:20.04
Dockerfile on a m6g.xlarge
: after approx 2h it completed the swift-5.3.2-RELEASE
build with
cp -r /source/* /home/build-user/
./swift/utils/build-script --preset buildbot_linux,no_test \
install_destdir=/home/build-user/install \
installable_package=/home/build-user/install/swift-5.3.2-RELEASE-ubuntu-20.04-arm64.tar.gz
Once you have the arm64
tarballs in place you can change the existing swift
dockerfiles to fetch the platform specific archive:
Eg:
# ...
&& SWIFT_BIN_URL="$SWIFT_WEBDIR/$SWIFT_VERSION/$SWIFT_VERSION-$SWIFT_PLATFORM-$SWIFT_ARCH.tar.gz" \
# ...
Where SWIFT_ARCH
can be defined in the Dockerfile as:
ARG TARGETARCH
ARG SWIFT_ARCH=${TARGETARCH}
If you then run the docker build on an amd64
instance SWIFT_ARCH
will be amd64
and on arm64
instance, it will be arm64
, respectively.
3 Likes
t089
(Tobias)
January 20, 2021, 9:04am
12
ping @tomerd @mishal_shah
Is this something that could be looked into from your end?
1 Like
tomerd
January 20, 2021, 8:24pm
13
t089:
Hey, @tomerd , not sure I follow. I believe the existing Dockerfiles are just fine. I didn't check all the base images but at least for ubuntu and amazonlinux, the base images already support arm64
as-is. So, all you need to do, is add one or more arm64
nodes to the swift-ci (eg. an AWS m6g instance should work really well) and run the builds.
thanks for the clarification, my [wrong] assumption was that we would need to make changes to the Dockerfiles to get this to work, happy to learn they work as-is
This is def something I think we should pursue, would need to work with @mishal_shah and team to figure out when we can support it
6 Likes
Sorry, I'm quite late here, you'll need to pass a -e QEMU_CPU=max
and then it should work. Ie
docker run --platform linux/amd64 -e QEMU_CPU=max --rm -it swift:5.3
The reason that this doesn't work out of the box is that Qemu emulates a CPU that's too old for the Swift compiler (see SR-14186 , SR-14474 and docker/for-mac#5561 ).
1 Like
Fixed now in Docker Desktop 3.3.0. -e QEMU_CPU=max
is now implied, no longer need to pass that argument.
6 Likes
Hi everyone,
I am now releasing Swift for Arm64 Docker images for Debian and Ubuntu along with the .tar .deb package releases.
Also, starting with Swift 5.4 all packages are now being digitally signed.
Docker Images here - https://hub.docker.com/r/swiftarm/swift
Package Releases here - https://github.com/futurejones/swift-arm64/releases
14 Likes
Is this method works for nightly docker image?
I still get error with this command docker run --platform linux/amd64 -e QEMU_CPU=max --rm -it swiftlang/swift:nightly-focal
qemu: uncaught target signal 4 (Illegal instruction) - core dumped
Illegal instruction
1 Like
I assume you're using Docker for Mac. Which Docker for Mac version are you using? And you you mind re-running the command with -j 1 -v
(e.g. swift build -j 1 -v
) and posting a bunch more output?
My docker is version 3.3.3(64133), I will try again tomorrow.
Here are the logs
root@812e0ca6e954:/# git clone --recursive --depth 1 https://github.com/SusanDoggie/Doggie.git
Cloning into 'Doggie'...
remote: Enumerating objects: 1034, done.
remote: Counting objects: 100% (1034/1034), done.
remote: Compressing objects: 100% (935/935), done.
remote: Total 1034 (delta 400), reused 340 (delta 86), pack-reused 0
Receiving objects: 100% (1034/1034), 1.11 MiB | 832.00 KiB/s, done.
Resolving deltas: 100% (400/400), done.
root@812e0ca6e954:/# cd Doggie
root@812e0ca6e954:/Doggie# swift build -j 1 -v
lsb_release -r
/usr/bin/swiftc -print-target-info
/usr/bin/swiftc -print-target-info
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.3.0 /Doggie/Package.swift -o /tmp/TemporaryDirectory.2KXYig/doggie-manifest
/tmp/TemporaryDirectory.2KXYig/doggie-manifest -fileno 12
Running resolver because the following dependencies were added: 'https://github.com/SusanDoggie/libjpeg', 'https://github.com/apple/swift-numerics', 'https://github.com/SusanDoggie/brotli', 'https://github.com/SusanDoggie/libwebp', 'https://github.com/SusanDoggie/Float16', 'https://github.com/apple/swift-collections', 'https://github.com/apple/swift-algorithms'
Fetching https://github.com/SusanDoggie/libjpeg
Fetching https://github.com/SusanDoggie/libwebp
Fetching https://github.com/SusanDoggie/brotli
git clone -c core.symlinks=true --mirror https://github.com/SusanDoggie/brotli /root/.cache/org.swift.swiftpm/repositories/brotli-8f8d9d52
git clone -c core.symlinks=true --mirror https://github.com/SusanDoggie/libwebp /root/.cache/org.swift.swiftpm/repositories/libwebp-91586e16
git clone -c core.symlinks=true --mirror https://github.com/SusanDoggie/libjpeg /root/.cache/org.swift.swiftpm/repositories/libjpeg-e0313956
Fetched https://github.com/SusanDoggie/libjpeg (1.77s)
git -C /Doggie/.build/repositories/libjpeg-e0313956 tag -l
Fetched https://github.com/SusanDoggie/brotli (1.78s)
Fetched https://github.com/SusanDoggie/libwebp (1.78s)
git clone -c core.symlinks=true --mirror https://github.com/SusanDoggie/Float16 /root/.cache/org.swift.swiftpm/repositories/Float16-c4819c2a
Fetching https://github.com/SusanDoggie/Float16
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-collections /root/.cache/org.swift.swiftpm/repositories/swift-collections-7977a4e0
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-algorithms /root/.cache/org.swift.swiftpm/repositories/swift-algorithms-b4ebf534
git -C /Doggie/.build/repositories/brotli-8f8d9d52 tag -l
Fetching https://github.com/apple/swift-collections
Fetching https://github.com/apple/swift-algorithms
git -C /Doggie/.build/repositories/libwebp-91586e16 tag -l
Fetched https://github.com/SusanDoggie/Float16 (1.39s)
git -C /Doggie/.build/repositories/Float16-c4819c2a tag -l
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-numerics /root/.cache/org.swift.swiftpm/repositories/swift-numerics-9e344942
Fetching https://github.com/apple/swift-numerics
Fetched https://github.com/apple/swift-numerics (4.86s)
git -C /Doggie/.build/repositories/swift-numerics-9e344942 tag -l
Fetched https://github.com/apple/swift-algorithms (8.61s)
Fetched https://github.com/apple/swift-collections (8.62s)
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 tag -l
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 tag -l
Computing version for https://github.com/SusanDoggie/libjpeg
git -C /Doggie/.build/repositories/libjpeg-e0313956 ls-tree 1.0.0
git -C /Doggie/.build/repositories/libjpeg-e0313956 cat-file -p e5a7feabeb97cdb5b8ae921d3f1c933a1b3ad812
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.VSs6Og.swift -o /tmp/TemporaryDirectory.0GhIig/libjpeg-manifest
/tmp/TemporaryDirectory.0GhIig/libjpeg-manifest -fileno 16
Computed https://github.com/SusanDoggie/libjpeg at 1.0.0 (2.01s)
Computing version for https://github.com/SusanDoggie/libwebp
git -C /Doggie/.build/repositories/libwebp-91586e16 ls-tree 1.0.0
git -C /Doggie/.build/repositories/libwebp-91586e16 cat-file -p 81d6e020208df6517ec8d5dcb50f5d78eebd23da
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.4elEyf.swift -o /tmp/TemporaryDirectory.xKeQ5d/libwebp-manifest
/tmp/TemporaryDirectory.xKeQ5d/libwebp-manifest -fileno 16
Computed https://github.com/SusanDoggie/libwebp at 1.0.0 (2.40s)
Computing version for https://github.com/SusanDoggie/brotli
git -C /Doggie/.build/repositories/brotli-8f8d9d52 ls-tree 1.0.0
git -C /Doggie/.build/repositories/brotli-8f8d9d52 cat-file -p cba3c360323982641806023654a9eb59cdd06cb6
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.byu1pg.swift -o /tmp/TemporaryDirectory.PCpRZf/brotli-manifest
/tmp/TemporaryDirectory.PCpRZf/brotli-manifest -fileno 16
Computed https://github.com/SusanDoggie/brotli at 1.0.0 (2.31s)
Computing version for https://github.com/SusanDoggie/Float16
git -C /Doggie/.build/repositories/Float16-c4819c2a ls-tree 1.0.0
git -C /Doggie/.build/repositories/Float16-c4819c2a cat-file -p e689eca89e1fbba498c6635a7802479b52d9a776
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.5hswah.swift -o /tmp/TemporaryDirectory.TXoiEf/float16-manifest
/tmp/TemporaryDirectory.TXoiEf/float16-manifest -fileno 16
Computed https://github.com/SusanDoggie/Float16 at 1.0.0 (2.02s)
Computing version for https://github.com/apple/swift-collections
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 ls-tree 0.0.2
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 cat-file -p 868936e12a6097d5387519ba1a6156dabc92f290
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.3.0 /tmp/TemporaryFile.FDmndi.swift -o /tmp/TemporaryDirectory.Bho8Fg/swift-collections-manifest
/tmp/TemporaryDirectory.Bho8Fg/swift-collections-manifest -fileno 16
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 ls-tree 0.0.1
Computed https://github.com/apple/swift-collections at 0.0.2 (2.37s)
Fetching https://github.com/apple/swift-collections-benchmark
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-collections-benchmark /root/.cache/org.swift.swiftpm/repositories/swift-collections-benchmark-64802200
Fetched https://github.com/apple/swift-collections-benchmark (10.86s)
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 tag -l
Computing version for https://github.com/apple/swift-numerics
git -C /Doggie/.build/repositories/swift-numerics-9e344942 ls-tree 0.1.0
git -C /Doggie/.build/repositories/swift-numerics-9e344942 cat-file -p 565d5d60636bc363d2fa5e4a55ff2b1051f6c3fb
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.0.0 /tmp/TemporaryFile.qKuFgh.swift -o /tmp/TemporaryDirectory.VkyOBg/swift-numerics-manifest
/tmp/TemporaryDirectory.VkyOBg/swift-numerics-manifest -fileno 16
Computed https://github.com/apple/swift-numerics at 0.1.0 (2.03s)
Computing version for https://github.com/apple/swift-collections-benchmark
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 ls-tree 0.0.2
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 cat-file -p dda6a477b5e9948577295862d37cf6a12165784a
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.3.0 /tmp/TemporaryFile.2KFtze.swift -o /tmp/TemporaryDirectory.X6pQZh/swift-collections-benchmark-manifest
/tmp/TemporaryDirectory.X6pQZh/swift-collections-benchmark-manifest -fileno 16
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 ls-tree 0.0.1
Computed https://github.com/apple/swift-collections-benchmark at 0.0.2 (2.19s)
Fetching https://github.com/apple/swift-system
Fetching https://github.com/apple/swift-argument-parser
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-system /root/.cache/org.swift.swiftpm/repositories/swift-system-9ccc8507
git clone -c core.symlinks=true --mirror https://github.com/apple/swift-argument-parser /root/.cache/org.swift.swiftpm/repositories/swift-argument-parser-71d4b286
Fetched https://github.com/apple/swift-system (1.99s)
git -C /Doggie/.build/repositories/swift-system-9ccc8507 tag -l
Fetched https://github.com/apple/swift-argument-parser (3.35s)
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 tag -l
Computing version for https://github.com/apple/swift-system
git -C /Doggie/.build/repositories/swift-system-9ccc8507 ls-tree 0.0.2
git -C /Doggie/.build/repositories/swift-system-9ccc8507 cat-file -p 4c6e4ab2c6bf169585cb75fd6849803bb89a43ff
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.2.0 /tmp/TemporaryFile.3pMsbh.swift -o /tmp/TemporaryDirectory.WFQWig/swift-system-manifest
/tmp/TemporaryDirectory.WFQWig/swift-system-manifest -fileno 16
Computed https://github.com/apple/swift-system at 0.0.2 (1.95s)
Computing version for https://github.com/apple/swift-algorithms
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.2.0
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 cat-file -p 3a66975bf696d14341269e62ab8686d8971713e2
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.oVCymf.swift -o /tmp/TemporaryDirectory.WtsCDf/swift-algorithms-manifest
/tmp/TemporaryDirectory.WtsCDf/swift-algorithms-manifest -fileno 16
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.1.1
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.1.0
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.0.4
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.0.3
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.0.2
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 0.0.1
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 cat-file -p 109d787800568f6b5dedf6687b55a410638fa6ad
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.1.0 /tmp/TemporaryFile.Snodlg.swift -o /tmp/TemporaryDirectory.YSDnyf/swift-algorithms-manifest
/tmp/TemporaryDirectory.YSDnyf/swift-algorithms-manifest -fileno 16
Computed https://github.com/apple/swift-algorithms at 0.2.0 (5.86s)
Computing version for https://github.com/apple/swift-argument-parser
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 ls-tree 0.4.3
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 cat-file -p a8caf6ccbe39f6a65a847ee639e739ef5cf8370a
/usr/bin/swiftc -L /usr/lib/swift/pm/ManifestAPI -lPackageDescription -Xlinker -rpath -Xlinker /usr/lib/swift/pm/ManifestAPI -swift-version 5 -I /usr/lib/swift/pm/ManifestAPI -package-description-version 5.2.0 /tmp/TemporaryFile.QwN0fg.swift -o /tmp/TemporaryDirectory.swVXzf/swift-argument-parser-manifest
/tmp/TemporaryDirectory.swVXzf/swift-argument-parser-manifest -fileno 16
Computed https://github.com/apple/swift-argument-parser at 0.4.3 (2.10s)
git -C /Doggie/.build/repositories/libjpeg-e0313956 rev-parse --verify '1.0.0^{commit}'
git -C /Doggie/.build/repositories/libjpeg-e0313956 rev-parse --verify '8b439f0fc3508d4449340e54bb56766027c41b95^{tree}'
git -C /Doggie/.build/repositories/libjpeg-e0313956 ls-tree 3e56e953e07489912b1cef80f627df477ae03cbb
git -C /Doggie/.build/repositories/libwebp-91586e16 rev-parse --verify '1.0.0^{commit}'
git -C /Doggie/.build/repositories/libwebp-91586e16 rev-parse --verify 'dca9dbe783684a38a5ef70be93d770414a377774^{tree}'
git -C /Doggie/.build/repositories/libwebp-91586e16 ls-tree d90a5d0b994faba2fb1738b15e27da9c3605d6ca
git -C /Doggie/.build/repositories/brotli-8f8d9d52 rev-parse --verify '1.0.0^{commit}'
git -C /Doggie/.build/repositories/brotli-8f8d9d52 rev-parse --verify 'eae35c37a86c1ececbb8d26433c8f99856587ee5^{tree}'
git -C /Doggie/.build/repositories/brotli-8f8d9d52 ls-tree 8944e622d4d985611adac374129a4920d882f3c2
git -C /Doggie/.build/repositories/Float16-c4819c2a rev-parse --verify '1.0.0^{commit}'
git -C /Doggie/.build/repositories/Float16-c4819c2a rev-parse --verify 'cddf2a74e31547b250f1dab9bfada1004f52da10^{tree}'
git -C /Doggie/.build/repositories/Float16-c4819c2a ls-tree 2c2c63c96f5f58993b520ddcf281d1809e6f6284
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 rev-parse --verify '0.0.2^{commit}'
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 rev-parse --verify '2d719d75a2065f213e58a5164384a3d2fcf9b59a^{tree}'
git -C /Doggie/.build/repositories/swift-collections-7977a4e0 ls-tree e33898bff97e6c616896e2b9ee3dde66257e44f8
git -C /Doggie/.build/repositories/swift-numerics-9e344942 rev-parse --verify '0.1.0^{commit}'
git -C /Doggie/.build/repositories/swift-numerics-9e344942 rev-parse --verify '6583ac70c326c3ee080c1d42d9ca3361dca816cd^{tree}'
git -C /Doggie/.build/repositories/swift-numerics-9e344942 ls-tree 93b472afa27a06605b5a025a8da3825bc57156ae
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 rev-parse --verify '0.0.2^{commit}'
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 rev-parse --verify '665cbb154a55f45bcedd2ab4faf17b1b7ac06de3^{tree}'
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 ls-tree 10f48f73150caae51aae7e35b54f0f263979d55a
git -C /Doggie/.build/repositories/swift-system-9ccc8507 rev-parse --verify '0.0.2^{commit}'
git -C /Doggie/.build/repositories/swift-system-9ccc8507 rev-parse --verify '2bc160bfe34d843ae5ff47168080add24dfd7eac^{tree}'
git -C /Doggie/.build/repositories/swift-system-9ccc8507 ls-tree 1180c47aa57b0f91d686a67583901206306d721e
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 rev-parse --verify '0.2.0^{commit}'
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 rev-parse --verify 'e25cf27e57fc3eec00ea2fc8ea7f99695c59966f^{tree}'
git -C /Doggie/.build/repositories/swift-algorithms-b4ebf534 ls-tree 9e810aff0f43ed9234885846b3ed030abfb988c7
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 rev-parse --verify '0.4.3^{commit}'
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 rev-parse --verify '986d191f94cec88f6350056da59c2e59e83d1229^{tree}'
git -C /Doggie/.build/repositories/swift-argument-parser-71d4b286 ls-tree 44bd12be88739ac9c118279702a7a468f0007229
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 tag -l
git -C /Doggie/.build/repositories/swift-collections-benchmark-64802200 rev-parse --verify '0.0.2^{commit}'
Creating working copy for https://github.com/apple/swift-collections-benchmark
git clone -c core.symlinks=true --shared --no-checkout /Doggie/.build/repositories/swift-collections-benchmark-64802200 /Doggie/.build/checkouts/swift-collections-benchmark
git -C /Doggie/.build/checkouts/swift-collections-benchmark checkout -f 665cbb154a55f45bcedd2ab4faf17b1b7ac06de3
git -C /Doggie/.build/checkouts/swift-collections-benchmark submodule update --init --recursive
git -C /Doggie/.build/checkouts/swift-collections-benchmark clean -ffdx
Working copy of https://github.com/apple/swift-collections-benchmark resolved at 0.0.2
git -C /Doggie/.build/repositories/brotli-8f8d9d52 tag -l
git -C /Doggie/.build/repositories/brotli-8f8d9d52 rev-parse --verify '1.0.0^{commit}'
Creating working copy for https://github.com/SusanDoggie/brotli
git clone -c core.symlinks=true --shared --no-checkout /Doggie/.build/repositories/brotli-8f8d9d52 /Doggie/.build/checkouts/brotli
git -C /Doggie/.build/checkouts/brotli checkout -f eae35c37a86c1ececbb8d26433c8f99856587ee5
git -C /Doggie/.build/checkouts/brotli submodule update --init --recursive
git -C /Doggie/.build/checkouts/brotli clean -ffdx
Working copy of https://github.com/SusanDoggie/brotli resolved at 1.0.0
git -C /Doggie/.build/repositories/swift-numerics-9e344942 tag -l
git -C /Doggie/.build/repositories/swift-numerics-9e344942 rev-parse --verify '0.1.0^{commit}'
Creating working copy for https://github.com/apple/swift-numerics
git clone -c core.symlinks=true --shared --no-checkout /Doggie/.build/repositories/swift-numerics-9e344942 /Doggie/.build/checkouts/swift-numerics
git -C /Doggie/.build/checkouts/swift-numerics checkout -f 6583ac70c326c3ee080c1d42d9ca3361dca816cd
git -C /Doggie/.build/checkouts/swift-numerics submodule update --init --recursive
git -C /Doggie/.build/checkouts/swift-numerics clean -ffdx
Working copy of https://github.com/apple/swift-numerics resolved at 0.1.0
git -C /Doggie/.build/repositories/libwebp-91586e16 tag -l
git -C /Doggie/.build/repositories/libwebp-91586e16 rev-parse --verify '1.0.0^{commit}'
Creating working copy for https://github.com/SusanDoggie/libwebp
git clone -c core.symlinks=true --shared --no-checkout /Doggie/.build/repositories/libwebp-91586e16 /Doggie/.build/checkouts/libwebp
git -C /Doggie/.build/checkouts/libwebp checkout -f dca9dbe783684a38a5ef70be93d770414a377774
git -C /Doggie/.build/checkouts/libwebp submodule update --init --recursive
qemu: uncaught target signal 4 (Illegal instruction) - core dumped
Illegal instruction