@@ -118,9 +118,6 @@ SWIFT_INSTALL="$SWIFT_INSTALL"
118
118
export PATH="\$ SWIFT_INSTALL/usr/bin:\$ PATH"
119
119
export SWIFT_EXEC=~/.gradle/scripts/swiftc-android.sh
120
120
121
- # Uncomment if you would like to work with packages containing prebuilt binaries
122
- #"\$ SWIFT_INSTALL"/swift-android-gradle/src/main/scripts/collect-dependencies.py
123
-
124
121
swift build "\$ @"
125
122
126
123
SCRIPT
@@ -169,6 +166,13 @@ if [[ "\$ARGS" =~ " -emit-executable " && "\$ARGS" =~ ".so " ]]; then
169
166
ARGS=\$ (echo "\$ ARGS" | sed -E "s@ (-module-name [^[:space:]]+ )?-emit-executable @ -emit-library @")
170
167
fi
171
168
169
+ # link in prebuilt libraries
170
+ for lib in\` find "\$ PWD"/.build/checkouts -name '*.so'\` ; do
171
+ DIR="\$ (dirname\$ lib)"
172
+ LIB="\$ (basename\$ lib | sed -E 's@^lib|.so\$ @@g')"
173
+ ARGS="\$ ARGS -L\$ DIR -l\$ LIB"
174
+ done
175
+
172
176
# compile using toolchain's swiftc with Android target
173
177
swiftc -target armv7-none-linux-androideabi -sdk "\$ SWIFT_INSTALL/ndk-android-21"\\
174
178
-L "\$ SWIFT_INSTALL/usr/$UNAME " -tools-directory "\$ SWIFT_INSTALL/usr/$UNAME "\\
@@ -185,8 +189,10 @@ cat <<SCRIPT >copy-libraries.sh &&
185
189
DESTINATION="\$ 1"
186
190
SWIFT_INSTALL="$SWIFT_INSTALL "
187
191
192
+ PREBUILTS="\$ (find "\$ PWD"/src/main/swift/.build/checkouts -name '*.so')"
193
+
188
194
mkdir -p "\$ DESTINATION" && cd "\$ DESTINATION" &&
189
- rsync -u "\$ SWIFT_INSTALL"/usr/lib/swift/android/*.so .
195
+ rsync -a \$ PREBUILTS "\$ SWIFT_INSTALL"/usr/lib/swift/android/*.so .
190
196
191
197
SCRIPT
192
198