mirror of
https://github.com/slint-ui/slint.git
synced 2025-12-23 09:19:32 +00:00
Some checks are pending
autofix.ci / format_fix (push) Waiting to run
autofix.ci / lint_typecheck (push) Waiting to run
CI / tree-sitter (push) Blocked by required conditions
CI / files-changed (push) Waiting to run
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, macos-14, stable) (push) Blocked by required conditions
CI / python_test (windows-2022) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, 1.88) (push) Blocked by required conditions
CI / cpp_test_driver (windows-2022) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, beta) (push) Blocked by required conditions
CI / build_and_test (--exclude ffmpeg --exclude gstreamer-player, windows-2022, stable) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, 1.88) (push) Blocked by required conditions
CI / build_and_test (ubuntu-22.04, nightly) (push) Blocked by required conditions
CI / node_test (macos-14) (push) Blocked by required conditions
CI / node_test (ubuntu-22.04) (push) Blocked by required conditions
CI / node_test (windows-2022) (push) Blocked by required conditions
CI / python_test (macos-14) (push) Blocked by required conditions
CI / python_test (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_test_driver (macos-14) (push) Blocked by required conditions
CI / cpp_test_driver (ubuntu-22.04) (push) Blocked by required conditions
CI / cpp_cmake (macos-14, 1.88) (push) Blocked by required conditions
CI / cpp_cmake (ubuntu-22.04, stable) (push) Blocked by required conditions
CI / cpp_cmake (windows-2022, nightly) (push) Blocked by required conditions
CI / cpp_package_test (push) Blocked by required conditions
CI / vsce_build_test (push) Blocked by required conditions
CI / wasm_demo (push) Blocked by required conditions
CI / mcu (pico-st7789, thumbv6m-none-eabi) (push) Blocked by required conditions
CI / mcu (pico2-st7789, thumbv8m.main-none-eabihf) (push) Blocked by required conditions
CI / mcu (stm32h735g, thumbv7em-none-eabihf) (push) Blocked by required conditions
CI / mcu-embassy (push) Blocked by required conditions
CI / ffi_32bit_build (push) Blocked by required conditions
CI / docs (push) Blocked by required conditions
CI / wasm (push) Blocked by required conditions
CI / updater_test (0.3.0) (push) Blocked by required conditions
CI / fmt_test (push) Blocked by required conditions
CI / esp-idf-quick (push) Blocked by required conditions
CI / android (push) Blocked by required conditions
CI / miri (push) Blocked by required conditions
CI / test-figma-inspector (push) Blocked by required conditions
CI / material-components (push) Blocked by required conditions
57 lines
1.8 KiB
Bash
Executable file
57 lines
1.8 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
# Copyright © SixtyFPS GmbH <info@slint.dev>
|
|
# SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-2.0 OR LicenseRef-Slint-Software-3.0
|
|
|
|
set -euvx
|
|
|
|
# Fix up PATH to work around https://github.com/rust-lang/rust/issues/80817 and add cargo.
|
|
export PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:$PATH:$HOME/.cargo/bin"
|
|
|
|
# based on https://github.com/mozilla/glean/blob/main/build-scripts/xc-universal-binary.sh
|
|
|
|
if [[ "$CONFIGURATION" != "Debug" ]]; then
|
|
CARGO_PROFILE=release
|
|
MAYBE_RELEASE=--release
|
|
else
|
|
CARGO_PROFILE=debug
|
|
MAYBE_RELEASE=
|
|
fi
|
|
|
|
# Make Cargo output cache files in Xcode's directories
|
|
export CARGO_TARGET_DIR="$DERIVED_FILE_DIR/cargo"
|
|
|
|
IS_SIMULATOR=0
|
|
if [ "${LLVM_TARGET_TRIPLE_SUFFIX-}" = "-simulator" ]; then
|
|
IS_SIMULATOR=1
|
|
fi
|
|
|
|
executables=()
|
|
for arch in $ARCHS; do
|
|
case "$arch" in
|
|
arm64)
|
|
if [ $IS_SIMULATOR -eq 0 ]; then
|
|
CARGO_TARGET=aarch64-apple-ios
|
|
else
|
|
CARGO_TARGET=aarch64-apple-ios-sim
|
|
fi
|
|
;;
|
|
x86_64)
|
|
export CFLAGS_x86_64_apple_ios="-target x86_64-apple-ios"
|
|
CARGO_TARGET=x86_64-apple-ios
|
|
;;
|
|
esac
|
|
|
|
cargo build $MAYBE_RELEASE --target $CARGO_TARGET --bin $1
|
|
|
|
executables+=("$DERIVED_FILE_DIR/cargo/$CARGO_TARGET/$CARGO_PROFILE/$1")
|
|
done
|
|
|
|
# Combine executables, and place them at the output path excepted by Xcode
|
|
lipo -create -output "$TARGET_BUILD_DIR/$EXECUTABLE_PATH" "${executables[@]}"
|
|
|
|
# Force code signing every run for device builds (non-simulator)
|
|
if [ $IS_SIMULATOR -eq 0 ]; then
|
|
codesign --force --sign "${EXPANDED_CODE_SIGN_IDENTITY}" \
|
|
--entitlements "${TARGET_TEMP_DIR}/${PRODUCT_NAME}.app.xcent" \
|
|
"${TARGET_BUILD_DIR}/${EXECUTABLE_PATH}"
|
|
fi
|