xcconfigで使うパラメータ名の見つけ方
Table of Contents
xcconfigは便利ですが、中身のパラメータ名が何書けばいいか特定できないと使い物になりません。
この記事はXcodeのBuild Settingsで書いてるビルドパラメータがxcconfigではどう書くのかを説明します。
xcconfigについて分からない方は「Xcodeのxcconfigの理解と使い方 」に詳細を説明してます。
xcconfigへの変換はXcodeがサポートしてる
xcconfigの書き方が分かって実際に使おうにも、ビルドパラメータ名が分からないと設定しようがありません。
XcodeのBuild Settingsでカスタマイズされた項目をxcconfigだとどうやって書けばいいか分からないと思います。
実はXcodeのBuild Settingsからxcconfigへのフォーマット変換はXcodeがサポートしてます。
確認する方法は2つあります。
- XcodeのBuild Settingsの表示方法をパラメータ名に変更する
- XcodeのBuild Settingsの各パラメータをxcconfig形式でコピーする
XcodeのBuild Settingsの表示方法をパラメータ名に変更
Build Settingsを開いた後にEditor > Show Setting Namesを選ぶと、表示されてるパラメータ名が表示用からコマンド用に変わります。
例えば、 Architectures > Build Active Architecture Onlyであれば、ONLY_ACTIVE_ARCHになります。
これをxcconfigで使うならONLY_ACTIVE_ARCH = YESとなります。
XcodeのBuild Settingsの各パラメータをxcconfig形式でコピー
パラメータ名を確認するだけならShow Setting Namesで確認できますが、Xcodeはそれよりも強力な変換機能を備えています。
実はBuild Settingsはコピー&ペーストをサポートしており、対象ビルドパラメータをコピーしてテキストにペーストすると、xcconfig形式で貼り付けします。
例えばBuild Active Architecture Onlyの項目を選択し、コピー(⌘+C)してテキストエディタでペースト(⌘+V)すると、下記のように貼り付けされます。
//:configuration = Debug
ONLY_ACTIVE_ARCH = YES
//:configuration = Release
//:completeSettings = some
ONLY_ACTIVE_ARCH
//:configuration = DebugやReleaseとはBuild Configuration毎に分けられてます。
Releaseに何も表示されていないのは、カスタマイズ値ではなくデフォルト値なので空になります。
someはコピーしたビルドパラメータの明確ビルドパラメータ名が列挙されます。ここはxcconfigでは不要なので削除します。
もう一つ例としてBuild Options > Debug Information Formatを見るとこうなります。
//:configuration = Debug
DEBUG_INFORMATION_FORMAT = dwarf
//:configuration = Release
DEBUG_INFORMATION_FORMAT = dwarf-with-dsym
//:completeSettings = some
DEBUG_INFORMATION_FORMAT
これを使えばXcodeからxcconfigを作りたい場合にBuild Settingsの項目全部を選択してコピーすれば、簡単に現在のビルド構成を表現したxcconfigが作成できます。
