のねのBlog

パソコンの問題や、ソフトウェアの開発で起きた問題など書いていきます。よろしくお願いします^^。

b2g(FirefoxOS) カスタマイズビルド

公式のカスタマイズ用ファイル(.userconfig)は、以下のとおりです。

GECKO_PATH=/home/work/B2G-profiler/mozilla-inbound
echo "GECKO_PATH = ${GECKO_PATH}"

export B2G_DEBUG=1
echo "B2G_DEBUG = ${B2G_DEBUG}"

GECKO_OBJDIR=${GECKO_PATH}/objdir-gonk
if [ "${B2G_DEBUG}" != "0" ]; then
  GECKO_OBJDIR=${GECKO_OBJDIR}-debug
fi
if [ "${GECKO_PATH/*mozilla-inbound*/mozilla-inbound}" = "mozilla-inbound" ]; then
  GECKO_OBJDIR=${GECKO_OBJDIR}-m-i
fi
echo "GECKO_OBJDIR = ${GECKO_OBJDIR}"

if文の部分がどのように動くか試してみた。
mozilla-inboudと書いてあったら、長いのでm-iにするようだ。

$ GECKO_PATH=/home/work/B2G-profiler/mozilla-inbound
$ echo ${GECKO_PATH/*mozilla-inbound*/mozilla-inbound}
mozilla-inbound
$ echo {GECKO_PATH/*mozilla-inbound*/mozilla-inbound}
{GECKO_PATH/*mozilla-inbound*/mozilla-inbound}

ぼくは、以下のようなカスタマイズ用ファイル(.userconfig)を作成した。

GECKO_PATH=/home/user01/B2G_emu/B2G/gecko <=ディレクトリの位置を変えた。
echo "GECKO_PATH = ${GECKO_PATH}"

export B2G_DEBUG=1         <=デバッグ有効
echo "B2G_DEBUG = ${B2G_DEBUG}"
export B2G_NOOPT=1         <=最適化無効
echo "B2G_NOOPT = ${B2G_NOOPT}"

GECKO_OBJDIR=${GECKO_PATH}/objdir-gonk
if [ "${B2G_DEBUG}" != "0" ]; then
  GECKO_OBJDIR=${GECKO_OBJDIR}-debug
fi
if [ "${GECKO_PATH/*mozilla-inbound*/mozilla-inbound}" = "mozilla-inbound" ]; then
  GECKO_OBJDIR=${GECKO_OBJDIR}-m-i
fi
echo "GECKO_OBJDIR = ${GECKO_OBJDIR}"

ビルドまでのコマンドは以下のとおりです。

./config.sh emulator
./build.sh