Skip to content

Commit 8b95165

Browse files
committed
make LDKSwift package dynamic, and always use local derived data paths to avoid cache conflicts
1 parent c8b917d commit 8b95165

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

ci/LDKSwift/Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ let package = Package(
3939
products: [
4040
.library(
4141
name: "LDKSwift",
42-
// type: .dynamic,
42+
type: .dynamic,
4343
targets: ["LDKSwift"]),
4444
],
4545
dependencies: [

ci/build_frameworks.sh

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,30 +23,38 @@ fi
2323

2424
XCFRAMEWORK_INPUT_FLAGS=""
2525

26-
declare -a destinationNames=( "iOS Simulator" "iOS" )
27-
declare -a lipoDirectoryNames=( "iphonesimulator" "iphoneos" )
26+
declare -a destinationNames=( "iOS Simulator" "iOS" "OS X" "macOS,variant=Mac Catalyst" )
27+
declare -a lipoDirectoryNames=( "iphonesimulator" "iphoneos" "macosx" "catalyst" )
2828

2929
declare archiveCount=${#lipoDirectoryNames[@]}
3030
for (( i=0; i<$archiveCount; i++ ));
3131
do
3232
CURRENT_DESTINATION_NAME=${destinationNames[$i]}
3333
CURRENT_LIPO_DIRECTORY_NAME_INFIX=${lipoDirectoryNames[$i]}
3434
CURRENT_ARCHIVE_DIRECTORY="${BASEDIR}/../bindings/bin/${RUST_CONFIGURATION}/${CURRENT_LIPO_DIRECTORY_NAME_INFIX}/xcarchive"
35+
CURRENT_DERIVED_DATA_DIRECTORY="${BASEDIR}/../bindings/bin/${RUST_CONFIGURATION}/${CURRENT_LIPO_DIRECTORY_NAME_INFIX}/DerivedData"
3536
CURRENT_ARCHIVE_PATH="${CURRENT_ARCHIVE_DIRECTORY}/${CURRENT_LIPO_DIRECTORY_NAME_INFIX}"
3637

3738
CURRENT_LIPO_DIRECTORY_PATH="${BUILD_PRODUCTS_DIR}/${RUST_CONFIGURATION}/${CURRENT_LIPO_DIRECTORY_NAME_INFIX}/lipo"
3839
export LDK_C_BINDINGS_BINARY_DIRECTORY="${CURRENT_LIPO_DIRECTORY_PATH}"
3940

4041
echo "Building xcarchive for ${CURRENT_DESTINATION_NAME}" >> $BUILD_LOG_PATH
4142
echo "Current lipo input directory: ${CURRENT_LIPO_DIRECTORY_PATH}" >> $BUILD_LOG_PATH
42-
echo "Current xcarchive archive directory: ${CURRENT_ARCHIVE_PATH}" >> $BUILD_LOG_PATH
43+
echo "Current derived data directory: ${CURRENT_DERIVED_DATA_DIRECTORY}" >> $BUILD_LOG_PATH
44+
echo "Current xcarchive output directory: ${CURRENT_ARCHIVE_PATH}" >> $BUILD_LOG_PATH
4345

4446
mkdir -p "${CURRENT_ARCHIVE_DIRECTORY}"
47+
mkdir -p "${CURRENT_DERIVED_DATA_DIRECTORY}"
48+
find "${CURRENT_ARCHIVE_DIRECTORY}" -mindepth 1 -delete
49+
find "${CURRENT_DERIVED_DATA_DIRECTORY}" -mindepth 1 -delete
4550

4651
pushd "${BASEDIR}/LDKSwift"
47-
xcodebuild archive -scheme LDKSwift -destination "generic/platform=${CURRENT_DESTINATION_NAME}" -archivePath "${CURRENT_ARCHIVE_PATH}" ENABLE_BITCODE=NO SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES
52+
xcodebuild archive -scheme LDKSwift -destination "generic/platform=${CURRENT_DESTINATION_NAME}" -derivedDataPath "${CURRENT_DERIVED_DATA_DIRECTORY}" -archivePath "${CURRENT_ARCHIVE_PATH}" ENABLE_BITCODE=NO EXCLUDED_ARCHS="i386 armv7" SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES
53+
# xcodebuild -scheme LDKSwift -destination "generic/platform=${CURRENT_DESTINATION_NAME}" ENABLE_BITCODE=NO SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES
4854
popd
4955

50-
XCFRAMEWORK_INPUT_FLAGS="${XCFRAMEWORK_INPUT_FLAGS}-framework ${CURRENT_ARCHIVE_PATH}.xcarchive/Products/Library/Frameworks/LDKSwift.framework "
56+
# XCFRAMEWORK_INPUT_FLAGS="${XCFRAMEWORK_INPUT_FLAGS}-framework ${CURRENT_ARCHIVE_PATH}.xcarchive/Products/Library/Frameworks/LDKSwift.framework "
57+
XCFRAMEWORK_INPUT_FLAGS="${XCFRAMEWORK_INPUT_FLAGS}-framework ${CURRENT_ARCHIVE_PATH}.xcarchive/Products/usr/local/lib/LDKSwift.framework "
5158
echo "Current xcframework flags: ${XCFRAMEWORK_INPUT_FLAGS}" >> $BUILD_LOG_PATH
59+
echo "" >> $BUILD_LOG_PATH
5260
done

0 commit comments

Comments
 (0)