Skip to content

Commit 200025d

Browse files
committed
Android SDK build
1 parent 79fa529 commit 200025d

File tree

2 files changed

+15
-11
lines changed

2 files changed

+15
-11
lines changed

swift-ci/sdks/android/build

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,32 @@
11
#!/bin/bash -ex
22
# Swift Android SDK: Top-level Build Script
33

4-
# the architecture(s) to build
5-
ARCH=aarch64
6-
#ARCH=x86_64,aarch64
7-
NDK=android-ndk-r27c
8-
API=28
4+
# the architecture(s) to build; on GH Actions we build everything
5+
if [[ -z "${CI}" ]]; then
6+
TARGET_ARCHS=${TARGET_ARCHS:-aarch64}
7+
else
8+
TARGET_ARCHS=${TARGET_ARCHS:-aarch64,armv7,x86_64,x86}
9+
fi
10+
11+
ANDROID_NDK_VERSION=android-ndk-r27c
12+
ANDROID_API=28
913

1014
SDKROOT=${TMPDIR:-/tmp}/swift-android-sdk
1115
mkdir -p ${SDKROOT}
1216

1317
# Install a Swift host toolchain if it isn't already present
1418
SWIFT_ROOT=${SDKROOT}/host-toolchain
15-
HOST_ARCH=ubuntu24.04
19+
HOST_OS=ubuntu$(lsb_release -sr)
1620
SWIFT_VERSION=6.1
1721
SWIFT_TAG="swift-${SWIFT_VERSION}-RELEASE"
1822
SWIFT_BRANCH="swift-$(echo $SWIFT_TAG | cut -d- -f2)-release"
19-
SWIFT_BASE=$SWIFT_TAG-$HOST_ARCH
23+
SWIFT_BASE=$SWIFT_TAG-$HOST_OS
2024

2125
if [[ ! -d $SWIFT_ROOT ]]; then
2226
mkdir -p $SWIFT_ROOT
2327
pushd $SWIFT_ROOT
2428

25-
SWIFT_URL="https://download.swift.org/$SWIFT_BRANCH/$(echo $HOST_ARCH | tr -d '.')/$SWIFT_TAG/$SWIFT_BASE.tar.gz"
29+
SWIFT_URL="https://download.swift.org/$SWIFT_BRANCH/$(echo $HOST_OS | tr -d '.')/$SWIFT_TAG/$SWIFT_BASE.tar.gz"
2630
wget -q $SWIFT_URL
2731
tar xzf $SWIFT_BASE.tar.gz
2832

@@ -36,7 +40,7 @@ $HOST_TOOLCHAIN/bin/swift --version
3640
# ensure the correct Swift is first in the PATH
3741
export PATH=$HOST_TOOLCHAIN/bin:$PATH
3842

39-
export ANDROID_NDK_HOME=${SDKROOT}/ndk/${NDK}
43+
export ANDROID_NDK_HOME=${SDKROOT}/ndk/${ANDROID_NDK_VERSION}
4044
export ANDROID_NDK=${ANDROID_NDK_HOME}
4145

4246
if [[ ! -d ${ANDROID_NDK_HOME} ]]; then
@@ -89,5 +93,5 @@ pushd ${SDKROOT}/src/swift-project
8993
perl -pi -e 's%String\(cString: getpass%\"fake\" //%' swiftpm/Sources/PackageRegistryCommand/PackageRegistryCommand+Auth.swift
9094
popd
9195

92-
./scripts/build.sh --products-dir ${SDKROOT}/products --source-dir ${SDKROOT}/src --build-dir ${SDKROOT}/build --ndk-home ${ANDROID_NDK_HOME} --android-api ${API} --host-toolchain ${HOST_TOOLCHAIN} --archs $ARCH
96+
./scripts/build.sh --products-dir ${SDKROOT}/products --source-dir ${SDKROOT}/src --build-dir ${SDKROOT}/build --ndk-home ${ANDROID_NDK_HOME} --android-api ${ANDROID_API} --host-toolchain ${HOST_TOOLCHAIN} --archs $TARGET_ARCHS
9397

swift-ci/sdks/android/scripts/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -356,7 +356,6 @@ for arch in $archs; do
356356
--skip-build-cmark \
357357
--skip-local-build \
358358
--build-swift-static-stdlib \
359-
--swiftpm \
360359
--install-swift \
361360
--install-libdispatch \
362361
--install-foundation \
@@ -366,6 +365,7 @@ for arch in $archs; do
366365
--cross-compile-append-host-target-to-destdir=False
367366

368367
#--llbuild --install-llbuild \
368+
#--swiftpm \
369369

370370
#--extra-cmake-options="-DCMAKE_HAVE_LIBC_PTHREAD=YES" \
371371
#--extra-cmake-options="-DTHREADS_PREFER_PTHREAD_FLAG=OFF" \

0 commit comments

Comments
 (0)