MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

make オプションのリファレンス

make コマンドは、Gaia リポジトリ内で Gaia プロファイルを作成するのに使われます。このプロファイルは、端末に読み込んだり B2G デスクトップ ビルド内で実行されます。この記事では、利用できる様々な make オプションを詳しく見ていきます。

注記: Makefile には多くの環境変数があります。将来削除される可能性があるので、これらに依存しないでください。

作成したプロファイルは、一般的に gaia ディレクトリのルート、例えば /gaia/profile に作成され、次の項目を含みます:

  • defaults/: 電話機の再起動後にリロードされるデフォルト設定を含むディレクトリ。
  • extensions/: 拡張機能を含むディレクトリ。
  • settings.json: 設定ファイル。
  • user.js: その他の設定を含む、もう一つのファイル。
  • webapps/: 電話機にインストールされる、全 Web アプリを含むディレクトリ。

注記: プロファイルを作成済みで新しいものを作成したい場合は、新規に生成する前に、既存のプロファイルディレクトリを消さなければなりません。

デフォルト

make

これは単にノーブランドの、非デバッグのビルドを与えます。ブランドのビルドには、Mozilla 公式ブランドの make を使う必要があります。デバッグビルドは デバッグ make をする必要があります。

端末へプッシュする

make install-gaia

make reset-gaia

ADB (Android デバッグブリッジ) のセットアップでは、これらの make ターゲットは Gaia を端末にプッシュするでしょう。install-gaia では作業ディレクトリ内の Gaia の更新を端末にプッシュします。 reset-gaia では、Gaia のプッシュ前に、既存の設定やプロファイル、Webアプリ、データベース内容 (新設定のデータベースが初期化されます) が掃除されます。

注記: make install-gaia または make reset-gaia を用いて端末に Gaia をプッシュすると、デフォルトで 1 倍の解像度のアセットで Gaia をビルドします。さらに高い解像度を指定するには、GAIA_DEV_PIXELS_PER_PX または GAIA_DPPX の make オプションを指定します (このオプションの詳細は、High resolution image assets を参照)。この方法で端末に Gaia をプッシュする場合は、関連する make オプションを端末のスケールファクタに合わせて指定するべきです。例えば、Flame 端末には make install-gaia GAIA_DEV_PIXELS_PER_PX=1.5 (または 2 や 2.5 など。スケールファクタ値は 512 icon for device display の中の表を見てください。)

特定アプリのビルド

APP=system make

APP=system make install-gaia

既にプロファイルがある場合、すべてのアプリを再パッケージ化して再プッシュする代わりに、再パッケージするアプリを APP で指定できます。このコマンドは、新しいアプリパッケージとマニフェストをプッシュします。マニフェストの変更 (例えば、新しいパーミッションやキーボードレイアウトや宣言) は Gecko によって選択されません。

カスタムプロファイルフォルダを指定する

ビルドしたプロファイルを保存するディレクトリを指定できます。次のように、PROFILE_FOLDER で指定します:

PROFILE_FOLDER=profile-b2g-desktop make

異なる端末のビルド

異なる目的で、異なる端末のビルドを作成する make オプションがいくつかあります。

Gaia の電話機ビルドの生成

GAIA_DEVICE_TYPE=phone make

このビルドは、アプリを /gaia/build/config/phone/apps-engineering.list から取得します。

Gaia のタブレットビルドの生成

GAIA_DEVICE_TYPE=tablet make

このビルドは、アプリを /gaia/build/config/tablet/apps-engineering.list から取得します。

spark ビルドの生成

GAIA_DISTRIBUTION_DIR=distros/spark make reset-gaia

端末に spark をインストールします。同等な B2G build.sh オプションは次のようになります:

GAIA_DISTRIBUTION_DIR=distros/spark ./build.sh

異なるビルドタイプ

異なる目的で、異なるタイプのビルドを作成する make オプションがいくつかあります。

プロダクション make

PRODUCTION=1 make

これは Gaia のプロダクション (製品版) ビルドを生成します:

  • Gaia はパッケージ型アプリとして実行され、デバッグは難しくなりますが、アプリにとっての API パーミッションなどの利用性は最も良いです。
  • テストアプリはビルドに含まれません。
  • デフォルトでリモートデバッグがオフになります。
  • 画面ロックはオンになります (その代わり USB 接続は切断されます)。
  • Marionette はオフになります。
  • はじめてガイドアプリはオンになります。
  • オフラインキャッシュが使用されます。

注記: 別名のコマンド make production でも生成できます。

デバッグmake

DEBUG=1 make

DEBUG 変数は、Gaia をデフォルトを変更するごとに再パッケージが必要なパッケージ型アプリでなく、特定の GAIA_PORT でのビルトイン Web サーバ上でホスト型アプリとして実行します。これでテストが簡単になります。最新の Firefox Nightly のプロファイルで起動すると、素晴らしい B2G 固有の Firefox 開発ツールのパネルがあります。

それに加え:

  • テストアプリがビルドに含まれます。
  • デフォルトでリモートデバッグがオンになります。
  • 画面ロックはオンになります (その代わり USB 接続は切断されません)。
  • Marionette がオンになります。これは Gaia ユニットテスト 時に必要になります。
  • はじめてガイドアプリはオフになります。
  • オフラインキャッシュは、たとえ生成されても使用されません。

注記: 現在、バグ (バグ 1180103) があり、Gaia のデバッグプロファイルでFirefox OS シミュレータ (WebIDE でも何経由でも) を実行した時、空のホーム画面が描画されます。これを回避するには、代わりに DEBUG=1 DESKTOP=0 make とします ( 端末デバッグ make を参照)。

端末デバッグ make

DEVICE_DEBUG=1 make

これは端末の画面ロックをオンにし、ADB ツールのデバッグを有効にするので、端末のデバッグに便利です。

このパラメータは、Firefox OS 1.2 以降のバージョンで、Firefox OS Webアプリを WebIDE でデバッグする時に指定します

デスクトップデバッグ make

DEBUG=1 DESKTOP=0 make

このオプションは、B2G デスクトップ 内で実行する、デスクトップデバッグ版を作成します。

公式 Mozilla ブランド make

MOZILLA_OFFICIAL=1 make

公式の Mozilla ブランドのビルドを make するのに使います。

ドッグフード make

DOGFOOD=1 make

ドッグフードオプションとユーティリティがオンになります、例えば、Feedback アプリで、簡単に OS のフィードバック投稿ができます。

システムアプリ make

B2G_SYSTEM_APPS=1 make

この環境変数は、アプリを /data/local ではなく、/system/b2g に配置します。ユーザビルドの作業をする時に使うべきです。この変数は、make production を実行した時に自動セットされます。また install-gaiareset-gaia にも使われます。

ディストリビューションおよびマーケット向けのカスタマイズビルド

GAIA_DISTRIBUTION_DIR=./dir

注記: 詳細は Market カスタマイズ をお読みください。

開発者/デバッグ オプション

デバッグ用途で、機能を追加・削除したり、設定を変更する make オプションもあります。

リモートデバッグを有効化

REMOTE_DEBUGGER=1

これは、開発者設定 のオプション設定と同じ、端末上のリモートデバッグを有効にします。

JavaScript 最適化 make

GAIA_OPTIMIZE=1 make

これは、Gaia の JavaScript 最適化の起点となり、ファイルを連結・圧縮します。これは、make production を実行した時に自動でセットされます。また、install-gaiareset-gaia にも使われます。

高解像度のイメージアセット

GAIA_DEV_PIXELS_PER_PX=1.5 make

あるいは、別名で:

GAIA_DPPX=1.5 make

アプリのパッケージ時に、このオプションは、画像を *@1.5x.(gif|jpg|png) の同等品が存在する場合に、その画像に置き換えます。上記オプションを標準の make コマンドの部分的なオプションとして使う必要があります。例えば:

GAIA_DEV_PIXELS_PER_PX=1.5 make reset-gaia

GAIA_DEV_PIXELS_PER_PX=1.5 make install-gaia

Gaia は現在、次の画面解像度をターゲットとしています:

  • qHD: ~540×960; 端末のピクセル比 = 1.6875
  • WVGA: ~480×800; 端末のピクセル比 = 1.5
  • HBGA (320x240); 端末のピクセル比 = 1

qHD と WVGA 端末で画像が確実にシャープに見えるために、GAIA_DEV_PIXELS_PER_PX を使います。CSS ピクセル単位あたりの端末ピクセルについて、詳しい情報は、A pixel is not a pixel 参照してください

統合テストの実行

make を使って Gaia の統合テストを実行できます。詳細はGaia 統合テスト を参照してください。

Raptor パフォーマンステストの実行

Raptor テストを実行するためには、テストを実際に行う前に、端末を構成する必要があります。詳しくは、Raptor を参照してください。

make raptor

低メモリプロファイルのビルド

GAIA_MEMORY_PROFILE=low make

この変数は、Gaia の低メモリプロファイルを生成します。これは、Tarako のような低メモリ端末を想定しています。

はじめてガイド (FTU) の無効化

NOFTU=1

この環境変数で FTU が無効になります。

ロック画面の無効化

Firefox OS のロック画面を NO_LOCK_SCREEN オプションを使って無効化できます、例えば:

NO_LOCK_SCREEN=1 make

リファレンス負荷データ

リファレンス負荷データを使うと、開発者やテスト担当者は、新たにフラッシュされた電話機に対して、いくつかのアプリに大量のデータを素早くインストールできます。

そのコマンドは次の通り (gaia ディレクトリから):

make reference-workload-light
  • 200 件の連絡先
  • 200 件の SMS メッセージ
  • 50 件の通話履歴エントリ
  • 20 枚のギャラリー画像
  • 20 曲の歌
  • 5 本の動画
make reference-workload-medium
  • 500 件の連絡先
  • 500 件の SMS メッセージ
  • 100 件の通話履歴エントリ
  • 50 枚のギャラリー画像
  • 50 曲の歌
  • 10 本の動画
make reference-workload-heavy
  • 1000 件の連絡先
  • 1000 件の SMS メッセージ
  • 200 件の通話履歴エントリ
  • 100 枚のギャラリー画像
  • 100 曲の歌
  • 20 本の動画
make reference-workload-x-heavy
  • 2000 件の連絡先
  • 2000 件の SMS メッセージ
  • 500 件の通話履歴エントリ
  • 250 枚のギャラリー画像
  • 250 曲の歌
  • 50 本の動画

これらのターゲットには、アプリ名をスペースで区切った APP 環境変数か、APPS 環境変数が指定できます。例えば:

APP=sms make reference-workload-light
APPS="sms communications/contacts" make reference-workload-heavy

利用可能なアプリは次の通り:

APPS="gallery music video communications/contacts sms communications/dialer"

リファレンス負荷データに音楽 (歌) を入れるには、mid3v2 ユーティリティがインストールされていなければなりません。このユーティリティは次のコマンドでインストールします:

sudo apt-get install python-mutagen

代わりに、Fedora や RHEL を実行している場合、これを使います:

sudo yum install python-mutagen

ドキュメント make

Gaia のドキュメントは、jsdoc3 を通じてビルドされます。これを生成するには、次のコマンドを使います:

make docs

IME レイアウトと辞書の有効化

キーボード IME レイアウトと辞書を有効化するには、次のコマンド構成を使用します:

GAIA_KEYBOARD_LAYOUTS=en,de,fr,jp-kanji make

現在デフォルトでは、ディスク容量のために、全てのレイアウトを積んでいません。レイアウトと辞書を切り離すために Bug 1029951 が作業中です (ユーザ辞書をダウンロード提供します)。

すべての利用可能なレイアウトを知るには shared/js/keyboard_helper.js のファイルを見てください。

ドキュメントのタグと貢献者

 このページの貢献者: chrisdavidmills, hamasaki, T.Ukegawa, Marsf, Uemmra3
 最終更新者: chrisdavidmills,