Makefile (3976B)
1 SHELL := /bin/bash 2 .SHELLFLAGS := -eu -o pipefail -c 3 4 FFI_ROOT := TeraFFI 5 FFI_TARGET ?= aarch64-apple-ios 6 SIMULATOR_NAME ?= iPhone 17 Pro 7 SIMULATOR_DESTINATION := platform=iOS Simulator,name=$(SIMULATOR_NAME) 8 UI_TEST_SELECTOR ?= 9 10 .NOTPARALLEL: 11 12 .PHONY: all doctor bootstrap persona-verifier-bootstrap ffi-bootstrap artifact-check package-contract-check \ 13 ffi-source-write ffi-source-check \ 14 ffi-candidate-build ffi-candidate-check \ 15 swift-quality maintainability-check \ 16 linux-shared-rust kotlin-smoke kotlin-smoke-bootstrap \ 17 package-resolve package-build package-test project xcodegen xcode-resolve \ 18 xcode-build-debug xcode-build-release unit-test ui-test api-snapshot-write \ 19 api-snapshot-check release-evidence-write release-preflight verify clean distclean 20 21 all: verify 22 23 doctor: 24 cargo extbuild doctor 25 26 ffi-bootstrap: doctor 27 cargo extbuild run -- $(MAKE) -C $(FFI_ROOT) verify 28 29 persona-verifier-bootstrap: doctor 30 cargo extbuild run -- uv sync --project scripts/persona-verifier --frozen 31 32 artifact-check: doctor 33 cargo extbuild run -- $(FFI_ROOT)/scripts/verify-installed-artifacts.sh 34 35 ffi-source-write: doctor 36 cargo extbuild run -- scripts/ffi-provenance.sh write --target '$(FFI_TARGET)' 37 38 ffi-source-check: doctor 39 cargo extbuild run -- scripts/ffi-provenance.sh check --target '$(FFI_TARGET)' 40 41 ffi-candidate-build: doctor 42 cargo extbuild run -- $(MAKE) -C $(FFI_ROOT) candidate-build 43 44 ffi-candidate-check: doctor 45 cargo extbuild run -- $(MAKE) -C $(FFI_ROOT) candidate-check 46 47 package-contract-check: doctor 48 cargo extbuild run -- scripts/verify-package-contract.sh 49 50 swift-quality: doctor 51 cargo extbuild run -- scripts/swift-quality.sh 52 53 maintainability-check: doctor 54 cargo extbuild run -- uv run --offline --project scripts/persona-verifier \ 55 python scripts/maintainability_ratchet.py verify 56 57 linux-shared-rust: doctor 58 cargo extbuild run -- scripts/linux-shared-rust.sh 59 60 kotlin-smoke: doctor 61 cargo extbuild run -- scripts/kotlin-smoke.sh verify 62 63 kotlin-smoke-bootstrap: doctor 64 cargo extbuild run -- scripts/kotlin-smoke.sh bootstrap 65 66 package-resolve: artifact-check package-contract-check 67 cargo extbuild run -- scripts/swift-package.sh resolve 68 69 project xcodegen: doctor 70 cargo extbuild run -- scripts/generate-project.sh 71 72 xcode-resolve: artifact-check project 73 cargo extbuild run -- scripts/xcode.sh resolve 74 75 bootstrap: persona-verifier-bootstrap ffi-bootstrap kotlin-smoke-bootstrap package-resolve xcode-resolve 76 77 package-build: artifact-check package-contract-check 78 cargo extbuild run -- scripts/xcode.sh package-build 79 80 package-test: artifact-check package-contract-check 81 cargo extbuild run -- scripts/xcode.sh package-test '$(SIMULATOR_DESTINATION)' 82 83 xcode-build-debug: artifact-check package-contract-check project 84 cargo extbuild run -- scripts/xcode.sh project-build Debug 85 86 xcode-build-release: artifact-check package-contract-check project 87 cargo extbuild run -- scripts/xcode.sh project-build Release 88 89 unit-test: artifact-check package-contract-check project 90 cargo extbuild run -- scripts/xcode.sh project-test '$(SIMULATOR_DESTINATION)' TeraTests 91 92 ui-test: artifact-check package-contract-check project 93 cargo extbuild run -- scripts/xcode.sh project-test '$(SIMULATOR_DESTINATION)' TeraUITests '$(UI_TEST_SELECTOR)' 94 95 api-snapshot-write: package-build 96 cargo extbuild run -- scripts/app-api-snapshot.sh write 97 98 api-snapshot-check: package-build 99 cargo extbuild run -- scripts/app-api-snapshot.sh check 100 101 release-evidence-write: doctor 102 cargo extbuild run -- scripts/release-evidence.sh write 103 104 release-preflight: artifact-check package-contract-check 105 cargo extbuild run -- scripts/release-preflight.sh 106 107 verify: swift-quality linux-shared-rust kotlin-smoke artifact-check package-contract-check package-build package-test \ 108 xcode-build-debug xcode-build-release unit-test ui-test api-snapshot-check 109 110 clean: doctor 111 cargo extbuild run -- $(MAKE) -C $(FFI_ROOT) clean 112 113 distclean: doctor 114 cargo extbuild run -- $(MAKE) -C $(FFI_ROOT) distclean