試験運用中なLinux備忘録・旧記事

はてなダイアリーで公開していた2007年5月-2015年3月の記事を保存しています。

Firefox 3 Betaの.mozconfigを調整(ランダムに文字が崩れる不具合の対処や、省略可能なオプションについて)

Firefox 3 Beta 1のビルドメモ」で作成した.mozconfigファイル(Mozilla製品のビルド設定を記述するファイル)でFirefox 3 Beta 2をビルドしたが、文字がぐちゃぐちゃになる現象は前回と同様に発生した。一方、バイナリ配布されているものを試してみたところ、問題がなく動作しているため、ビルド設定(configureスクリプトへのオプション)がまずいという可能性が高い、ということになった。

  1. --enable-native-uconvオプションがNG?
  2. 省略可能なオプション
  3. 現在の.mozconfig

--enable-native-uconvオプションがNG?

試行錯誤の結果、--enable-native-uconvオプション*1を外してビルドしたものは、ぐちゃぐちゃに崩れる現象が全く起こらないのに対し、これ以外のオプションを全て同一にして--enable-native-uconvを付けたものでは発生。
このオプションはしばらくの間外すことにした。

省略可能なオプション

バイナリ配布されているFirefox 3 Beta 2のabout:buildconfig*2では、必須と思われる指定でも省略されていたりするものがあった。
実際、--enable-feedsなどは省略可能(デフォルト有効)で、よく確認してみると、
[引用]ファイル名: mozilla/configure.in より

MOZ_ARG_DISABLE_BOOL(feeds,
[  --disable-feeds        Disable feed handling and processing components],
    MOZ_FEEDS=,
    MOZ_FEEDS=1 )
if test -n "$MOZ_FEEDS"; then
    AC_DEFINE(MOZ_FEEDS)
else
    if test "$MOZ_BUILD_APP" = "browser"; then
        AC_MSG_ERROR([Cannot build Firefox with --disable-feeds.])
    fi
fi

ビルドする対象が(SeaMonkeyThunderbirdではなく)Firefoxの場合に無効にできないだけのことだった。--enable-placesも同様で--enable-canvasもデフォルト有効につき省略可。
GUIツールキットに関しても、「cairo-gtk2」がデフォルトとなっていて、記述する必要がないことが分かった。

現在の.mozconfig

省略できるものは省略した上で、極力外せるものは外している。--disable-canvasなどは好みで追加し、--enable-extensionsも調整の余地がある。
繰り返しになるが、--enable-official-brandingを付けると、生成されたパッケージは配布できない。
ファイル名: mozilla/.mozconfig

CC="ccache gcc"
CXX="ccache g++"

ac_add_options --enable-application=browser
ac_add_options --enable-extensions=default,-gnomevfs
ac_add_options --enable-image-decorders=png,gif,jpeg
ac_add_options --enable-install-strip
ac_add_options --enable-necko-protocols='about data file ftp http res viewsource'
ac_add_options --enable-official-branding
ac_add_options --enable-optimize='-Os -march=[CPUに応じた文字列] -pipe'
ac_add_options --enable-plaintext-editor-only
ac_add_options --enable-static
ac_add_options --enable-strip
ac_add_options --disable-accessibility
ac_add_options --disable-composer
ac_add_options --disable-debug
ac_add_options --disable-gnomeui
ac_add_options --disable-gnomevfs
ac_add_options --disable-jsd
ac_add_options --disable-logging
ac_add_options --disable-logrefcnt
ac_add_options --disable-installer
ac_add_options --disable-ldap
ac_add_options --disable-libxul
ac_add_options --disable-mailnews
ac_add_options --disable-mathml
ac_add_options --disable-necko-disk-cache
ac_add_options --disable-profilesharing
ac_add_options --disable-svg
ac_add_options --disable-tests
ac_add_options --disable-updater
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib

*1:ヘルプの説明は「Enable iconv support」

*2:configureのオプションやコンパイラの情報が見られるページ。アドレス欄に入力すると開く