目下、最大の関心事はmacOS 11向けにXcode上のCocoa AppleScriptアプリケーションをApple Sillicon & IntelのUniversal Binaryでビルドする方法についてです。
まず、Xcode 12と言われるものは2系列存在しています。Xcode 12.1GMと呼ばれるものと、Xcode 12.2Beta 3です。
調査前には、「Xcode 12.1GMを使ってビルドするんじゃないの? GMだし」と思っていました。Mac App StoreはReleaseビルドのXcodeからのアプリケーション送信しか受け付けない仕様になっているため、Beta版の出来がいくらよくても、GM版、Release版が必須です。
ただ、Xcode 12.1GMでCocoa AppleScriptアプリケーションをUniversal Binaryでビルドしようとしても、出来上がるバイナリはIntel 64bit向けのみです。
だいたい、Xcode 12.1GM上ではビルドターゲットとして「macOS 11.0」を選択できません。
これまでにARM/IntelのUniversal Binaryビルドできたのは、Xcode 12.2Beta2。GM版ではどれもビルドできていません。
実際に、Xcode 12.2Beta3上でCocoa AppleScriptアプリケーションのプロジェクトをUniversal Binaryビルドできることが確認できました。
ただし、Xcode 12.2beta3上でも、既存のXcodeプロジェクトではUniversal Binaryビルドが行えず、新規作成したプロジェクト(コードはほぼからっぽの状態でテスト)でのみUniversal Binaryビルドできました。まだ、既存のプロジェクトのUniversal BinaryビルドができないあたりがBetaっぽいですが、注意を要するところです。
AppleScriptアプレットのUniversal Binary対応状況
スクリプトエディタから書き出したアプレットは、macOS 11.0Beta初期からUniversal Binaryで書き出されていることを確認しています。
AppleScript Studioランタイムが廃止に
その他、Mac OS X 10.6で廃止になった「AppleScript Studio」のランタイムがXcode上の開発テンプレート廃止後も実行のみサポートが継続されています。
これはAutomator登場初期に作られたAutomatorアクションがこのAppleScript Studioのランタイムを利用していたためです。
Automatorアクションの実行サポートのためにAppleScript Studioのランタイムが最新OS上でも維持され続けてきました。先日、ついにこのAppleScript Studioランタイムの将来的な廃止がAppleのWebサイトに掲載されていました。
AppleScript StudioランタイムのARM Binary(ここも、Xcode上で「ARM」という言葉を使わないようにいろいろ記述が変わっている)化を行なっているとは思えないので、おそらくARM/Intelの両方のCPUサポートを3〜4年ぐらい行い(AppleScript StudioランタイムはRosetta2で実行?)、Rosettaの廃止ライミングでAppleScript Studioランタイムも一緒に廃止するのでしょう。
AutomatorアクションのAppleScriptによる開発テンプレートはAppleScriptObjCベースのものに(とっくの昔に)変更になっています。AppleScriptObjCベースで開発していれば問題ありません。