Skip to content

Commit b51597b

Browse files
committed
1 parent 23db569 commit b51597b

File tree

5 files changed

+83
-109
lines changed

5 files changed

+83
-109
lines changed

.github/workflows/pull_request.yml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -64,23 +64,17 @@ jobs:
6464
uses: actions/checkout@v4
6565
with:
6666
submodules: 'true'
67-
- name: "Check Patches"
68-
working-directory: swift-ci/sdks/android
69-
run: ls resources/patches/
70-
- name: Install Dependencies
71-
if: ${{ matrix.build-type == 'local' }}
72-
run: |
73-
sudo apt install -q ninja-build patchelf
7467
- name: Build Android SDK (Local)
7568
if: ${{ matrix.build-type == 'local' }}
7669
working-directory: swift-ci/sdks/android
7770
run: |
71+
sudo apt install -q ninja-build patchelf
7872
BUILD_VERSION=${{ matrix.swift-version }} TARGET_ARCHS=${{ matrix.arch }} ./build-local
7973
- name: Build Android SDK (Docker)
8074
if: ${{ matrix.build-type == 'docker' }}
8175
working-directory: swift-ci/sdks/android
8276
run: |
83-
BUILD_VERSION=${{ matrix.swift-version }} TARGET_ARCHS=${{ matrix.arch }} ./build
77+
BUILD_VERSION=${{ matrix.swift-version }} TARGET_ARCHS=${{ matrix.arch }} ./build-docker
8478
- name: Get artifact info
8579
id: info
8680
shell: bash

swift-ci/sdks/android/build

Lines changed: 0 additions & 69 deletions
This file was deleted.

swift-ci/sdks/android/build-docker

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#!/bin/bash -ex
2+
#
3+
# ===----------------------------------------------------------------------===
4+
#
5+
# Swift Android SDK: Docker Container Build Script
6+
#
7+
# ===----------------------------------------------------------------------===
8+
9+
if [[ "$DOCKER" == "" ]]; then
10+
DOCKER=docker
11+
fi
12+
13+
case $(arch) in
14+
arm64|aarch64)
15+
OS_ARCH_SUFFIX=-aarch64
16+
;;
17+
amd64|x86_64)
18+
OS_ARCH_SUFFIX=
19+
;;
20+
*)
21+
echo "Unknown architecture $(arch)"
22+
exit 1
23+
;;
24+
esac
25+
26+
HOST_OS=ubuntu24.04
27+
source ./scripts/toolchain-vars.sh
28+
29+
ANDROID_API=28
30+
ANDROID_NDK_VERSION=android-ndk-r27c
31+
32+
# Build the Docker image
33+
$DOCKER build --build-arg OS_ARCH_SUFFIX=$OS_ARCH_SUFFIX --build-arg SWIFT_TOOLCHAIN_URL=$SWIFT_TOOLCHAIN_URL --build-arg ANDROID_NDK_VERSION=$ANDROID_NDK_VERSION -t swift-android .
34+
35+
# Check-out the sources
36+
scripts/fetch-source.sh --source-dir source --swift-tag ${SWIFT_TAG}
37+
38+
mkdir -p products
39+
40+
# Run the build
41+
$DOCKER run -it --rm \
42+
-v ./source:/source \
43+
-v ./products:/products \
44+
swift-android \
45+
/scripts/build.sh --source-dir /source --products-dir /products --android-api ${ANDROID_API} --host-toolchain /usr/local/swift --archs ${TARGET_ARCHS}

swift-ci/sdks/android/build-local

Lines changed: 9 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
1-
#!/bin/bash -e
2-
# Swift Android SDK: Top-level Build Script
1+
#!/bin/bash -ex
2+
#
3+
# ===----------------------------------------------------------------------===
4+
#
5+
# Swift Android SDK: Local (non-Docker-containerized) Build Script
6+
#
7+
# ===----------------------------------------------------------------------===
38

49
# default architectures to build for
510
TARGET_ARCHS=${TARGET_ARCHS:-aarch64,x86_64,armv7}
@@ -11,38 +16,10 @@ SDKROOT=${RUNNER_TEMP:-${TMPDIR:-'/tmp'}}/swift-android-sdk
1116
mkdir -p ${SDKROOT}
1217

1318
# Install a Swift host toolchain if it isn't already present
14-
SWIFT_ROOT=${SDKROOT}/host-toolchain
1519
HOST_OS=ubuntu$(lsb_release -sr)
20+
source ./scripts/toolchain-vars.sh
1621

17-
#BUILD_VERSION='release'
18-
#BUILD_VERSION='trunk'
19-
#BUILD_VERSION=${BUILD_VERSION:-'devel'}
20-
21-
case "${BUILD_VERSION}" in
22-
release)
23-
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/releases | grep -m1 swift-6.1 | cut -d- -f2)
24-
SWIFT_TAG="swift-${LATEST_TOOLCHAIN_VERSION}-RELEASE"
25-
SWIFT_BRANCH="swift-$(echo $SWIFT_TAG | cut -d- -f2)-release"
26-
;;
27-
devel)
28-
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/tags | grep -m1 swift-6.2-DEV | cut -d- -f8-10)
29-
SWIFT_TAG="swift-6.2-DEVELOPMENT-SNAPSHOT-${LATEST_TOOLCHAIN_VERSION}-a"
30-
SWIFT_BRANCH="swift-$(echo $SWIFT_TAG | cut -d- -f2)-branch"
31-
;;
32-
trunk)
33-
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/tags | grep -m1 swift-DEV | cut -d- -f7-9)
34-
SWIFT_TAG="swift-DEVELOPMENT-SNAPSHOT-${LATEST_TOOLCHAIN_VERSION}-a"
35-
SWIFT_BRANCH="development"
36-
;;
37-
*)
38-
echo "$0: invalid BUILD_VERSION=${BUILD_VERSION}"
39-
exit 1
40-
;;
41-
esac
42-
43-
SWIFT_BASE=$SWIFT_TAG-$HOST_OS
44-
SWIFT_TOOLCHAIN_URL="https://download.swift.org/$SWIFT_BRANCH/$(echo $HOST_OS | tr -d '.')/$SWIFT_TAG/$SWIFT_BASE.tar.gz"
45-
22+
SWIFT_ROOT=${SDKROOT}/host-toolchain
4623
if [[ ! -d "$SWIFT_ROOT/$SWIFT_BASE" ]]; then
4724
mkdir -p $SWIFT_ROOT
4825
pushd $SWIFT_ROOT
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/bin/bash -e
2+
3+
case "${BUILD_VERSION}" in
4+
release)
5+
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/releases | grep -m1 swift-6.1 | cut -d- -f2)
6+
SWIFT_TAG="swift-${LATEST_TOOLCHAIN_VERSION}-RELEASE"
7+
SWIFT_BRANCH="swift-$(echo $SWIFT_TAG | cut -d- -f2)-release"
8+
;;
9+
devel)
10+
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/tags | grep -m1 swift-6.2-DEV | cut -d- -f8-10)
11+
SWIFT_TAG="swift-6.2-DEVELOPMENT-SNAPSHOT-${LATEST_TOOLCHAIN_VERSION}-a"
12+
SWIFT_BRANCH="swift-$(echo $SWIFT_TAG | cut -d- -f2)-branch"
13+
;;
14+
trunk)
15+
LATEST_TOOLCHAIN_VERSION=$(curl -sL https://github.com/apple/swift/tags | grep -m1 swift-DEV | cut -d- -f7-9)
16+
SWIFT_TAG="swift-DEVELOPMENT-SNAPSHOT-${LATEST_TOOLCHAIN_VERSION}-a"
17+
SWIFT_BRANCH="development"
18+
;;
19+
*)
20+
echo "$0: invalid BUILD_VERSION=${BUILD_VERSION}"
21+
exit 1
22+
;;
23+
esac
24+
25+
SWIFT_BASE=$SWIFT_TAG-$HOST_OS
26+
SWIFT_TOOLCHAIN_URL="https://download.swift.org/$SWIFT_BRANCH/$(echo $HOST_OS | tr -d '.')/$SWIFT_TAG/$SWIFT_BASE.tar.gz"
27+

0 commit comments

Comments
 (0)