Add universal macOS release build with exported opening verification
This commit is contained in:
@@ -191,6 +191,13 @@ test-transport-comparison:
|
||||
|
||||
# Check the actual shipped data outside this checkout, including first build.
|
||||
WINDOWS_PCK ?= build/windows/TheTree.pck
|
||||
MACOS_APP ?= build/macos/TheTree.app
|
||||
.PHONY: export-macos
|
||||
export-macos:
|
||||
mkdir -p build/macos
|
||||
$(GODOT) --headless --path . --export-release "macOS" "$(MACOS_APP)"
|
||||
python3 tools/verify_exported_opening.py "$(MACOS_APP)/Contents/Resources/The Tree.pck" --godot "$(GODOT)"
|
||||
|
||||
.PHONY: test-exported-opening
|
||||
test-exported-opening:
|
||||
python3 tools/verify_exported_opening.py "$(WINDOWS_PCK)" --godot "$(GODOT)"
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# macOS配布ビルド
|
||||
|
||||
`make export-macos` で `build/macos/TheTree.app` を生成する。Godot 4.7.2の公式macOSテンプレートを使用し、Apple Silicon / IntelのUniversalバイナリとして出力する。ARM用の書き出しに必要なETC2/ASTCインポートを有効にした。
|
||||
|
||||
署名はGodot組み込みのad-hoc署名。Apple Developer IDによる署名・公証は未実施。
|
||||
|
||||
## 検証(2026-09-10)
|
||||
|
||||
- アプリ内のPCKを制作フォルダー外からGodotで実行し、受付の表示・選択・500Gの支払い・完成・次の案内まで13項目成功。保存は無効。
|
||||
- 実際のMacリリース実行ファイルをApple M4でheadless起動、20フレームで正常終了。
|
||||
- Finder経由でアプリを開き、ゲーム画面の表示を確認。
|
||||
- `file`でarm64とx86_64を確認。`codesign --verify --deep --strict`成功。
|
||||
- Intel実機での起動は未確認。
|
||||
|
||||
公式releaseテンプレートはパス上書きが無効であり、外部テストの`--main-pack`を受け付けない。13項目の自動回帰はエディター実行ファイルで配布PCKを検証し、ネイティブアプリ起動確認と区別する。
|
||||
|
||||
ログ: `artifacts/macos-opening.log`、`artifacts/macos-native-smoke.log`。画面: `artifacts/macos-opening.png`。
|
||||
|
||||
配布ZIPはアプリとライセンスを同梱する。展開して`TheTree.app`を開く。ネットから取得した未公証アプリはGatekeeperの確認対象になる。
|
||||
@@ -35,3 +35,26 @@ application/product_name="The Tree"
|
||||
application/file_description="The Tree prototype"
|
||||
application/copyright=""
|
||||
application/trademarks=""
|
||||
|
||||
[preset.1]
|
||||
|
||||
name="macOS"
|
||||
platform="macOS"
|
||||
runnable=true
|
||||
export_filter="all_resources"
|
||||
include_filter=""
|
||||
exclude_filter="tests/*, docs/*, .vscode/*"
|
||||
export_path="build/macos/TheTree.app"
|
||||
|
||||
[preset.1.options]
|
||||
|
||||
binary_format/architecture="universal"
|
||||
application/name="The Tree"
|
||||
application/icon="res://assets/icons/project_icon.svg"
|
||||
application/bundle_identifier="com.toriniku.the-tree"
|
||||
application/short_version="0.1.0"
|
||||
application/version="0.1.0"
|
||||
codesign/codesign=1
|
||||
notarization/notarization=0
|
||||
texture_format/s3tc_bptc=true
|
||||
texture_format/etc2_astc=true
|
||||
|
||||
@@ -43,3 +43,4 @@ window/stretch/scale_mode="fractional"
|
||||
|
||||
renderer/rendering_method="gl_compatibility"
|
||||
renderer/rendering_method.mobile="gl_compatibility"
|
||||
textures/vram_compression/import_etc2_astc=true
|
||||
|
||||
Reference in New Issue
Block a user