皆さんあっさり作っておられるようですが、自分は悩んだので覚え書きと同様にお悩みの方へ。
ファイルを置くだけじゃ駄目!!
modulemapの文法自体は、Clang ModuleについてやClang Documentationに詳しく書いてあるので割愛します。
module.modulemap
を作ったら
まずはファイルをプロジェクト内に配置する
module.modulemap
を作ったら、それをプロジェクト内の任意の位置に配置します。
例えばですが、プロジェクトファイルと同じディレクトリであれば$(SRCROOT)
ですね。
とりあえずこの、module.modulemap
ファイルを置いた場所を$(SRCROOT)
等からの相対位置で憶えておいて下さい。
ターゲットを確認する
Xcode一番左のペインのプロジェクトアイコンをクリックし、次のペインのターゲットから作成したmodulemap
を適用したいフレームワークをクリックします。
サーチパスに、module.modulemap
を置いたパスを追加する
Build Settingsを選び、Search Paths のほぼ最下部のUser Header Search Pathsにmodule.modulemap
を配置したパス(今回の例では$(SRCROOT)
)を追記する。
パッケージングにmodulemapがあることを教える
最後にPackagingセクションを探して
- Defines ModuleがYesに(基本なっているはずです)なっていることを確認する
- その一行下のModule Map Fileに
modlue.modluemap
と自作のmodulemapファイル名を記述する。
あとはビルドしてみると
作成されたフレームワークのModuleフォルダー内の、module.modulemapが自作のmapになっているはずです。お疲れ様でした。