@@ -21,6 +21,7 @@ fatal() { error "$@"; exit 1; }
2121INSTALL_STATIC=false
2222INSTALL_WASM=false
2323SWIFT_VERSION_INPUT=" "
24+ SWIFT_BUILD_FLAGS=" "
2425
2526while [[ $# -gt 0 ]]; do
2627 case $1 in
@@ -32,6 +33,14 @@ while [[ $# -gt 0 ]]; do
3233 INSTALL_WASM=true
3334 shift
3435 ;;
36+ --flags)
37+ if [[ -n " $2 " && " $2 " != --* ]]; then
38+ SWIFT_BUILD_FLAGS=" $2 "
39+ shift 2
40+ else
41+ fatal " --flags requires an argument"
42+ fi
43+ ;;
3544 -* )
3645 fatal " Unknown option: $1 "
3746 ;;
4857
4958# Validate arguments
5059if [[ -z " $SWIFT_VERSION_INPUT " ]]; then
51- fatal " Usage: $0 [--static] [--wasm] <swift-version>"
60+ fatal " Usage: $0 [--static] [--wasm] [--flags \" <build-flags> \" ] <swift-version>"
5261fi
5362
5463if [[ " $INSTALL_STATIC " == false && " $INSTALL_WASM " == false ]]; then
5766
5867log " Requested Swift version: $SWIFT_VERSION_INPUT "
5968log " Install static SDK: $INSTALL_STATIC "
60- log " Install WASM SDK: $INSTALL_WASM "
69+ log " Install wasm SDK: $INSTALL_WASM "
70+ if [[ -n " $SWIFT_BUILD_FLAGS " ]]; then
71+ log " Additional build flags: $SWIFT_BUILD_FLAGS "
72+ fi
6173
6274# Install dependencies
6375command -v curl > /dev/null || (apt update -q && apt install -yq curl)
@@ -474,23 +486,35 @@ install_sdks() {
474486
475487build () {
476488 if [[ " $INSTALL_STATIC " == true ]]; then
477- local sdk_name=" ${STATIC_SDK_TAG} _static-linux-0.0.1"
478489 log " Running Swift build with static SDK"
479- log " Command: ${SWIFT_EXECUTABLE_FOR_STATIC_SDK} build --swift-sdk ${sdk_name} "
480490
481- if " $SWIFT_EXECUTABLE_FOR_STATIC_SDK " build --swift-sdk " $sdk_name " ; then
491+ local sdk_name=" ${STATIC_SDK_TAG} _static-linux-0.0.1"
492+ local build_command=" $SWIFT_EXECUTABLE_FOR_STATIC_SDK build --swift-sdk $sdk_name "
493+ if [[ -n " $SWIFT_BUILD_FLAGS " ]]; then
494+ build_command=" $build_command $SWIFT_BUILD_FLAGS "
495+ fi
496+
497+ log " Running: $build_command "
498+
499+ if eval " $build_command " ; then
482500 log " ✅ Swift build with static SDK completed successfully"
483501 else
484502 fatal " Swift build with static SDK failed"
485503 fi
486504 fi
487505
488506 if [[ " $INSTALL_WASM " == true ]]; then
489- local sdk_name=" ${WASM_SDK_TAG} _wasm"
490507 log " Running Swift build with wasm SDK"
491- log " Command: ${SWIFT_EXECUTABLE_FOR_WASM_SDK} build --swift-sdk ${sdk_name} "
492508
493- if " $SWIFT_EXECUTABLE_FOR_WASM_SDK " build --swift-sdk " $sdk_name " ; then
509+ local sdk_name=" ${WASM_SDK_TAG} _wasm"
510+ local build_command=" $SWIFT_EXECUTABLE_FOR_WASM_SDK build --swift-sdk $sdk_name "
511+ if [[ -n " $SWIFT_BUILD_FLAGS " ]]; then
512+ build_command=" $build_command $SWIFT_BUILD_FLAGS "
513+ fi
514+
515+ log " Running: $build_command "
516+
517+ if eval " $build_command " ; then
494518 log " ✅ Swift build with wasm SDK completed successfully"
495519 else
496520 fatal " Swift build with wasm SDK failed"
0 commit comments