Create Makefile
Seto Elkahfi committed
Apr 19, 2026 at 20:06 UTC
2ac0f346c05daf17950b631136195f9b3b9c84fe
1 file changed
+121
Makefile
new
+121
@@ -0,0 +1,121 @@
1
+# Mak, release. Tauri apps.
2
+#
3
+# ── macOS App Store ────────────────────────────────────────────────────────
4
+# make asmacos — full pipeline: build → sign → upload
5
+# make asmacos-build — tauri build only (universal, App Store config)
6
+# make asmacos-sign — sign the .app into a .pkg
7
+# make asmacos-upload — upload the .pkg to App Store Connect
8
+#
9
+# ── Android Play Store ─────────────────────────────────────────────────────
10
+# make android — full pipeline: clean → init → icons → override → keystore → build
11
+# make android-clean — rm -rf src-tauri/gen/android
12
+# make android-init — cargo tauri android init
13
+# make android-icons — pnpm gim
14
+# make android-override — copy gen-override/android into gen/android
15
+# make android-keystore — patch storeFile path in keystore.properties
16
+# make android-build — cargo tauri android build --aab
17
+#
18
+# ── iOS App Store ──────────────────────────────────────────────────────────
19
+# make asios — full pipeline: clean → init → icons → override → build → upload
20
+# make asios-clean — rm -rf src-tauri/gen/apple
21
+# make asios-init — cargo tauri ios init
22
+# make asios-icons — pnpm gim
23
+# make asios-override — copy gen-override/apple into gen/apple
24
+# make asios-build — cargo tauri ios build
25
+# make asios-upload — xcrun altool upload
26
+#
27
+# ── Development ────────────────────────────────────────────────────────────
28
+# make dev — start the Tauri dev server
29
+# make build — standard debug build
30
+# make fmt — cargo fmt
31
+# make lint — clippy + tsc
32
+# make ts — regenerate generated.ts from Rust models
33
+# make clean — remove build artefacts
34
+
35
+.PHONY: dev build \
36
+ asmacos asmacos-build asmacos-sign asmacos-upload \
37
+ asios asios-clean asios-init asios-icons asios-override asios-build asios-upload \
38
+ android android-clean android-init android-icons android-override android-keystore android-build \
39
+ fmt lint ts clean
40
+
41
+# ── macOS App Store ────────────────────────────────────────────────────────
42
+
43
+asmacos:
44
+ ./scripts/build-appstore.sh all
45
+
46
+asmacos-build:
47
+ ./scripts/build-appstore.sh build
48
+
49
+asmacos-sign:
50
+ ./scripts/build-appstore.sh sign
51
+
52
+asmacos-upload:
53
+ ./scripts/build-appstore.sh upload
54
+
55
+# ── Android Play Store ─────────────────────────────────────────────────────
56
+
57
+android:
58
+ ./scripts/build-android.sh all
59
+
60
+android-clean:
61
+ ./scripts/build-android.sh clean
62
+
63
+android-init:
64
+ ./scripts/build-android.sh init
65
+
66
+android-icons:
67
+ ./scripts/build-android.sh icons
68
+
69
+android-override:
70
+ ./scripts/build-android.sh override
71
+
72
+android-keystore:
73
+ ./scripts/build-android.sh keystore
74
+
75
+android-build:
76
+ ./scripts/build-android.sh build
77
+
78
+# ── iOS App Store ──────────────────────────────────────────────────────────
79
+
80
+asios:
81
+ ./scripts/build-ios.sh all
82
+
83
+
84
+asios-clean:
85
+ ./scripts/build-ios.sh clean
86
+
87
+asios-init:
88
+ ./scripts/build-ios.sh init
89
+
90
+asios-icons:
91
+ ./scripts/build-ios.sh icons
92
+
93
+asios-override:
94
+ ./scripts/build-ios.sh override
95
+
96
+asios-build:
97
+ ./scripts/build-ios.sh build
98
+
99
+asios-upload:
100
+ ./scripts/build-ios.sh upload
101
+
102
+# ── Development ────────────────────────────────────────────────────────────
103
+
104
+dev:
105
+ pnpm tauri dev
106
+
107
+build:
108
+ pnpm tauri build
109
+
110
+fmt:
111
+ cargo fmt --manifest-path src-tauri/Cargo.toml --all
112
+
113
+lint:
114
+ cargo clippy --manifest-path src-tauri/Cargo.toml --all-targets -- -D warnings
115
+ pnpm tsc --noEmit
116
+
117
+ts:
118
+ pnpm ts
119
+
120
+clean:
121
+ cargo clean --manifest-path src-tauri/Cargo.toml