N=1

主にコンピュータ技術関連のことを投稿。 / 投稿は個人の意見であり所属団体の立場を代表するものではありません。

Firefox 2.0 ビルド

./configure && make && make install は firefo では出来ない。./configure --help を見ながら mozilla/.mozconfig にオプションを記述していく。オプションの行頭にac_add_optionsをつける

# mozilla/.mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-@CONFIG_GUESS@ #LFS で gcc とか入れたときのように、オブジェクトディレクトリをソースと別にする
. $topsrcdir/browser/config/mozconfig #ソースにはthunderbirdとかオマケがいっぱい入ってるけどfirefoxブラウザだけ入れる
ac_add_options --enable-official-branding #商標関係のオプション。付けないと UA が別になっちゃうらしい。再配布するわけじゃないから付けてOK?

ac_add_options --enable-optimize="-O3 -fforce-addr -fomit-frame-pointer -funroll-loops -march=athlon -mfpmath=sse -msse -mmmx -m3dnow" #2chで見たような最適化オプション
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --enable-strip

ac_add_options --with-system-zlib
ac_add_options --with-system-png
ac_add_options --with-system-jpeg
ac_add_options --enable-system-cairo
ac_add_options --enable-default-toolkit=gtk2

ac_add_options --disable-installer
ac_add_options --disable-accessibility
ac_add_options --disable-gnomevfs #gnome 使わないので disable にしました
ac_add_options --disable-gnomeui #gnome 使わないので disable にしました
ac_add_options --disable-ldap
ac_add_options --disable-pango #pango 調べたけど有効にするメリットが分からなかったのでとりあえずdisable

このあとLFS使いのひとは一工夫しないとコンパイル中にエラーが出る。BLFS SupportのMLにも同じようなひとがいたので、前回の日記で見つけたblogの方の方法をパクらせてもらう。
mozilla/layout/build/Makefile.in

ifdef MOZ_ENABLE_GTK2
EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS) \
 -L/usr/X11R6/lib -lXrender -lX11 \   ←これ追加
 $(NULL)
endif

なんで最初っから書かれてないんだろう…ぐぐっても、ディストリ使ってる人は問題無くビルドできてるみたいで謎

そしてビルド

$ make -f client.mk build